ejabberd如何激活管理员链接?

时间:2018-06-20 09:45:15

标签: server erlang xmpp ejabberd

(这不是本地计算机问题,也不是本地服务器) 我也无法在我的域和服务器IP上连接管理员 mydomain.com:5280/admin /

在ssh终端上,我启动了ejabberd,状态为:

  

节点“ ejabberd@mydomain.com”已启动,状态为:已启动   ejabberd 15.11在该节点上运行

为什么我无法在域和服务器ip上连接它?有什么方法可以检查我可以打开管理员的链接吗?

我将其安装在ubuntu服务器上,ejabberd.yml文件为

###
###'           ejabberd configuration file
###
###

### The parameters used in this configuration file are explained in more detail
### in the ejabberd Installation and Operation Guide.
### Please consult the Guide in case of doubts, it is included with
### your copy of ejabberd, and is also available online at
### http://www.process-one.net/en/ejabberd/docs/

### The configuration file is written in YAML.
### Refer to http://en.wikipedia.org/wiki/YAML for the brief description.
### However, ejabberd treats different literals as different types:
###
### - unquoted or single-quoted strings. They are called "atoms".
###   Example: dog, 'Jupiter', '3.14159', YELLOW
###
### - numeric literals. Example: 3, -45.0, .0
###
### - quoted or folded strings.
###   Examples of quoted string: "Lizzard", "orange".
###   Example of folded string:
###   > Art thou not Romeo,
###     and a Montague?

###.  =======
###'  LOGGING

##
## loglevel: Verbosity of log files generated by ejabberd.
## 0: No ejabberd log at all (not recommended)
## 1: Critical
## 2: Error
## 3: Warning
## 4: Info
## 5: Debug
## loglevel: 4

##
## rotation: Describe how to rotate logs. Either size and/or date can trigger
## log rotation. Setting count to N keeps N rotated logs. Setting count to 0
## does not disable rotation, it instead rotates the file and keeps no previous
## versions around. Setting size to X rotate log when it reaches X bytes.
## To disable rotation set the size to 0 and the date to ""
## Date syntax is taken from the syntax newsyslog uses in newsyslog.conf.
## Some examples:
##  $D0     rotate every night at midnight
##  $D23    rotate every day at 23:00 hr
##  $W0D23  rotate every week on Sunday at 23:00 hr
##  $W5D16  rotate every week on Friday at 16:00 hr
##  $M1D0   rotate on the first day of every month at midnight
##  $M5D6   rotate on every 5th day of the month at 6:00 hr
## log_rotate_size: 10485760 log_rotate_date: "" log_rotate_count: 1

##
## overload protection: If you want to limit the number of messages per second
## allowed from error_logger, which is a good idea if you want to avoid a flood
## of messages when system is overloaded, you can set a limit.
## 100 is ejabberd's default. log_rate_limit: 100

##
## watchdog_admins: Only useful for developers: if an ejabberd process
## consumes a lot of memory, send live notifications to these XMPP
## accounts.
##
## watchdog_admins:
##   - "admin@mydomain.com"

###.  ===============
###'  NODE PARAMETERS

##
## net_ticktime: Specifies net_kernel tick time in seconds. This options must have
## identical value on all nodes, and in most cases shouldn't be changed at all from
## default value.
##
## net_ticktime: 60

###.  ================
###'  SERVED HOSTNAMES

##
## hosts: Domains served by ejabberd.
## You can define one or several, for example:
## hosts: 
##   - "example.net"
##   - "example.com"
##   - "example.org"
## hosts:
  - "mydomain.com" # server domain
  - "192.168.1.1" # my server ip address

##
## route_subdomains: Delegate subdomains to other XMPP servers.
## For example, if this ejabberd serves example.org and you want
## to allow communication with an XMPP server called im.example.org.
##
## route_subdomains: s2s

###.  ===============
###'  LISTENING PORTS

##
## listen: The ports ejabberd will listen on, which service each is handled
## by and what options to start it with.
## listen: 
  - 
    port: 5222
    module: ejabberd_c2s
    certfile: "/home/jack/ejabberd/conf/server.pem"
    starttls: true
    ## To enforce TLS encryption for client connections,
    ## use this instead of the "starttls" option:
    ## starttls_required: true
    ##
    ## Custom OpenSSL options
    ##
    protocol_options:
      - "no_sslv3"
    ##   - "no_tlsv1"
    max_stanza_size: 65536
    shaper: c2s_shaper
    access: c2s
  - 
    port: 5269
    module: ejabberd_s2s_in
    max_stanza_size: 131072
    shaper: s2s_shaper   ##   ## ejabberd_service: Interact with external components (transports, ...)   ##   ## -    ##   port: 8888  
##   module: ejabberd_service   ##   access: all   ##   shaper_rule: fast   ##   ip: "127.0.0.1"   ##   hosts:   ##     "icq.example.org": 
##       password: "secret"   ##     "sms.example.org":   ##       password: "secret"

  ##   ## ejabberd_stun: Handles STUN Binding requests   ##   ## -   
##   port: 3478   ##   transport: udp   ##   module: ejabberd_stun

  ##   ## To handle XML-RPC requests that provide admin credentials:  
##   ## -    ##   port: 4560   ##   module: ejabberd_xmlrpc   ##   maxsessions: 10   ##   timeout: 5000   ##   access_commands:   ##    
xmlrpc:   ##       commands: all   ##   options: []
  - 
    port: 5280
    module: ejabberd_http
    request_handlers:
      "/websocket": ejabberd_http_ws
      "/bosh": mod_bosh
      "/oauth": ejabberd_oauth
      "/api": mod_http_api
    ##  "/pub/archive": mod_http_fileserver
    web_admin: true
    http_bind: true
    register: true
    captcha: false

###.  ==================
###'  S2S GLOBAL OPTIONS

##
## s2s_use_starttls: Enable STARTTLS + Dialback for S2S connections.
## Allowed values are: false optional required required_trusted
## You must specify a certificate file.
##
## s2s_use_starttls: optional

##
## s2s_certfile: Specify a certificate file.
##
## s2s_certfile: "/home/jack/ejabberd/conf/server.pem"

## Custom OpenSSL options
##
## s2s_protocol_options:
##   - "no_sslv3"
##   - "no_tlsv1"

##
## domain_certfile: Specify a different certificate for each served hostname.
##
## host_config:
##   "example.org":
##     domain_certfile: "/home/jack/ejabberd/conf/example_org.pem"
##   "example.com":
##     domain_certfile: "/home/jack/ejabberd/conf/example_com.pem"

##
## S2S whitelist or blacklist
##
## Default s2s policy for undefined hosts.
##
## s2s_access: s2s

##
## Outgoing S2S options
##
## Preferred address families (which to try first) and connect timeout
## in milliseconds.
##
## outgoing_s2s_families:
##   - ipv4
##   - ipv6
## outgoing_s2s_timeout: 10000

###.  ==============
###'  AUTHENTICATION

##
## auth_method: Method used to authenticate the users.
## The default method is the internal.
## If you want to use a different method,
## comment this line and enable the correct ones.
## auth_method: internal

##
## Store the plain passwords or hashed for SCRAM:
## auth_password_format: plain
## auth_password_format: scram
##
## Define the FQDN if ejabberd doesn't detect it:
## fqdn: "server3.example.com"

##
## Authentication using external script
## Make sure the script is executable by ejabberd.
##
## auth_method: external
## extauth_program: "/path/to/authentication/script"

##
## Authentication using ODBC
## Remember to setup a database in the next section.
##
## auth_method: odbc

##
## Authentication using PAM
##
## auth_method: pam
## pam_service: "pamservicename"

##
## Authentication using LDAP
##
## auth_method: ldap
##
## List of LDAP servers:
## ldap_servers:
##   - "localhost"
##
## Encryption of connection to LDAP servers:
## ldap_encrypt: none
## ldap_encrypt: tls
##
## Port to connect to on LDAP servers:
## ldap_port: 389
## ldap_port: 636
##
## LDAP manager:
## ldap_rootdn: "dc=example,dc=com"
##
## Password of LDAP manager:
## ldap_password: "******"
##
## Search base of LDAP directory:
## ldap_base: "dc=example,dc=com"
##
## LDAP attribute that holds user ID:
## ldap_uids:
##   - "mail": "%u@mail.example.org"
##
## LDAP filter:
## ldap_filter: "(objectClass=shadowAccount)"

##
## Anonymous login support:
##   auth_method: anonymous
##   anonymous_protocol: sasl_anon | login_anon | both
##   allow_multiple_connections: true | false
##
## host_config:
##   "public.example.org":
##     auth_method: anonymous
##     allow_multiple_connections: false
##     anonymous_protocol: sasl_anon
##
## To use both anonymous and internal authentication:
##
## host_config:
##   "public.example.org":
##     auth_method:
##       - internal
##       - anonymous

###.  ==============
###'  DATABASE SETUP

## ejabberd by default uses the internal Mnesia database,
## so you do not necessarily need this section.
## This section provides configuration examples in case
## you want to use other database backends.
## Please consult the ejabberd Guide for details on database creation.

##
## MySQL server:
##
## odbc_type: mysql
## odbc_server: "server"
## odbc_database: "database"
## odbc_username: "username"
## odbc_password: "password"
##
## If you want to specify the port:
## odbc_port: 1234

##
## PostgreSQL server:
##
## odbc_type: pgsql
## odbc_server: "server"
## odbc_database: "database"
## odbc_username: "username"
## odbc_password: "password"
##
## If you want to specify the port:
## odbc_port: 1234
##
## If you use PostgreSQL, have a large database, and need a
## faster but inexact replacement for "select count(*) from users"
##
## pgsql_users_number_estimate: true

##
## SQLite:
##
## odbc_type: sqlite
## odbc_database: "/home/jack/ejabberd/database/ejabberd.db"

##
## ODBC compatible or MSSQL server:
##
## odbc_type: odbc
## odbc_server: "DSN=ejabberd;UID=ejabberd;PWD=ejabberd"

##
## Number of connections to open to the database for each virtual host
##
## odbc_pool_size: 10

##
## Interval to make a dummy SQL request to keep the connections to the
## database alive. Specify in seconds: for example 28800 means 8 hours
##
## odbc_keepalive_interval: undefined

###.  ===============
###'  TRAFFIC SHAPERS

shaper:   ##   ## The "normal" shaper limits traffic speed to 1000 B/s
##   normal: 1000

  ##   ## The "fast" shaper limits traffic speed to 50000 B/s   ##  
fast: 50000

##
## This option specifies the maximum number of elements in the queue
## of the FSM. Refer to the documentation for details.
## max_fsm_queue: 1000

###.   ====================
###'   ACCESS CONTROL LISTS acl:   ##   ## The 'admin' ACL grants administrative privileges to XMPP accounts.   ## You can put here as
many accounts as you want.   ##   admin:
    user:
      - "admin": "mydomain.com"

  ##   ## Blocked users   ##   ## blocked:   ##   user:   ##     -
"baduser": "example.org"   ##     - "test"

  ## Local users: don't modify this.   ##   local: 
    user_regexp: ""

  ##   ## More examples of ACLs   ##   ## jabberorg:   ##   server:  
##     - "jabber.org"   ## aleksey:   ##   user:   ##     - "aleksey": "jabber.ru"   ## test:   ##   user_regexp: "^test"   ##   user_glob:
"test*"

  ##   ## Loopback network   ##   loopback:
    ip:
      - "192.168.1.1" #added server ip address
       - "::1/128"
      - "::FFFF:127.0.0.1/128"   ##   ## Bad XMPP servers   ##   ## bad_servers:   ##   server:   ##     - "xmpp.zombie.org"   ##     -
"xmpp.spam.com"

##
## Define specific ACLs in a virtual host.
##
## host_config:
##   "localhost":
##     acl:
##       admin:
##         user:
##           - "bob-local": "localhost"

###.  ============
###'  ACCESS RULES access_rules:   ## Maximum number of simultaneous sessions allowed for a single user:   max_user_sessions: 
    all: 10   ## Maximum number of offline messages that users can have:   max_user_offline_messages: 
    admin: 5000
    all: 100   ## This rule allows access only for local users:   local: 
    local: allow   ## Only non-blocked users can use c2s connections:   c2s: 
    blocked: deny
    all: allow   ## For C2S connections, all users except admins use the "normal" shaper   c2s_shaper: 
    admin: none
    all: normal   ## All S2S connections use the "fast" shaper   s2s_shaper: 
    all: fast   ## Only admins can send announcement messages:   announce: 
    admin: allow   ## Only admins can use the configuration interface:   configure: 
    admin: allow   ## Admins of this server are also admins of the MUC service:   muc_admin: 
    admin: allow   ## Only accounts of the local ejabberd server can create rooms:   muc_create: 
    local: allow   ## All users are allowed to use the MUC service:   muc: 
    all: allow   ## Only accounts on the local ejabberd server can create Pubsub nodes:   pubsub_createnode: 
    local: allow   ## In-band registration allows registration of any possible username.   ## To disable in-band registration, replace
'allow' with 'deny'.   register: 
    all: allow   ## Only allow to register from localhost   trusted_network: 
    loopback: allow   ## Do not establish S2S connections with bad servers   ## s2s:    ##   bad_servers: deny   ##   all: allow

## By default the frequency of account registrations from the same IP
## is limited to 1 account every 10 minutes. To disable, specify: infinity  registration_timeout: infinity   
##
## Define specific Access Rules in a virtual host.
##
## host_config:
##   "localhost":
##     access:
##       c2s:
##         admin: allow
##         all: deny
##       register:
##         all: deny

###.  ================
###'  DEFAULT LANGUAGE

##
## language: Default language used for server messages.
## language: "en"

##
## Set a different default language in a virtual host.
##
## host_config:
##   "localhost":
##     language: "ru"

###.  =======
###'  CAPTCHA

##
## Full path to a script that generates the image.
##
## captcha_cmd: "/home/jack/ejabberd/lib/ejabberd-15.11/priv/bin/captcha.sh"

##
## Host for the URL and port where ejabberd listens for CAPTCHA requests.
##
## captcha_host: "example.org:5280"

##
## Limit CAPTCHA calls per minute for JID/IP to avoid DoS.
##
## captcha_limit: 5

###.  =======
###'  MODULES

##
## Modules enabled in all ejabberd virtual hosts.
## modules:    mod_adhoc: {}   mod_admin_extra: {}   mod_announce: # recommends mod_adhoc
    access: announce   mod_blocking: {} # requires mod_privacy   mod_caps: {}   mod_carboncopy: {}   mod_client_state: {}  
mod_configure: {} # requires mod_adhoc   mod_disco: {}   ## mod_echo:
{}   ## mod_irc: {}   mod_http_bind: {}   ## mod_http_fileserver:   ##
docroot: "/var/www"   ##   accesslog:
"/home/jack/ejabberd/logs/access.log"   mod_last: {}   mod_muc: 
    ## host: "conference.@HOST@"
    access: muc
    access_create: muc_create
    access_persistent: muc_create
    access_admin: muc_admin   mod_muc_admin: {}   ## mod_muc_log: {}   ## mod_multicast: {}   mod_offline: 
    access_max_user_messages: max_user_offline_messages   mod_ping: {}   ## mod_pres_counter:   ##   count: 5   ##   interval: 60   mod_privacy: {}   mod_private: {}   ## mod_proxy65: {}   mod_pubsub: 
    access_createnode: pubsub_createnode
    ## reduces resource comsumption, but XEP incompliant
    ignore_pep_from_offline: true
    ## XEP compliant, but increases resource comsumption
    ## ignore_pep_from_offline: false
    last_item_cache: false
    plugins: 
      - "flat"
      - "hometree"
      - "pep" # pep requires mod_caps   mod_register: 
    ##
    ## Protect In-Band account registrations with CAPTCHA.
    ##
    ## captcha_protected: true

    ##
    ## Set the minimum informational entropy for passwords.
    ##
    ## password_strength: 32

    ##
    ## After successful registration, the user receives
    ## a message with this subject and body.
    ##
    welcome_message: 
      subject: "Welcome!"
      body: |-
        Hi.
        Welcome to this XMPP server.

    ##
    ## When a user registers, send a notification to
    ## these XMPP accounts.
    ##
    ## registration_watchers:
    ##   - "admin1@example.org"

    ##
    ## Only clients in the server machine can register accounts
    ##
    ## ip_access: trusted_network

    ##
    ## Local c2s or remote s2s users cannot register accounts
    ##
    ## access_from: deny

    access_from: register   mod_roster: {}   mod_shared_roster: {}   ## mod_stats: {}   ## mod_time: {}   mod_vcard: {}   mod_version: {}

##
## Enable modules with custom options in a specific virtual host
##
## host_config:
##   "localhost":
##     modules:
##       mod_echo:
##         host: "mirror.localhost"

##
## Enable modules management via ejabberdctl for installation and
## uninstallation of public/private contributed modules
## (enabled by default)
##

allow_contrib_modules: true

###.
###'
### Local Variables:
### mode: yaml
### End:
### vim: set filetype=yaml tabstop=8 foldmarker=###',###. foldmethod=marker:

1 个答案:

答案 0 :(得分:0)

在虚拟服务器上尝试了很多之后,我从服务器提供商那里得知他们无法为5280和5222打开出站IP,这需要运行mydomain.com:5280/admin网络管理界面。并且它对用户不开放。 入站ip对我们开放,因此无法通过ssh访问它的原因。在SSH终端上,我启动了ejabberd。

解决方案:服务器必须需要打开入站和出站端口。我更新了服务器,并能够打开服务器上的端口。哪个有效。