Allow configuration of IP addresses to use for outgoing connections
[KiwiIRC.git] / config.example.js
1 var conf = {};
2
3 // Run the Kiwi server under a different user/group
4 conf.user = "";
5 conf.group = "";
6
7
8 // Log file location
9 conf.log = "kiwi.log";
10
11
12
13 /*
14 * Server listen blocks
15 */
16
17 // Do not edit this line!
18 conf.servers = [];
19
20 // Example server block
21 conf.servers.push({
22 port: 7778,
23 address: "0.0.0.0"
24 });
25
26 // Example SSL server block
27 //conf.servers.push({
28 // port: 7777,
29 // address: "0.0.0.0",
30 //
31 // ssl: true,
32 // ssl_key: "server.key",
33 // ssl_cert: "cert.pem"
34 //});
35
36 conf.outgoing_addresses = {
37 IPv4: '0.0.0.0',
38 IPv6: '::'
39 };
40
41
42 // Do we want to enable the built in Identd server?
43 conf.identd = {
44 enabled: false,
45 port: 113,
46 address: "0.0.0.0"
47 };
48
49
50
51
52
53
54 // Where the client files are
55 conf.public_http = "client/";
56
57 // Max connections per connection. 0 to disable
58 conf.max_client_conns = 5;
59
60 // Max connections per server. 0 to disable.
61 // Setting is ignored if:
62 // - There is a WEBIRC password configured for the server,
63 // - Kiwi is configured to send the client's ip as a username for the server, or
64 // - Kiwi is running in restricted server mode.
65 conf.max_server_conns = 0;
66
67 /*
68 * Default encoding to be used by the server
69 * As specified and limited to iconv-lite library support.
70 */
71 conf.default_encoding = 'UTF-8';
72
73 /*
74 * Client side plugins
75 * Array of URLs that will be loaded into the browser when the client first loads up
76 * See http://github.com/prawnsalad/KiwiIRC/wiki/Client-plugins
77 */
78 conf.client_plugins = [
79 // "http://server.com/kiwi/plugins/myplugin.html"
80 ];
81
82
83
84 // Enabled CAP extensions (See ENTER URL TO CAP INFO HERE PLS)
85 conf.cap_options = [];
86
87
88
89
90 // Directory to find the server modules
91 conf.module_dir = "../server_modules/";
92
93 // Which modules to load
94 conf.modules = [];
95
96
97
98
99 // WebIRC passwords enabled for this server
100 conf.webirc_pass = {
101 //"irc.network.com": "configured_webirc_password",
102 //"127.0.0.1": "foobar"
103 };
104
105 // Some IRCDs require the clients IP via the username/ident
106 conf.ip_as_username = [
107 //"irc.network.com",
108 //"127.0.0.1"
109 ];
110
111 // Whether to verify IRC servers' SSL certificates against built-in well-known certificate authorities
112 conf.reject_unauthorised_certificates = false;
113
114
115
116 /*
117 * Reverse proxy settings
118 * Reverse proxies that have been reported to work can be found at:
119 * http://github.com/prawnsalad/KiwiIRC/wiki/Running-behind-a-proxy
120 */
121
122 // Whitelisted HTTP proxies in CIDR format
123 conf.http_proxies = ["127.0.0.1/32"];
124
125 // Header that contains the real-ip from the HTTP proxy
126 conf.http_proxy_ip_header = "x-forwarded-for";
127
128 // Base HTTP path to the KIWI IRC client (eg. /kiwi)
129 conf.http_base_path = "/kiwi";
130
131
132 /*
133 * SOCKS (version 5) proxy settings
134 * This feature is only available on node 0.10.0 and above.
135 * Do not enable it if you're running 0.8 or below or Bad Things will happen.
136 */
137 conf.socks_proxy = {};
138
139 // Enable proxying outbound connections through a SOCKS proxy
140 conf.socks_proxy.enabled = false;
141
142 // Proxy *all* outbound connections through a SOCKS proxy
143 conf.socks_proxy.all = false;
144
145 // Use SOCKS proxy for these hosts only (if conf.sock_proxy.all === false)
146 conf.socks_proxy.proxy_hosts = [
147 "irc.example.com"
148 ];
149
150 // Host and port for the SOCKS proxy
151 conf.socks_proxy.address = '127.0.0.1';
152 conf.socks_proxy.port = 1080;
153
154 // Username and password for the SOCKS proxy
155 // Set user to null to disable password authentication
156 conf.socks_proxy.user = null;
157 conf.socks_proxy.pass = null;
158
159
160 // Enabled transports for the browser to use
161 conf.transports = [
162 "websocket",
163 "flashsocket",
164 "htmlfile",
165 "xhr-polling",
166 "jsonp-polling"
167 ];
168
169
170
171
172 // Default quit message
173 conf.quit_message = "http://www.kiwiirc.com/ - A hand-crafted IRC client";
174
175
176 // Default settings for the client. These may be changed in the browser
177 conf.client = {
178 server: 'irc.kiwiirc.com',
179 port: 6697,
180 ssl: true,
181 channel: '#kiwiirc',
182 nick: 'kiwi_?',
183 settings: {
184 theme: 'relaxed',
185 channel_list_style: 'tabs',
186 scrollback: 250,
187 show_joins_parts: true,
188 show_timestamps: false,
189 mute_sounds: false
190 }
191 };
192
193
194 // If set, the client may only connect to this 1 IRC server
195 //conf.restrict_server = "irc.kiwiirc.com";
196 //conf.restrict_server_port = 6667;
197 //conf.restrict_server_ssl = false;
198 //conf.restrict_server_channel = "#kiwiirc";
199 //conf.restrict_server_password = "";
200 //conf.restrict_server_nick = "kiwi_";
201
202
203
204
205 /*
206 * Do not ammend the below lines unless you understand the changes!
207 */
208 module.exports.production = conf;