10 |
|
* ######################################################################## |
11 |
|
* IMPORTANT NOTE: |
12 |
|
* |
13 |
< |
* auth {} blocks MUST be specified in order of precedence. The first one |
14 |
< |
* that matches a user will be used. So place spoofs first, then specials, |
13 |
> |
* auth {} blocks MUST be specified in order of precedence. The first one |
14 |
> |
* that matches a user will be used. So place spoofs first, then specials, |
15 |
|
* then general access. |
16 |
|
* ######################################################################## |
17 |
|
* |
108 |
|
* chown <ircd-user>.<ircd.group> rsa.key |
109 |
|
* chmod 0600 rsa.key |
110 |
|
*/ |
111 |
< |
# rsa_private_key_file = "/usr/local/ircd/etc/rsa.key"; |
111 |
> |
# rsa_private_key_file = "etc/rsa.key"; |
112 |
|
|
113 |
|
/* |
114 |
|
* ssl_certificate_file: the path to the file containing our |
130 |
|
* Common Name: irc.someirc.net |
131 |
|
* E-mail: you@domain.com |
132 |
|
*/ |
133 |
< |
# ssl_certificate_file = "/usr/local/ircd/etc/cert.pem"; |
133 |
> |
# ssl_certificate_file = "etc/cert.pem"; |
134 |
|
|
135 |
|
/* |
136 |
< |
* ssl_dh_param_file: |
137 |
< |
* |
138 |
< |
* Path to the PEM encoded Diffie-Hellman parameter file. |
139 |
< |
* DH parameters are required when using ciphers with EDH |
140 |
< |
* (ephemeral Diffie-Hellman) key exchange. |
136 |
> |
* ssl_dh_param_file: path to the PEM encoded Diffie-Hellman |
137 |
> |
* parameter file. DH parameters are required when using |
138 |
> |
* ciphers with EDH (ephemeral Diffie-Hellman) key exchange. |
139 |
|
* |
140 |
|
* A DH parameter file can be created by running: |
141 |
|
* |
145 |
|
* regarding specific OpenSSL dhparam command-line options |
146 |
|
* can be found in the OpenSSL manual. |
147 |
|
*/ |
148 |
< |
# ssl_dh_param_file = "/usr/local/ircd/etc/dhparam.pem"; |
148 |
> |
# ssl_dh_param_file = "etc/dhparam.pem"; |
149 |
|
|
150 |
|
/* |
151 |
< |
* ssl_cipher_list: |
151 |
> |
* ssl_dh_elliptic_curve: defines the curve to use for the |
152 |
> |
* Elliptic Curve Diffie-Hellman (ECDH) algorithm. |
153 |
> |
* Default is ANSI X9.62 prime256v1/secp256r1 if nothing else is specified. |
154 |
> |
* |
155 |
> |
* A list of supported curves by OpenSSL can be obtained by running: |
156 |
|
* |
157 |
< |
* List of ciphers to support on _this_ server. Can be used to |
158 |
< |
* enforce specific ciphers for incoming SSL/TLS connections. |
159 |
< |
* If a client (which also includes incoming server connections) is not |
160 |
< |
* capable of using any of the ciphers listed here, the connection will |
157 |
> |
* openssl ecparam -list_curves |
158 |
> |
*/ |
159 |
> |
# ssl_dh_elliptic_curve = "secp521r1"; |
160 |
> |
|
161 |
> |
/* |
162 |
> |
* ssl_cipher_list: list of ciphers to support on _this_ server. |
163 |
> |
* Can be used to enforce specific ciphers for incoming SSL/TLS |
164 |
> |
* connections. If a client (which also includes incoming server connections) |
165 |
> |
* is not capable of using any of the ciphers listed here, the connection will |
166 |
|
* simply be rejected. |
167 |
|
* |
168 |
|
* A list of supported ciphers by OpenSSL can be obtained by running: |
175 |
|
# ssl_cipher_list = "ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-SHA:AES256-SHA"; |
176 |
|
|
177 |
|
/* |
178 |
< |
* ssl_server_method: |
179 |
< |
* ssl_client_method: |
178 |
> |
* ssl_message_digest_algorithm: defines what cryptographic hash function |
179 |
> |
* to use for generating fingerprint hashes of X.509 certificates. |
180 |
> |
* Default is SHA-256 if nothing else is specified. |
181 |
> |
* |
182 |
> |
* A list of supported message digest algorithms by OpenSSL can be obtained by running: |
183 |
|
* |
184 |
< |
* SSL/TLS methods we provide for incoming (server method) and |
175 |
< |
* outgoing (client method) SSL/TLS connections. |
176 |
< |
* This can be either sslv3 for SSLv3, and/or tlsv1 for TLSv1. |
184 |
> |
* openssl list-message-digest-algorithms |
185 |
|
*/ |
186 |
< |
# ssl_server_method = tlsv1, sslv3; |
179 |
< |
# ssl_client_method = tlsv1; |
186 |
> |
# ssl_message_digest_algorithm = "sha256"; |
187 |
|
}; |
188 |
|
|
189 |
|
/* |
190 |
< |
* admin {}: contains admin information about the server |
190 |
> |
* admin {}: contains administrative information about the server |
191 |
|
*/ |
192 |
|
admin { |
193 |
|
name = "Smurf target"; |
210 |
|
|
211 |
|
/* |
212 |
|
* number_per_ip: how many local users are allowed to connect |
213 |
< |
* from a single IP address (optional) |
213 |
> |
* from a single IP address (optional) |
214 |
|
*/ |
215 |
|
number_per_ip = 2; |
216 |
|
|
217 |
|
/* |
218 |
|
* max_local: how many local users are allowed to connect |
219 |
< |
* from a single ident@host (optional) |
219 |
> |
* from a single ident@host (optional) |
220 |
|
*/ |
221 |
|
max_local = 2; |
222 |
|
|
223 |
|
/* |
224 |
< |
* max_global: network-wide limit of users per ident@host (optional) |
224 |
> |
* max_global: network-wide limit of users per ident@host (optional) |
225 |
|
*/ |
226 |
|
max_global = 10; |
227 |
|
|
231 |
|
max_number = 100; |
232 |
|
|
233 |
|
/* |
234 |
< |
* the following lines are optional and allow you to define |
234 |
> |
* The following lines are optional and allow you to define |
235 |
|
* how many users can connect from one /NN subnet. |
236 |
|
*/ |
237 |
|
cidr_bitlen_ipv4 = 24; |
246 |
|
|
247 |
|
/* |
248 |
|
* recvq: the amount of data allowed in a client's receive queue before |
249 |
< |
* they are dropped for flooding. Defaults to 2560 if the chosen |
250 |
< |
* value isn't within the range of 512 to 8000. |
249 |
> |
* they are dropped for flooding. Defaults to 2560 if the chosen value |
250 |
> |
* isn't within the range of 512 to 8000. |
251 |
|
*/ |
252 |
|
recvq = 2560 bytes; |
253 |
|
}; |
260 |
|
sendq = 100 kbytes; |
261 |
|
|
262 |
|
/* |
263 |
+ |
* max_channels: maximum number of channels users in this class can join. |
264 |
+ |
*/ |
265 |
+ |
max_channels = 60; |
266 |
+ |
|
267 |
+ |
/* |
268 |
|
* min_idle: minimum idle time that is shown in /whois. |
269 |
|
*/ |
270 |
|
min_idle = 3 hours; |
317 |
|
/* |
318 |
|
* file: path to the actual motd file. |
319 |
|
*/ |
320 |
< |
file = "/usr/local/ircd/etc/german.motd"; |
320 |
> |
file = "etc/german.motd"; |
321 |
|
}; |
322 |
|
|
323 |
|
/* |
331 |
|
* Ports are separated by commas; a range may be specified using ".." |
332 |
|
*/ |
333 |
|
|
334 |
< |
/* port: listen on all available IP addresses, ports 6665 to 6669 */ |
334 |
> |
/* port: listen on all available IP addresses, ports 6665 to 6669. */ |
335 |
|
port = 6665 .. 6669; |
336 |
|
|
337 |
|
/* |
367 |
|
auth { |
368 |
|
/* |
369 |
|
* user: the user@host allowed to connect. Multiple user |
370 |
< |
* lines are permitted within each auth block. |
370 |
> |
* lines are permitted within each auth {} block. |
371 |
|
*/ |
372 |
|
user = "*@172.16.0.0/12"; |
373 |
|
user = "*test@123D:B567:*"; |
374 |
|
|
375 |
< |
/* password: an optional password that is required to use this block */ |
375 |
> |
/* password: an optional password that is required to use this block. */ |
376 |
|
password = "letmein"; |
377 |
|
|
378 |
|
/* |
387 |
|
*/ |
388 |
|
spoof = "I.still.hate.packets"; |
389 |
|
|
390 |
< |
/* class: the class the user is placed in */ |
390 |
> |
/* class: the class the user is placed in. */ |
391 |
|
class = "opers"; |
392 |
|
|
393 |
|
/* |
394 |
< |
* need_password - don't allow users who haven't supplied the correct |
395 |
< |
* password to connect using another auth{} block |
396 |
< |
* ('&' prefix on /stats I if disabled) |
385 |
< |
* need_ident - require the user to have identd to connect ('+' prefix on /stats I) |
394 |
> |
* need_password - don't allow users who haven't supplied the correct | ('&' prefix on /stats I if disabled) |
395 |
> |
* password to connect using another auth {} block |
396 |
> |
* need_ident - require the user to have identd to connect | ('+' prefix on /stats I) |
397 |
|
* spoof_notice - enable spoofing notification to admins |
398 |
< |
* exceed_limit - allow a user to exceed class limits ('>' prefix on /stats I) |
399 |
< |
* kline_exempt - exempt this user from k/glines ('^' prefix on /stats I) |
400 |
< |
* gline_exempt - exempt this user from glines ('_' prefix on /stats I) |
401 |
< |
* resv_exempt - exempt this user from resvs ('$' prefix on /stats I) |
402 |
< |
* no_tilde - remove ~ from a user with no ident ('-' prefix on /stats I) |
403 |
< |
* can_flood - allow this user to exceed flood limits ('|' prefix on /stats I) |
404 |
< |
* webirc - enables WEBIRC authentication for web-based clients such as Mibbit |
405 |
< |
* ('<' prefix on /stats I) |
398 |
> |
* exceed_limit - allow a user to exceed class limits | ('>' prefix on /stats I) |
399 |
> |
* kline_exempt - exempt this user from k/glines | ('^' prefix on /stats I) |
400 |
> |
* gline_exempt - exempt this user from glines | ('_' prefix on /stats I) |
401 |
> |
* resv_exempt - exempt this user from resvs | ('$' prefix on /stats I) |
402 |
> |
* no_tilde - remove ~ from a user with no ident | ('-' prefix on /stats I) |
403 |
> |
* can_flood - allow this user to exceed flood limits | ('|' prefix on /stats I) |
404 |
> |
* webirc - enables WEBIRC authentication for web-based | ('<' prefix on /stats I) |
405 |
> |
* clients such as Mibbit |
406 |
|
*/ |
407 |
|
flags = need_password, spoof_notice, exceed_limit, kline_exempt, |
408 |
|
gline_exempt, resv_exempt, no_tilde, can_flood; |
410 |
|
|
411 |
|
auth { |
412 |
|
/* |
413 |
< |
* redirect: the server and port to redirect a user to. A user does not |
414 |
< |
* have to obey the redirection; the ircd just suggests an alternative |
415 |
< |
* server for them. |
413 |
> |
* redirserv, redirport: the server and port to redirect a user to. |
414 |
> |
* A user does not have to obey the redirection; the ircd just |
415 |
> |
* suggests an alternative server for them. |
416 |
|
*/ |
417 |
< |
redirserv = "this.is.not.a.real.server"; |
417 |
> |
redirserv = "server.tld"; |
418 |
|
redirport = 6667; |
419 |
|
|
420 |
< |
user = "*.server"; |
420 |
> |
user = "*@*.tld"; |
421 |
|
|
422 |
< |
/* class: a class is required even though it is not used */ |
422 |
> |
/* class: a class is required even though it is not used. */ |
423 |
|
class = "users"; |
424 |
|
}; |
425 |
|
|
433 |
|
* operator {}: defines ircd operators |
434 |
|
*/ |
435 |
|
operator { |
436 |
< |
/* name: the name of the oper */ |
436 |
> |
/* name: the name of the operator */ |
437 |
|
name = "sheep"; |
438 |
|
|
439 |
|
/* |
440 |
|
* user: the user@host required for this operator. Multiple user |
441 |
< |
* lines are permitted within each operator block. |
441 |
> |
* lines are permitted within each operator {} block. |
442 |
|
*/ |
443 |
|
user = "*sheep@192.168.0.0/16"; |
444 |
|
user = "*@127.0.0.0/8"; |
455 |
|
|
456 |
|
/* |
457 |
|
* encrypted: controls whether the oper password above has been |
458 |
< |
* encrypted. |
458 |
> |
* encrypted. Default is 'yes' if nothing else is specified. |
459 |
|
*/ |
460 |
|
encrypted = yes; |
461 |
|
|
462 |
|
/* |
463 |
< |
* rsa_public_key_file: the public key for this oper when using Challenge. |
463 |
> |
* rsa_public_key_file: the public key for this oper when using /challenge. |
464 |
|
* A password should not be defined when this is used; see |
465 |
|
* doc/challenge.txt for more information. |
466 |
|
*/ |
467 |
< |
# rsa_public_key_file = "/usr/local/ircd/etc/oper.pub"; |
467 |
> |
# rsa_public_key_file = "etc/oper.pub"; |
468 |
|
|
469 |
|
/* |
470 |
|
* ssl_certificate_fingerprint: enhances security by additionally checking |
480 |
|
|
481 |
|
/* |
482 |
|
* ssl_connection_required: client must be connected over SSL/TLS |
483 |
< |
* in order to be able to use this oper{} block. |
483 |
> |
* in order to be able to use this operator {} block. |
484 |
|
* Default is 'no' if nothing else is specified. |
485 |
|
*/ |
486 |
|
ssl_connection_required = no; |
487 |
|
|
488 |
< |
/* class: the class the oper joins when they successfully /oper */ |
488 |
> |
/* class: the class the oper joins when they successfully /oper or /challenge. */ |
489 |
|
class = "opers"; |
490 |
|
|
491 |
|
/* |
492 |
< |
* umodes: the default usermodes opers get when they /oper. If defined, |
493 |
< |
* it will override oper_umodes settings in general {}. |
492 |
> |
* umodes: the default usermodes opers get when they /oper or /challenge. |
493 |
> |
* If defined, it will override oper_umodes settings in general {}. |
494 |
|
* Available usermodes: |
495 |
|
* |
496 |
|
* +b - bots - See bot and drone flooding notices |
499 |
|
* +d - debug - See debugging notices |
500 |
|
* +e - external - See remote server connection and split notices |
501 |
|
* +F - farconnect - Remote client connection/quit notices |
502 |
< |
* +f - full - See auth{} block full notices |
502 |
> |
* +f - full - See auth {} block full notices |
503 |
|
* +G - softcallerid - Server Side Ignore for users not on your channels |
504 |
|
* +g - callerid - Server Side Ignore (for privmsgs etc) |
505 |
|
* +H - hidden - Hides operator status to other users |
520 |
|
|
521 |
|
/* |
522 |
|
* privileges: controls the activities and commands an oper is |
523 |
< |
* allowed to do on the server. All options default to no. |
524 |
< |
* Available options: |
523 |
> |
* allowed to do on the server. All flags default to 'no'. |
524 |
> |
* Available flags: |
525 |
|
* |
526 |
< |
* module - allows MODULE |
526 |
> |
* admin - gives administrator privileges | ('A' flag) |
527 |
|
* connect - allows local CONNECT | ('P' flag) |
528 |
|
* connect:remote - allows remote CONNECT | ('Q' flag) |
529 |
< |
* squit - allows local SQUIT | ('R' flag) |
530 |
< |
* squit:remote - allows remote SQUIT | ('S' flag) |
529 |
> |
* die - allows DIE | ('D' flag) |
530 |
> |
* dline - allows DLINE | |
531 |
> |
* gline - allows GLINE | ('G' flag) |
532 |
> |
* globops - allows GLOBOPS | |
533 |
|
* kill - allows to KILL local clients | ('N' flag) |
534 |
|
* kill:remote - allows remote users to be /KILL'd | ('O' flag) |
522 |
– |
* remoteban - allows remote KLINE/UNKLINE | ('B' flag) |
523 |
– |
* dline - allows DLINE | |
524 |
– |
* undline - allows UNDLINE | |
535 |
|
* kline - allows KLINE | ('K' flag) |
526 |
– |
* unkline - allows UNKLINE | ('U' flag) |
527 |
– |
* gline - allows GLINE | ('G' flag) |
528 |
– |
* xline - allows XLINE | ('X' flag) |
529 |
– |
* unxline - allows UNXLINE | |
536 |
|
* locops - allows LOCOPS | |
537 |
< |
* globops - allows GLOBOPS | |
538 |
< |
* wallops - allows WALLOPS | |
537 |
> |
* module - allows MODULE | |
538 |
> |
* opme - allows OPME | |
539 |
|
* rehash - allows oper to REHASH config | ('H' flag) |
540 |
< |
* die - allows DIE | ('D' flag) |
540 |
> |
* remoteban - allows remote KLINE/UNKLINE | ('B' flag) |
541 |
|
* restart - allows RESTART | |
542 |
|
* set - allows SET | |
543 |
< |
* admin - gives administrator privileges | ('A' flag) |
543 |
> |
* squit - allows local SQUIT | ('R' flag) |
544 |
> |
* squit:remote - allows remote SQUIT | ('S' flag) |
545 |
> |
* undline - allows UNDLINE | |
546 |
> |
* unkline - allows UNKLINE | ('U' flag) |
547 |
> |
* unxline - allows UNXLINE | |
548 |
> |
* wallops - allows WALLOPS | |
549 |
> |
* xline - allows XLINE | ('X' flag) |
550 |
|
*/ |
551 |
< |
flags = kill, kill:remote, connect, connect:remote, kline, unkline, |
552 |
< |
xline, globops, restart, die, rehash, admin, module; |
541 |
< |
}; |
542 |
< |
|
543 |
< |
/* |
544 |
< |
* service {}: specifies a server which may act as a network service |
545 |
< |
* |
546 |
< |
* NOTE: it is very important that every server on the network |
547 |
< |
* has the same service{} block. |
548 |
< |
*/ |
549 |
< |
service { |
550 |
< |
name = "service.someserver"; |
551 |
< |
name = "stats.someserver"; |
551 |
> |
flags = admin, connect, connect:remote, die, globops, kill, kill:remote, |
552 |
> |
kline, module, rehash, restart, set, unkline, unxline, xline; |
553 |
|
}; |
554 |
|
|
555 |
|
/* |
556 |
|
* connect {}: define a server to connect to |
557 |
|
*/ |
558 |
|
connect { |
559 |
< |
/* name: the name of the server */ |
559 |
> |
/* name: the name of the server. */ |
560 |
|
name = "irc.uplink.com"; |
561 |
|
|
562 |
|
/* |
574 |
|
vhost = "192.168.0.2"; |
575 |
|
|
576 |
|
/* |
577 |
< |
* passwords: the passwords to send (OLD C:) and accept (OLD N:). |
577 |
> |
* send_password, accept_password: the passwords to send and accept. |
578 |
|
* The remote server will have these passwords swapped. |
579 |
|
*/ |
580 |
|
send_password = "password"; |
586 |
|
*/ |
587 |
|
encrypted = no; |
588 |
|
|
589 |
< |
/* port: the port to connect to this server on */ |
589 |
> |
/* port: the port to connect to this server on. */ |
590 |
|
port = 6666; |
591 |
|
|
592 |
|
/* |
601 |
|
*/ |
602 |
|
# leaf_mask = "*.uk"; |
603 |
|
|
604 |
< |
/* class: the class this server is in */ |
604 |
> |
/* class: the class this server is in. */ |
605 |
|
class = "server"; |
606 |
|
|
607 |
|
/* |
608 |
< |
* ssl_cipher_list: |
609 |
< |
* |
610 |
< |
* List of ciphers that the server we are connecting to must support. |
610 |
< |
* If the server is not capable of using any of the ciphers listed below, |
611 |
< |
* the connection will simply be rejected. |
608 |
> |
* ssl_cipher_list: list of ciphers that the server we are connecting to |
609 |
> |
* must support. If the server is not capable of using any of the ciphers |
610 |
> |
* listed below, the connection will simply be rejected. |
611 |
|
* Can be used to enforce stronger ciphers, even though this option |
612 |
|
* is not necessarily required to establish a SSL/TLS connection. |
613 |
|
* |
659 |
|
* will not be propagated to clustered servers. |
660 |
|
* |
661 |
|
* Remote servers are not necessarily required to accept |
662 |
< |
* clustered lines, they need a shared{} for *THIS* server |
663 |
< |
* in order to accept them. |
662 |
> |
* clustered lines, they need a shared {} block for *THIS* |
663 |
> |
* server in order to accept them. |
664 |
|
*/ |
665 |
|
name = "*.arpa"; |
666 |
|
|
721 |
|
|
722 |
|
/* |
723 |
|
* kill {}: users that are not allowed to connect |
724 |
< |
* Oper issued klines will be added to the specified kline config |
724 |
> |
* Oper issued klines will be added to the specified kline database |
725 |
|
*/ |
726 |
|
kill { |
727 |
|
user = "bad@*.hacked.edu"; |
731 |
|
/* |
732 |
|
* deny {}: IP addresses that are not allowed to connect |
733 |
|
* (before DNS/ident lookup) |
734 |
< |
* Oper issued dlines will be added to the specified dline config |
734 |
> |
* Oper issued dlines will be added to the specified dline database |
735 |
|
*/ |
736 |
|
deny { |
737 |
|
ip = "10.0.1.0/24"; |
777 |
|
}; |
778 |
|
|
779 |
|
/* |
780 |
< |
* gecos {}: Used for banning users based on their "realname". |
780 |
> |
* gecos {}: used for banning users based on their "realname". |
781 |
|
*/ |
782 |
|
gecos { |
783 |
|
name = "*sex*"; |
790 |
|
}; |
791 |
|
|
792 |
|
/* |
793 |
< |
* channel {}: The channel block contains options pertaining to channels |
793 |
> |
* service {}: specifies a server which may act as a network service |
794 |
> |
* |
795 |
> |
* NOTE: it is very important that every server on the network |
796 |
> |
* has the same service {} block. |
797 |
> |
*/ |
798 |
> |
service { |
799 |
> |
name = "service.someserver"; |
800 |
> |
name = "stats.someserver"; |
801 |
> |
}; |
802 |
> |
|
803 |
> |
/* |
804 |
> |
* pseudo {}: adds pseudo/custom commands also known as service aliases |
805 |
> |
*/ |
806 |
> |
pseudo { |
807 |
> |
/* command: the actual command/alias */ |
808 |
> |
command = "IDENTIFY"; |
809 |
> |
|
810 |
> |
/* prepend: optional text that can be prepended before the user's message */ |
811 |
> |
prepend = "IDENTIFY "; |
812 |
> |
|
813 |
> |
/* name: the service name, used for error messages */ |
814 |
> |
name = "NickServ"; |
815 |
> |
|
816 |
> |
/* target: the actual target where this message should be sent to */ |
817 |
> |
target = "NickServ@service.someserver"; |
818 |
> |
}; |
819 |
> |
|
820 |
> |
pseudo { |
821 |
> |
command = "CHANSERV"; |
822 |
> |
name = "ChanServ"; |
823 |
> |
target = "ChanServ@service.someserver"; |
824 |
> |
}; |
825 |
> |
|
826 |
> |
pseudo { |
827 |
> |
command = "CS"; |
828 |
> |
name = "ChanServ"; |
829 |
> |
target = "ChanServ@service.someserver"; |
830 |
> |
}; |
831 |
> |
|
832 |
> |
pseudo { |
833 |
> |
command = "NICKSERV"; |
834 |
> |
name = "NickServ"; |
835 |
> |
target = "NickServ@service.someserver"; |
836 |
> |
}; |
837 |
> |
|
838 |
> |
pseudo { |
839 |
> |
command = "NS"; |
840 |
> |
name = "NickServ"; |
841 |
> |
target = "NickServ@service.someserver"; |
842 |
> |
}; |
843 |
> |
|
844 |
> |
pseudo { |
845 |
> |
command = "MEMOSERV"; |
846 |
> |
name = "MemoServ"; |
847 |
> |
target = "MemoServ@service.someserver"; |
848 |
> |
}; |
849 |
> |
|
850 |
> |
pseudo { |
851 |
> |
command = "MS"; |
852 |
> |
name = "MemoServ"; |
853 |
> |
target = "MemoServ@service.someserver"; |
854 |
> |
}; |
855 |
> |
|
856 |
> |
pseudo { |
857 |
> |
command = "OPERSERV"; |
858 |
> |
name = "OperServ"; |
859 |
> |
target = "OperServ@service.someserver"; |
860 |
> |
}; |
861 |
> |
|
862 |
> |
pseudo { |
863 |
> |
command = "OS"; |
864 |
> |
name = "OperServ"; |
865 |
> |
target = "OperServ@service.someserver"; |
866 |
> |
}; |
867 |
> |
|
868 |
> |
pseudo { |
869 |
> |
command = "HOSTSERV"; |
870 |
> |
name = "HostServ"; |
871 |
> |
target = "HostServ@service.someserver"; |
872 |
> |
}; |
873 |
> |
|
874 |
> |
pseudo { |
875 |
> |
command = "HS"; |
876 |
> |
name = "HostServ"; |
877 |
> |
target = "HostServ@service.someserver"; |
878 |
> |
}; |
879 |
> |
|
880 |
> |
pseudo { |
881 |
> |
command = "BOTSERV"; |
882 |
> |
name = "BotServ"; |
883 |
> |
target = "BotServ@service.someserver"; |
884 |
> |
}; |
885 |
> |
|
886 |
> |
pseudo { |
887 |
> |
command = "BS"; |
888 |
> |
name = "BotServ"; |
889 |
> |
target = "BotServ@service.someserver"; |
890 |
> |
}; |
891 |
> |
|
892 |
> |
/* |
893 |
> |
* channel {}: the channel block contains options pertaining to channels |
894 |
|
*/ |
895 |
|
channel { |
896 |
|
/* |
923 |
|
knock_client_time = 5 minutes; |
924 |
|
|
925 |
|
/* |
926 |
< |
* knock_delay_channel: How often a KNOCK to any specific channel |
926 |
> |
* knock_delay_channel: how often a KNOCK to any specific channel |
927 |
|
* is permitted, regardless of the user sending the KNOCK. |
928 |
|
*/ |
929 |
|
knock_delay_channel = 1 minute; |
930 |
|
|
931 |
|
/* |
932 |
< |
* max_chans_per_user: The maximum number of channels a user can |
933 |
< |
* join/be on. |
932 |
> |
* max_channels: the maximum number of channels a user can join/be on. |
933 |
> |
* This is a default value which can be overriden with class {} blocks. |
934 |
|
*/ |
935 |
< |
max_chans_per_user = 25; |
837 |
< |
|
838 |
< |
/* |
839 |
< |
* max_chans_per_oper: The maximum number of channels an oper can |
840 |
< |
* join/be on. |
841 |
< |
*/ |
842 |
< |
max_chans_per_oper = 50; |
935 |
> |
max_channels = 25; |
936 |
|
|
937 |
|
/* max_bans: maximum number of +b/e/I modes in a channel */ |
938 |
|
max_bans = 100; |
975 |
|
}; |
976 |
|
|
977 |
|
/* |
978 |
< |
* serverhide {}: The serverhide block contains the options regarding |
979 |
< |
* to server hiding |
978 |
> |
* serverhide {}: the serverhide block contains the options regarding |
979 |
> |
* to server hiding. For more information regarding server hiding, |
980 |
> |
* please see doc/serverhide.txt |
981 |
|
*/ |
982 |
|
serverhide { |
983 |
|
/* |
1012 |
|
|
1013 |
|
/* |
1014 |
|
* hide_services: define this if you want to hide the location of |
1015 |
< |
* services servers that are specified in the service{} block. |
1015 |
> |
* services servers that are specified in the service {} block. |
1016 |
|
*/ |
1017 |
|
hide_services = no; |
1018 |
|
|
1019 |
|
/* |
1020 |
< |
* Use this as the servername users see if hide_servers = yes. |
1020 |
> |
* hidden_name: use this as the servername users see if hide_servers = yes. |
1021 |
|
*/ |
1022 |
|
hidden_name = "*.hidden.com"; |
1023 |
|
|
1024 |
|
/* |
1025 |
< |
* hide_server_ips: If this is disabled, opers will be unable to see |
1025 |
> |
* hide_server_ips: if this is disabled, opers will be unable to see |
1026 |
|
* servers' IP addresses and will be shown a masked IP address; admins |
1027 |
|
* will be shown the real IP address. |
1028 |
|
* |
1037 |
|
}; |
1038 |
|
|
1039 |
|
/* |
1040 |
< |
* general {}: The general block contains many of the options that were once |
1040 |
> |
* general {}: the general block contains many of the options that were once |
1041 |
|
* compiled in options in config.h |
1042 |
|
*/ |
1043 |
|
general { |
1047 |
|
*/ |
1048 |
|
cycle_on_host_change = yes; |
1049 |
|
|
956 |
– |
/* services_name: servername of nick/channel services */ |
957 |
– |
services_name = "service.someserver"; |
958 |
– |
|
1050 |
|
/* max_watch: maximum WATCH entries a client can have. */ |
1051 |
< |
max_watch = 50; |
1051 |
> |
max_watch = 30; |
1052 |
> |
|
1053 |
> |
/* max_accept: maximum allowed /accept's for +g usermode. */ |
1054 |
> |
max_accept = 30; |
1055 |
|
|
1056 |
|
/* gline_enable: enable glines (network-wide temporary klines). */ |
1057 |
|
gline_enable = yes; |
1058 |
|
|
1059 |
|
/* |
1060 |
< |
* gline_duration: the amount of time a gline will remain on your |
1060 |
> |
* gline_duration: the amount of time a G-line will remain on your |
1061 |
|
* server before expiring. |
1062 |
|
*/ |
1063 |
|
gline_duration = 1 day; |
1070 |
|
|
1071 |
|
/* |
1072 |
|
* gline_min_cidr: the minimum required length of a CIDR bitmask |
1073 |
< |
* for IPv4 based glines. |
1073 |
> |
* for IPv4 based G-lines. |
1074 |
|
*/ |
1075 |
|
gline_min_cidr = 16; |
1076 |
|
|
1077 |
|
/* |
1078 |
|
* gline_min_cidr6: the minimum required length of a CIDR bitmask |
1079 |
< |
* for IPv6 based glines. |
1079 |
> |
* for IPv6 based G-lines. |
1080 |
|
*/ |
1081 |
|
gline_min_cidr6 = 48; |
1082 |
|
|
1095 |
|
kill_chase_time_limit = 30 seconds; |
1096 |
|
|
1097 |
|
/* |
1098 |
< |
* hide_spoof_ips: if disabled, opers will be allowed to see the real |
1099 |
< |
* IP address of spoofed users in /trace etc. If this is defined they |
1100 |
< |
* will be shown a masked IP. |
1007 |
< |
*/ |
1008 |
< |
hide_spoof_ips = yes; |
1009 |
< |
|
1010 |
< |
/* |
1011 |
< |
* Ignore bogus timestamps from other servers. Yes, this will desync the |
1012 |
< |
* network, but it will allow chanops to resync with a valid non TS 0 |
1098 |
> |
* ignore_bogus_ts: ignore bogus timestamps from other servers. |
1099 |
> |
* Yes, this will desync the network, but it will allow chanops |
1100 |
> |
* to resync with a valid non TS 0. |
1101 |
|
* |
1102 |
|
* This should be enabled network wide, or not at all. |
1103 |
|
*/ |
1117 |
|
|
1118 |
|
/* |
1119 |
|
* default_floodcount: the default value of floodcount that is configurable |
1120 |
< |
* via /quote set floodcount. This is the number of lines a user |
1121 |
< |
* may send to any other user/channel in one second. |
1120 |
> |
* via /quote set floodcount. This is the number of lines a user may send |
1121 |
> |
* to any other user/channel in one second. |
1122 |
|
*/ |
1123 |
|
default_floodcount = 10; |
1124 |
|
|
1138 |
|
* min_nonwildcard: the minimum number of non-wildcard characters in |
1139 |
|
* k/d/g lines placed via the server. K-lines hand-placed are exempt from |
1140 |
|
* this limit. |
1141 |
< |
* Wildcard chars: '.', ':', '*', '?', '@', '!' |
1141 |
> |
* Wildcard characters: '.', ':', '*', '?', '@', '!' |
1142 |
|
*/ |
1143 |
|
min_nonwildcard = 4; |
1144 |
|
|
1145 |
|
/* |
1146 |
|
* min_nonwildcard_simple: the minimum number of non-wildcard characters |
1147 |
< |
* in gecos bans. Wildcard chars: '*', '?' |
1147 |
> |
* in gecos bans. Wildcard characters: '*', '?' |
1148 |
|
*/ |
1149 |
|
min_nonwildcard_simple = 3; |
1150 |
|
|
1063 |
– |
/* max_accept: maximum allowed /accept's for +g usermode. */ |
1064 |
– |
max_accept = 50; |
1065 |
– |
|
1151 |
|
/* anti_nick_flood: enable the nickflood control code. */ |
1152 |
|
anti_nick_flood = yes; |
1153 |
|
|
1154 |
< |
/* nick flood: the number of nick changes allowed in the specified period */ |
1154 |
> |
/* nick flood: the number of nick changes allowed in the specified period. */ |
1155 |
|
max_nick_time = 20 seconds; |
1156 |
|
max_nick_changes = 5; |
1157 |
|
|
1158 |
|
/* |
1159 |
+ |
* away_count, away_time: how many AWAY command are permitted per |
1160 |
+ |
* client per away_time. |
1161 |
+ |
*/ |
1162 |
+ |
away_count = 2; |
1163 |
+ |
away_time = 10 seconds; |
1164 |
+ |
|
1165 |
+ |
/* |
1166 |
|
* anti_spam_exit_message_time: the minimum time a user must be connected |
1167 |
|
* before custom quit messages are allowed. |
1168 |
|
*/ |
1169 |
|
anti_spam_exit_message_time = 5 minutes; |
1170 |
|
|
1171 |
|
/* |
1172 |
< |
* ts delta: the time delta allowed between server clocks before |
1173 |
< |
* a warning is given, or before the link is dropped. All servers |
1174 |
< |
* should run ntpdate/rdate to keep clocks in sync |
1172 |
> |
* ts_warn_delta, ts_max_delta: the time delta allowed between server |
1173 |
> |
* clocks before a warning is given, or before the link is dropped. |
1174 |
> |
* All servers should run ntpdate/rdate to keep clocks in sync. |
1175 |
|
*/ |
1176 |
< |
ts_warn_delta = 10 seconds; |
1177 |
< |
ts_max_delta = 2 minutes; |
1176 |
> |
ts_warn_delta = 3 seconds; |
1177 |
> |
ts_max_delta = 15 seconds; |
1178 |
|
|
1179 |
|
/* |
1180 |
|
* warn_no_connect_block: warn opers about servers that try to connect |
1186 |
|
/* |
1187 |
|
* stats_e_disabled: set this to 'yes' to disable "STATS e" for both |
1188 |
|
* operators and administrators. Doing so is a good idea in case |
1189 |
< |
* there are any exempted (exempt{}) server IPs you don't want to |
1189 |
> |
* there are any exempted (exempt {}) server IPs you don't want to |
1190 |
|
* see leaked. |
1191 |
|
*/ |
1192 |
|
stats_e_disabled = no; |
1193 |
|
|
1194 |
< |
/* stats_o_oper only: make stats o (opers) oper only */ |
1194 |
> |
/* stats_o_oper_only: make stats o (opers) oper only. */ |
1195 |
|
stats_o_oper_only = yes; |
1196 |
|
|
1197 |
< |
/* stats_P_oper_only: make stats P (ports) oper only */ |
1197 |
> |
/* stats_P_oper_only: make stats P (ports) oper only. */ |
1198 |
|
stats_P_oper_only = yes; |
1199 |
|
|
1200 |
< |
/* stats_u_oper_only: make stats u (uptime) oper only */ |
1200 |
> |
/* stats_u_oper_only: make stats u (uptime) oper only. */ |
1201 |
|
stats_u_oper_only = no; |
1202 |
|
|
1203 |
|
/* |
1204 |
|
* stats_i_oper_only: make stats i (auth {}) oper only. Set to: |
1205 |
< |
* yes - show users no auth blocks, made oper only. |
1206 |
< |
* masked - show users the first matching auth block |
1207 |
< |
* no - show users all auth blocks. |
1205 |
> |
* yes - show users no auth {} blocks, made oper only |
1206 |
> |
* masked - show users the first matching auth {} block |
1207 |
> |
* no - show users all auth {} blocks |
1208 |
|
*/ |
1209 |
|
stats_i_oper_only = yes; |
1210 |
|
|
1211 |
|
/* |
1212 |
|
* stats_k_oper_only: make stats k/K (klines) oper only. Set to: |
1213 |
< |
* yes - show users no auth blocks, made oper only |
1214 |
< |
* masked - show users the first matching auth block |
1215 |
< |
* no - show users all auth blocks. |
1213 |
> |
* yes - show users no auth {} blocks, made oper only |
1214 |
> |
* masked - show users the first matching auth {} block |
1215 |
> |
* no - show users all auth {} blocks |
1216 |
|
*/ |
1217 |
|
stats_k_oper_only = yes; |
1218 |
|
|
1224 |
|
|
1225 |
|
/* |
1226 |
|
* opers_bypass_callerid: allows operators to bypass +g and message |
1227 |
< |
* anyone who has it set (useful if you use services). |
1227 |
> |
* anyone who has it set. |
1228 |
|
*/ |
1229 |
|
opers_bypass_callerid = no; |
1230 |
|
|
1237 |
|
|
1238 |
|
/* |
1239 |
|
* pace_wait: minimum time required between use of more intensive commands |
1240 |
< |
* (AWAY, INFO, LINKS, MAP, MOTD, STATS, WHO, WHOWAS) |
1240 |
> |
* (INFO, LINKS, MAP, MOTD, STATS, WHO, WHOWAS) |
1241 |
|
*/ |
1242 |
|
pace_wait = 10 seconds; |
1243 |
|
|
1248 |
|
short_motd = no; |
1249 |
|
|
1250 |
|
/* |
1251 |
< |
* ping_cookie: require clients to respond exactly to a ping command, |
1251 |
> |
* ping_cookie: require clients to respond exactly to a PING command, |
1252 |
|
* can help block certain types of drones and FTP PASV mode spoofing. |
1253 |
|
*/ |
1254 |
|
ping_cookie = no; |
1256 |
|
/* no_oper_flood: increase flood limits for opers. */ |
1257 |
|
no_oper_flood = yes; |
1258 |
|
|
1167 |
– |
/* |
1168 |
– |
* true_no_oper_flood: completely eliminate flood limits for opers |
1169 |
– |
* and for clients with can_flood = yes in their auth {} blocks. |
1170 |
– |
*/ |
1171 |
– |
true_no_oper_flood = yes; |
1172 |
– |
|
1259 |
|
/* oper_pass_resv: allow opers to over-ride RESVs on nicks/channels. */ |
1260 |
|
oper_pass_resv = yes; |
1261 |
|
|
1277 |
|
* +d - debug - See debugging notices |
1278 |
|
* +e - external - See remote server connection and split notices |
1279 |
|
* +F - farconnect - Remote client connection/quit notices |
1280 |
< |
* +f - full - See auth{} block full notices |
1280 |
> |
* +f - full - See auth {} block full notices |
1281 |
|
* +G - softcallerid - Server Side Ignore for users not on your channels |
1282 |
|
* +g - callerid - Server Side Ignore (for privmsgs etc) |
1283 |
|
* +H - hidden - Hides operator status to other users |
1295 |
|
* +y - spy - See LINKS, STATS, TRACE notices etc. |
1296 |
|
*/ |
1297 |
|
|
1298 |
< |
/* oper_only_umodes: usermodes only opers may set */ |
1299 |
< |
oper_only_umodes = bots, cconn, debug, full, hidden, skill, |
1300 |
< |
nchange, rej, spy, external, |
1215 |
< |
locops, unauth, farconnect; |
1298 |
> |
/* oper_only_umodes: usermodes only operators may set. */ |
1299 |
> |
oper_only_umodes = bots, cconn, debug, external, farconnect, full, hidden, locops, |
1300 |
> |
nchange, rej, skill, spy, unauth; |
1301 |
|
|
1302 |
< |
/* oper_umodes: default usermodes opers get when they /oper */ |
1302 |
> |
/* oper_umodes: default usermodes operators get when they /oper or /challenge. */ |
1303 |
|
oper_umodes = bots, locops, servnotice, wallop; |
1304 |
|
|
1305 |
|
/* |
1306 |
< |
* use_egd: if your system does not have *random devices yet you |
1307 |
< |
* want to use OpenSSL and encrypted links, enable this. Beware - |
1223 |
< |
* EGD is *very* CPU intensive when gathering data for its pool. |
1224 |
< |
*/ |
1225 |
< |
# use_egd = yes; |
1226 |
< |
|
1227 |
< |
/* |
1228 |
< |
* egdpool_path: path to EGD pool. Not necessary for OpenSSL >= 0.9.7 |
1229 |
< |
* which automatically finds the path. |
1306 |
> |
* throttle_count: the maximum number of connections from the same |
1307 |
> |
* IP address allowed in throttle_time duration. |
1308 |
|
*/ |
1309 |
< |
# egdpool_path = "/var/run/egd-pool"; |
1309 |
> |
throttle_count = 1; |
1310 |
|
|
1311 |
|
/* |
1312 |
|
* throttle_time: the minimum amount of time required between |
1313 |
< |
* connections from the same IP address. exempt {} blocks are excluded |
1314 |
< |
* from this throttling. |
1313 |
> |
* connections from the same IP address. exempt {} blocks are |
1314 |
> |
* excluded from this throttling. |
1315 |
|
* Offers protection against flooders who reconnect quickly. |
1316 |
|
* Set to 0 to disable. |
1317 |
|
*/ |
1318 |
< |
throttle_time = 10 seconds; |
1318 |
> |
throttle_time = 2 seconds; |
1319 |
|
}; |
1320 |
|
|
1321 |
|
modules { |
1323 |
|
* path: other paths to search for modules specified below |
1324 |
|
* and in "/module load". |
1325 |
|
*/ |
1326 |
< |
path = "/usr/local/ircd/lib/ircd-hybrid/modules"; |
1327 |
< |
path = "/usr/local/ircd/lib/ircd-hybrid/modules/autoload"; |
1326 |
> |
path = "lib/ircd-hybrid/modules"; |
1327 |
> |
path = "lib/ircd-hybrid/modules/autoload"; |
1328 |
|
|
1329 |
|
/* module: the name of a module to load on startup/rehash. */ |
1330 |
|
# module = "some_module.la"; |
1339 |
|
|
1340 |
|
file { |
1341 |
|
type = oper; |
1342 |
< |
name = "/usr/local/ircd/var/log/oper.log"; |
1342 |
> |
name = "var/log/oper.log"; |
1343 |
|
size = unlimited; |
1344 |
|
}; |
1345 |
|
|
1346 |
|
file { |
1347 |
|
type = user; |
1348 |
< |
name = "/usr/local/ircd/var/log/user.log"; |
1348 |
> |
name = "var/log/user.log"; |
1349 |
|
size = 50 megabytes; |
1350 |
|
}; |
1351 |
|
|
1352 |
|
file { |
1353 |
|
type = kill; |
1354 |
< |
name = "/usr/local/ircd/var/log/kill.log"; |
1354 |
> |
name = "var/log/kill.log"; |
1355 |
|
size = 50 megabytes; |
1356 |
|
}; |
1357 |
|
|
1358 |
|
file { |
1359 |
|
type = kline; |
1360 |
< |
name = "/usr/local/ircd/var/log/kline.log"; |
1360 |
> |
name = "var/log/kline.log"; |
1361 |
|
size = 50 megabytes; |
1362 |
|
}; |
1363 |
|
|
1364 |
|
file { |
1365 |
|
type = dline; |
1366 |
< |
name = "/usr/local/ircd/var/log/dline.log"; |
1366 |
> |
name = "var/log/dline.log"; |
1367 |
|
size = 50 megabytes; |
1368 |
|
}; |
1369 |
|
|
1370 |
|
file { |
1371 |
|
type = gline; |
1372 |
< |
name = "/usr/local/ircd/var/log/gline.log"; |
1372 |
> |
name = "var/log/gline.log"; |
1373 |
|
size = 50 megabytes; |
1374 |
|
}; |
1375 |
|
|
1376 |
|
file { |
1377 |
|
type = xline; |
1378 |
< |
name = "/usr/local/ircd/var/log/xline.log"; |
1378 |
> |
name = "var/log/xline.log"; |
1379 |
|
size = 50 megabytes; |
1380 |
|
}; |
1381 |
|
|
1382 |
|
file { |
1383 |
|
type = resv; |
1384 |
< |
name = "/usr/local/ircd/var/log/resv.log"; |
1384 |
> |
name = "var/log/resv.log"; |
1385 |
|
size = 50 megabytes; |
1386 |
|
}; |
1387 |
|
|
1388 |
|
file { |
1389 |
|
type = debug; |
1390 |
< |
name = "/usr/local/ircd/var/log/debug.log"; |
1390 |
> |
name = "var/log/debug.log"; |
1391 |
|
size = 50 megabytes; |
1392 |
|
}; |
1393 |
|
}; |