2.0/Modules/unreal

From AnopeWiki
Jump to: navigation, search
Language

English

Section Protocol
Module unreal
Author Anope

Description

This is how services connects to your IRCd. In the configuration sections of your services.conf file you will need to specify the protocol type, in this case unreal, and the proper linking information for your network.

UPLINK {...}
This is where you configure your connection to your main server.
host= The hostname to connect to. We recommend you use localhost if at all possible to limit your exposure to the rest of the internet.
ipv6= Use IPv6 to connect to your IRCd.
ssl= Use Secure Scocket Layer (encrypted) connection to your IRCd. This isn't needed if you use localhost, as the information never leaves your server to get to the IRCd.
port= The port number to connect on. It is a good pratice to give services its own port. This can mitigate some forms of Denial of Service Attacks.
password= The password used to authenticate the connection between the server and services. We recommend good passwords for this. You don't want some hacker faking your services connection.
MODULE { name="unreal" ...} 
This is where you tell it what protocol to use, and any special options that it may have.
name= The name of the protocol you wish to use. In this case you would use unreal since you are wanting to use the unreal protocol to connect to your unreal IRCd.
use_server_side_mlock= This tells services to use the IRCd to use its own internal mlock method. UnrealIRCd supports this.
use_server_side_topiclock= This tells services to use the IRCd to ise its own internal topiclick method. UnrealIRCd does not support this.
  • NOTE: You must select the correct protocol for your IRCd. The wrong one will cause unpredictable results, the best of which will be that you are unable to connect to your ircd.


Example Configuration

/*
 * [REQUIRED] IRCd Config
 *
 * An example configuration for UnrealIRCd that is compatible with the below uplink
 * and serverinfo configuration would look like:
 *
 *     link services.localhost.net
 *     {
 *          username *;
 *          hostname *;
 *          bind-ip "127.0.0.1";
 *          port 7000;
 *          hub *;
 *          password-connect "mypassword";
 *          password-receive "mypassword";
 *          class servers;
 *     };
 *     ulines { services.localhost.net; };
 *     listen 127.0.0.1:7000;
 */
uplink
{
        host = "127.0.0.1"
        ipv6 = no
        ssl = no
        port = 7000
        password = "mypassword"
}
 
module
{
        name = "unreal"
        use_server_side_mlock = yes
        use_server_side_topiclock = no
}


Default Configuration

/*
 * [REQUIRED] IRCd Config
 *
 * This section is used to set up Anope to connect to your IRC network.
 * This section can be included multiple times, and Anope will attempt to
 * connect to each server until it finally connects.
 *
 * Each uplink IRCd should have a corresponding configuration to allow Services
 * to link to it.
 *
 * An example configuration for InspIRCd that is compatible with the below uplink
 * and serverinfo configuration would look like:
 *
 *     <link name="services.localhost.net"
 *           ipaddr="127.0.0.1"
 *           port="7000"
 *           sendpass="mypassword"
 *           recvpass="mypassword">
 *     <uline server="services.localhost.net" silent="yes">
 *     <bind address="127.0.0.1" port="7000" type="servers">
 *
 * An example configuration for UnrealIRCd that is compatible with the below uplink
 * and serverinfo configuration would look like:
 *
 *     link services.localhost.net
 *     {
 *          username *;
 *          hostname *;
 *          bind-ip "127.0.0.1";
 *          port 7000;
 *          hub *;
 *          password-connect "mypassword";
 *          password-receive "mypassword";
 *          class servers;
 *     };
 *     ulines { services.localhost.net; };
 *     listen 127.0.0.1:7000;
 */
uplink
{
        /*
         * The IP or hostname of the IRC server you wish to connect Services to.
         * Usually, you will want to connect Services over 127.0.0.1 (aka localhost).
         *
         * NOTE: On some shell providers, this will not be an option.
         */
        host = "127.0.0.1"
 
        /*
         * Enable if Services should connect using IPv6.
         */
        ipv6 = no
 
        /*
         * Enable if Services should connect using SSL.
         * You must have an SSL module loaded for this to work.
         */
        ssl = no
 
        /*
         * The port to connect to.
         * The IRCd *MUST* be configured to listen on this port, and to accept
         * server connections.
         *
         * Refer to your IRCd documentation for how this is to be done.
         */
        port = 7000
 
        /*
         * The password to send to the IRC server for authentication.
         * This must match the link block on your IRCd.
         *
         * Refer to your IRCd documentation for more information on link blocks.
         */
        password = "mypassword"
}
 
/*
 * [REQUIRED] Protocol module
 *
 * This directive tells Anope which IRCd Protocol to speak when connecting.
 * You MUST modify this to match the IRCd you run.
 *
 * Supported:
 *  - bahamut
 *  - charybdis
 *  - hybrid
 *  - inspircd12
 *  - inspircd20
 *  - ngircd
 *  - plexus
 *  - ratbox
 *  - unreal
 */
module
{
        name = "inspircd20"
 
        /*
         * Some protocol modules can enforce mode locks server-side. This reduces the spam caused by
         * services immediately reversing mode changes for locked modes.
         *
         * If the protocol module you have loaded does not support this, this setting will have no effect.
         */
        use_server_side_mlock = yes
 
        /*
         * Some protocol modules can enforce topic locks server-side. This reduces the spam caused by
         * services immediately reversing topic changes.
         *
         * If the protocol module you have loaded does not support this, this setting will have no effect.
         */
        use_server_side_topiclock = yes
}