美文网首页
Ejabberd 授权配置

Ejabberd 授权配置

作者: cielu | 来源:发表于2019-07-11 15:11 被阅读0次
    ###
    ###'           ejabberd configuration file
    ###
    ### The parameters used in this configuration file are explained at
    ###
    ###       https://docs.ejabberd.im/admin/configuration
    ###
    ### The configuration file is written in YAML.
    ### *******************************************************
    ### *******           !!! WARNING !!!               *******
    ### *******     YAML IS INDENTATION SENSITIVE       *******
    ### ******* MAKE SURE YOU INDENT SECTIONS CORRECTLY *******
    ### *******************************************************
    ### 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?
    ###
    
    language: "en"
    hosts:
      - "localhost"
      - "duoduochat.top"
    
    loglevel: 4
    log_rotate_size: 10485760
    log_rotate_date: ""
    log_rotate_count: 1
    log_rate_limit: 100
    
    certfiles:
      - "/opt/ejabberd/conf/server.pem"
    ##  - "/etc/letsencrypt/live/localhost/fullchain.pem"
    ##  - "/etc/letsencrypt/live/localhost/privkey.pem"
    
    ca_file: "/opt/ejabberd/conf/cacert.pem"
    
    listen:
      -
        port: 5222
        ip: "::"
        module: ejabberd_c2s
        max_stanza_size: 262144
        shaper: c2s_shaper
        access: c2s
        starttls_required: true
      -
        port: 5269
        ip: "::"
        module: ejabberd_s2s_in
        max_stanza_size: 524288
      -
        port: 5443
        ip: "::"
        module: ejabberd_http
        tls: true
        request_handlers:
          # "/admin": ejabberd_web_admin
          "/api": mod_http_api
          "/bosh": mod_bosh
          # "/captcha": ejabberd_captcha
          # "/upload": mod_http_upload
          "/ws": ejabberd_http_ws
          "/oauth": ejabberd_oauth
      -
        port: 5280
        ip: "::"
        module: ejabberd_http
        request_handlers:
          "/admin": ejabberd_web_admin
      -
        port: 1883
        ip: "::"
        module: mod_mqtt
        backlog: 1000
    
    s2s_use_starttls: optional
    
    acl:
      local:
        user_regexp: ""
      loopback:
        ip:
          - "127.0.0.0/8"
          - "::1/128"
          - "::FFFF:127.0.0.1/128"
      admin:
        user:
          - "admin@duoduochat.top"
    
    access_rules:
      local:
        - allow: local
      c2s:
        - deny: blocked
        - allow
      announce:
        - allow: admin
      configure:
        - allow: admin
      muc_create:
        - allow: local
      pubsub_createnode:
        - allow: local
      trusted_network:
        - allow: loopback
    
    api_permissions:
      "console commands":
        from:
          - ejabberd_ctl
        who: all
        what: "*"
      "admin access":
        who:
          - admin
          # - access:
          #     - allow:
          #       - acl: loopback
          #       - acl: admin
          - oauth:
            - scope: "ejabberd:admin"
            - admin
            # - access:
            #   - allow:
            #     - acl: loopback
            #     - acl: admin
        what:
          - "*"
          - "!stop"
          - "!start"
      "public commands":
        who:
          - ip: "127.0.0.1/8"
        what:
          - "status"
          - "connected_users_number"
    
    commands_admin_access:
      - allow:
        - acl: admin
    commands:
      - add_commands: [user, admin, open]
    
    oauth_expire: 31536000
    oauth_access: all
    
    shaper:
      normal: 1000
      fast: 50000
    
    shaper_rules:
      max_user_sessions: 10
      max_user_offline_messages:
        - 5000: admin
        - 100
      c2s_shaper:
        - none: admin
        - normal
      s2s_shaper: fast
    
    max_fsm_queue: 10000
    
    acme:
       contact: "mailto:admin@duoduochat.top"
       ca_url: "https://acme-v01.api.letsencrypt.org"
    
    modules:
      mod_adhoc: {}
      mod_admin_extra: {}
      mod_announce:
        access: announce
      mod_avatar: {}
      mod_blocking: {}
      mod_bosh: {}
      mod_caps: {}
      mod_carboncopy: {}
      mod_client_state: {}
      mod_configure: {}
      mod_disco: {}
      mod_fail2ban: {}
      mod_http_api: {}
      mod_http_upload:
        put_url: "https://@HOST@:5443/upload"
      mod_last: {}
      mod_mam:
        ## Mnesia is limited to 2GB, better to use an SQL backend
        ## For small servers SQLite is a good fit and is very easy
        ## to configure. Uncomment this when you have SQL configured:
        db_type: sql
        assume_mam_usage: true
        default: always
      mod_mqtt: {}
      mod_muc:
        db_type: sql
        access:
          - allow
        access_admin:
          - allow: admin
        access_create: muc_create
        access_persistent: muc_create
        default_room_options:
          allow_subscription: true  # enable MucSub
          allow_user_invites: true
          allow_visitor_nickchange: false
          mam: true
          anonymous: false
          persistent: false
      mod_muc_admin: {}
      mod_offline:
        access_max_user_messages: max_user_offline_messages
      mod_ping: {}
      mod_privacy: {}
      mod_private: {}
      mod_proxy65:
        access: local
        max_connections: 5
      mod_pubsub:
        access_createnode: pubsub_createnode
        plugins:
          - "flat"
          - "pep"
        force_node_config:
          ## Avoid buggy clients to make their bookmarks public
          "storage:bookmarks":
            access_model: whitelist
      mod_push: {}
      mod_push_keepalive: {}
      mod_register:
        ## Only accept registration requests from the "trusted"
        ## network (see access_rules section above).
        ## Think twice before enabling registration from any
        ## address. See the Jabber SPAM Manifesto for details:
        ## https://github.com/ge0rg/jabber-spam-fighting-manifesto
        ip_access: trusted_network
      mod_roster:
        versioning: true
      mod_s2s_dialback: {}
      mod_shared_roster: {}
      mod_stream_mgmt:
        resend_on_timeout: if_offline
      mod_vcard: {}
      mod_vcard_xupdate: {}
      mod_version:
        show_os: false
    
    default_db: sql
    auth_method: sql
    
    sql_type: mysql
    sql_server: "182.255.61.126"
    sql_database: "ejabberd"
    sql_username: "duoduo"
    sql_password: "ddxx@##fuck"
    ## If you want to specify the port:
    sql_port: 3306
    
    ### Local Variables:
    ### mode: yaml
    ### End:
    ### vim: set filetype=yaml tabstop=8
    

    相关文章

      网友评论

          本文标题:Ejabberd 授权配置

          本文链接:https://www.haomeiwen.com/subject/vvkdkctx.html