This commit is contained in:
root 2024-10-31 13:21:32 +03:00
parent 3c7b8c3aae
commit 0a394bb3eb
8 changed files with 633 additions and 366 deletions

View File

@ -182,6 +182,248 @@ ENV LINK_SEND_PASSWORD="changeme"
ENV LINK_TIMEOUT=3600
ENV CLOAK_KEY="changeme"
ENV CLOAK_IGNORE_CASE="no"
ENV CLOAK_MODE="full"
ENV CLOAK_PREFIX="cloak/"
ENV CLOAK_SUFFIX=".hidden"
ENV BLOCK_AMSG_ACTION="killopers"
ENV BLOCK_AMSG_DELAY="3"
ENV BLOCK_HL_IGNORE_EXT_MESSAGE="yes"
ENV BLOCK_HL_MIN_LEN="50"
ENV BLOCK_HL_MIN_USER_NUM="10"
ENV BLOCK_HL_STRIP_COLOR="yes"
ENV BOT_MODE_FORCE_NOTICE="no"
ENV CHAN_FILTER_HIDE_MASK="yes"
ENV CHAN_FILTER_MAX_LEN="512"
ENV CHAN_FILTER_NOTIFY_USER="yes"
ENV CALLER_ID_COOL_DOWN="4m"
ENV CALLER_ID_MAX_ACCEPTS="256"
ENV CALLER_ID_TRACK_NICK="yes"
ENV CBAN_GLOB="yes"
ENV CHAN_HISTORY_BOTS="yes"
ENV CHAN_HISTORY_ENABLE_UMODE="yes"
ENV CHAN_HISTORY_MAX_LINES="64"
ENV CHAN_HISTORY_PREFIX_MSG="yes"
ENV OPER_CHANNEL_SNOMASK="DdRrtXxLlkKvgfFoO"
ENV CHAN_NAMES_ALLOW_RANGE="35,45-46"
ENV CHAN_NAMES_DENY_RANGE="1-47,58-64,91-96,123-255"
ENV CHANNELS_OPERS="4294967295"
ENV CHANNELS_USERS="4294967295"
ENV CODE_PAGE="ascii"
ENV CONNECT_BAN_BOOT_WAIT="128"
ENV CONNECT_BAN_DURATION="64"
ENV CONNECT_BAN_V4_PREFIX_LEN="32"
ENV CONNECT_BAN_v6_PREFIX_LEN="128"
ENV CONNECT_BAN_SPLIT_WAIT="128"
ENV CONNECT_BAN_THRESHOLD="32"
ENV CTC_TAGS_ALLOW_CLIENT_ONLY_TAGS="no"
ENV DEAF_BYPASS_CHARS=""
ENV DEAF_BYPASS_CHARS_ULINE="!"
ENV DEAF_ENABLE_PRIV_DEAF=""
ENV DEAF_PRIV_DEAF_ULINE=""
ENV DELAY_MSG_ALLOW_NOTICE="yes"
ENV DISABLE_CHMODES=""
ENV DISABLE_COMMANDS=""
ENV DISABLE_FAKENONEXISTANT="no"
ENV DISABLE_USERMODES="w"
ENV HIDECHANS_AFFECTS_OPERS="yes"
ENV HOSTNAME_CHAR_MAP="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.-_/0123456789,"
ENV HTTPD_TIMEOUT="8s"
ENV IDENT_PREFIX_UNQUERIED="yes"
ENV IDENT_TIMEOUT="2s"
ENV INSANE_HOSTMASKS="no"
ENV INSANE_IPMASKS="no"
ENV INSANE_NICKMASKS="no"
ENV INSANE_TRIGGER="95.5"
ENV INVITE_EXCEPTION_BYPASS_KEY="yes"
ENV IRCV3_ACCOUNT_NOTIFY="yes"
ENV IRCV3_AWAY_NOTIFY="yes"
ENV IRCV3_EXTENDED_JOIN="yes"
ENV JOIN_FLOOD_BOOT_WAIT="32s"
ENV JOIN_FLOOD_DURATION="2m"
ENV JOIN_FLOOD_SPLIT_WAIT="32s"
ENV KNOCK_NOTIFY="both"
ENV LIST_MAX_SIZE="512"
ENV LIST_NORMAL_SIZE="256"
ENV MESSAGE_FLOOD_NOTICE="1.0"
ENV MESSAGE_FLOOD_PRIVMSG="1.0"
ENV MESSAGE_FLOOD_TAG_MSG="0.2"
ENV MONITOR_MAX_ENTRIES="256"
ENV MUTE_BAN_NOTIFY_USER="yes"
ENV NICK_DELAY="4s"
ENV NICK_DELAY_HINT="yes"
ENV NICK_FLOOD_DURATION="64s"
ENV NO_CTCP_ENABLE_UMODE="yes"
ENV OJOIN_NOTICE="yes"
ENV OJOIN_OP="yes"
ENV OJOIN_PREFIX="!"
ENV OPER_PREFIX="*"
ENV OPER_TO_SNOMASK="on"
ENV OVERRIDE_ENABLE_UMODE="yes"
ENV OVERRIDE_NOISY="yes"
ENV OVERRIDE_REQUIRE_KEY="yes"
ENV REMOVE_SUPPORT_NO_KICKS="yes"
ENV REPEAT_MAX_BACK_LOG="20"
ENV REPEAT_MAX_DISTANCE="50"
ENV REPEAT_MAX_LINES="20"
ENV REPEAT_MAX_TIME="0"
ENV REPEAT_MAX_SIZE="512"
ENV RLINE_ENGINE="pcre"
ENV RLINE_MATCH_ON_NICK_CHANGE="yes"
ENV RLINE_ZLINE_ON_MATCH="no"
ENV RESTRICT_CHANS_ALLOW_REGISTERED="no"
ENV SECURE_LIST_EXEMPT_REGISTERED="yes"
ENV SECURE_LIST_SHOW_MSG="yes"
ENV SECURE_LIST_WAIT_TIME="8s"
ENV SHOW_WHOIS_OPER_ONLY="no"
ENV SHOW_WHOIS_FROM_OPERS="yes"
ENV SHUN_AFFECT_OPERS="no"
ENV SHUN_ALLOW_CONNECT="no"
ENV SHUN_ALLOW_TAGS="no"
ENV SHUN_CLEANED_COMMANDS="AWAY PART QUIT"
ENV SHUN_ENABLED_COMMANDS="ADMIN OPER PING PONG QUIT PART JOIN"
ENV SHUN_NOTIFY_USER="yes"
ENV SILENCE_EXEMPT_ULINE="yes"
ENV SILENCE_MAX_ENTRIES="256"
ENV SSL_INFO_OPER_ONLY=""
ENV SSL_ENABLE_UMODE="no"
ENV SVS_HOLD_SILENT="no"
ENV TIMED_BANS_SEND_NOTICE="yes"
ENV WAIT_PONG_KILL_ON_BAD_REPLY="yes"
ENV WAIT_PONG_SEND_NOTICE="yes"
ENV WATCH_MAX="256"
ENV WHOWAS_GROUP_SIZE="10"
ENV WHOWAS_MAX_GROUPS="10000"
ENV WHOWAS_MAX_KEEP="32y"
ENV ZOMBIE_CLEAN_SPLIT="no"
ENV ZOMBIE_DIRTY_SPLIT="yes"
ENV ZOMBIE_MAX="100"
ENV ZOMBIE_SERVER_TIME="5m"
ENV AUDITORIUM_OP_CAN_SEE="no"
ENV AUDITORIUM_OPER_CAN_SEE="yes"
ENV AUDITORIUM_OP_VISIBLE="no"
RUN apt -y update
RUN apt -y install coreutils perl git automake autoconf build-essential libpcre2-dev rapidjson-dev libcurl4-gnutls-dev libargon2-dev libmaxminddb-dev libldap2-dev rapidjson-dev libmysqlclient-dev libmysqlclient-dev default-libmysqlclient-dev libpq-dev libre2-dev gnutls-dev libsqlite3-dev libmbedtls-dev libqrencode-dev libpcre3-dev libtre-dev pkg-config libwww-perl
@ -210,9 +452,9 @@ ADD include.default.conf /etc/inspircd/include.conf
ADD GeoLite2-Country.mmdb /etc/inspircd
RUN touch /etc/inspircd/motd.txt
ADD motd.txt /etc/inspircd/motd.txt
RUN touch /etc/inspircd/oper.motd.txt
ADD oper.motd.txt /etc/inspircd/oper.motd.txt
RUN openssl genrsa -out /etc/ssl/inspircd/server.key

View File

@ -88,3 +88,124 @@ DEFAULT_BLOCK_HOST_MASK="nothing"
LINK_RECV_PASSWORD="changeme"
LINK_SEND_PASSWORD="changeme"
LINK_TIMEOUT=32
CLOAK_KEY="BP4qa616oRTJLnUMYZfdcllopx1mere0OlyyLtsicNh2NRyywd529cmvtZnlbNLCbsIkY7Efk6Dp170u"
CLOAK_IGNORE_CASE="no"
CLOAK_MODE="full"
CLOAK_PREFIX="cloak/"
CLOAK_SUFFIX=".hidden"
BLOCK_AMSG_ACTION="killopers"
BLOCK_AMSG_DELAY="3"
BLOCK_HL_IGNORE_EXT_MESSAGE="yes"
BLOCK_HL_MIN_LEN="50"
BLOCK_HL_MIN_USER_NUM="10"
BLOCK_HL_STRIP_COLOR="yes"
BOT_MODE_FORCE_NOTICE="no"
CHAN_FILTER_HIDE_MASK="yes"
CHAN_FILTER_MAX_LEN="512"
CHAN_FILTER_NOTIFY_USER="yes"
CALLER_ID_COOL_DOWN="4m"
CALLER_ID_MAX_ACCEPTS="256"
CALLER_ID_TRACK_NICK="yes"
CBAN_GLOB="yes"
CHAN_HISTORY_BOTS="yes"
CHAN_HISTORY_ENABLE_UMODE="yes"
CHAN_HISTORY_MAX_LINES="64"
CHAN_HISTORY_PREFIX_MSG="yes"
OPER_CHANNEL_SNOMASK="DdRrtXxLlkKvgfFoO"
CHAN_NAMES_ALLOW_RANGE="35,45-46"
CHAN_NAMES_DENY_RANGE="1-47,58-64,91-96,123-255"
CHANNELS_OPERS="4294967295"
CHANNELS_USERS="4294967295"
CODE_PAGE="ascii"
CONNECT_BAN_BOOT_WAIT="128"
CONNECT_BAN_DURATION="64"
CONNECT_BAN_V4_PREFIX_LEN="32"
CONNECT_BAN_v6_PREFIX_LEN="128"
CONNECT_BAN_SPLIT_WAIT="128"
CONNECT_BAN_THRESHOLD="32"
CTC_TAGS_ALLOW_CLIENT_ONLY_TAGS="no"
DEAF_BYPASS_CHARS=""
DEAF_BYPASS_CHARS_ULINE="!"
DEAF_ENABLE_PRIV_DEAF=""
DEAF_PRIV_DEAF_ULINE=""
DELAY_MSG_ALLOW_NOTICE="yes"
DISABLE_CHMODES=""
DISABLE_COMMANDS=""
DISABLE_FAKENONEXISTANT="no"
DISABLE_USERMODES="w"
HIDECHANS_AFFECTS_OPERS="yes"
HOSTNAME_CHAR_MAP="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.-_/0123456789,"
HTTPD_TIMEOUT="8s"
IDENT_PREFIX_UNQUERIED="yes"
IDENT_TIMEOUT="2s"
INSANE_HOSTMASKS="no"
INSANE_IPMASKS="no"
INSANE_NICKMASKS="no"
INSANE_TRIGGER="95.5"
INVITE_EXCEPTION_BYPASS_KEY="yes"
IRCV3_ACCOUNT_NOTIFY="yes"
IRCV3_AWAY_NOTIFY="yes"
IRCV3_EXTENDED_JOIN="yes"
JOIN_FLOOD_BOOT_WAIT="32s"
JOIN_FLOOD_DURATION="2m"
JOIN_FLOOD_SPLIT_WAIT="32s"
KNOCK_NOTIFY="both"
LIST_MAX_SIZE="512"
LIST_NORMAL_SIZE="256"
MESSAGE_FLOOD_NOTICE="1.0"
MESSAGE_FLOOD_PRIVMSG="1.0"
MESSAGE_FLOOD_TAG_MSG="0.2"
MONITOR_MAX_ENTRIES="256"
MUTE_BAN_NOTIFY_USER="yes"
NICK_DELAY="4s"
NICK_DELAY_HINT="yes"
NICK_FLOOD_DURATION="64s"
NO_CTCP_ENABLE_UMODE="yes"
OJOIN_NOTICE="yes"
OJOIN_OP="yes"
OJOIN_PREFIX="!"
OPER_PREFIX="*"
OPER_TO_SNOMASK="on"
OVERRIDE_ENABLE_UMODE="yes"
OVERRIDE_NOISY="yes"
OVERRIDE_REQUIRE_KEY="yes"
REMOVE_SUPPORT_NO_KICKS="yes"
REPEAT_MAX_BACK_LOG="20"
REPEAT_MAX_DISTANCE="50"
REPEAT_MAX_LINES="20"
REPEAT_MAX_TIME="0"
REPEAT_MAX_SIZE="512"
RLINE_ENGINE="pcre"
RLINE_MATCH_ON_NICK_CHANGE="yes"
RLINE_ZLINE_ON_MATCH="no"
RESTRICT_CHANS_ALLOW_REGISTERED="no"
SECURE_LIST_EXEMPT_REGISTERED="yes"
SECURE_LIST_SHOW_MSG="yes"
SECURE_LIST_WAIT_TIME="8s"
SHOW_WHOIS_OPER_ONLY="no"
SHOW_WHOIS_FROM_OPERS="yes"
SHUN_AFFECT_OPERS="no"
SHUN_ALLOW_CONNECT="no"
SHUN_ALLOW_TAGS="no"
SHUN_CLEANED_COMMANDS="AWAY PART QUIT"
SHUN_ENABLED_COMMANDS="ADMIN OPER PING PONG QUIT PART JOIN"
SHUN_NOTIFY_USER="yes"
SILENCE_EXEMPT_ULINE="yes"
SILENCE_MAX_ENTRIES="256"
SSL_INFO_OPER_ONLY=""
SSL_ENABLE_UMODE="no"
SVS_HOLD_SILENT="no"
TIMED_BANS_SEND_NOTICE="yes"
WAIT_PONG_KILL_ON_BAD_REPLY="yes"
WAIT_PONG_SEND_NOTICE="yes"
WATCH_MAX="256"
WHOWAS_GROUP_SIZE="10"
WHOWAS_MAX_GROUPS="10000"
WHOWAS_MAX_KEEP="32y"
ZOMBIE_CLEAN_SPLIT="no"
ZOMBIE_DIRTY_SPLIT="yes"
ZOMBIE_MAX="100"
ZOMBIE_SERVER_TIME="5m"
AUDITORIUM_OP_CAN_SEE="no"
AUDITORIUM_OPER_CAN_SEE="yes"
AUDITORIUM_OP_VISIBLE="no"

View File

@ -7,8 +7,10 @@ services:
image: inspi4
network_mode: "host"
env_file: "config.env"
command: /usr/local/bin/inspircd -c /etc/inspircd/inspircd.conf -F -d
command: /usr/local/bin/inspircd -c /etc/inspircd/inspircd.conf -F
volumes:
- ./motd.txt:/etc/inspircd/motd.txt:ro
- ./oper.motd.txt:/etc/inspircd/oper.motd.txt:ro
- ./include.conf:/etc/inspircd/include.conf:ro
- ssl:/etc/ssl/inspircd
- data:/var/lib/inspircd

View File

@ -28,3 +28,88 @@
name="admin"
password="&env.ADMIN_PASSWORD;"
type="NetAdmin">
<showfile endtext="End of uptime"
file="/proc/uptime"
introtext="server uptime:"
name="UPTIME">
<showfile endtext="End of loadavg"
file="/proc/loadavg"
introtext="server loadavg:"
name="LOADAVG">
<bind address="*"
port="8000"
type="httpd">
<bind address="*"
port="&env.SSL_PORT;"
sslprofile="defaultssl"
type="clients">
<bind address="*"
port="&env.PORT;"
type="clients">
<bind address="*"
port="&env.SERVER_SSL_PORT;"
sslprofile="defaultssl"
type="servers">
<admin email="&env.ADMIN_EMAIL;"
name="admin"
nick="admin">
<server description="internet relay chat network"
id="&env.SID;"
name="&env.SERVER_NAME;"
network="&env.NETWORK_NAME;">
<connect commandrate="&env.COMMAND_RATE;"
fakelag="&env.FAKE_LAG;"
hardsendq="&env.HARD_SENDQ;"
maxchans="&env.MAX_CHANS;"
motd="defaultmotd"
name="All"
pingfreq="&env.PING_FREQ;"
recvq="&env.RECVQ;"
softsendq="&env.SOFT_SENDQ;"
threshold="&env.COMMAND_RATE_THRESHOLD;"
timeout="&env.COMMAND_RATE_THRESHOLD_TIMEOUT;"
useconnflood="&env.USE_CONN_FLOOD;"
usednsbl="&env.USE_DNSBL;"
useident="&env.USE_IDENT;"
resolvehostnames="&env.RESOLVE_HOST_NAMES;"
useconnectban="&env.USE_CONNECT_BAN;">
<connect allow="*"
autojoin="#blackhole"
globalmax="&env.GLOBAL_MAX;"
localmax="&env.LOCAL_MAX;"
maxconnwarn="&env.MAX_CONN_WARN;"
modes="&env.DEFAULT_USER_MODES;"
name="default"
port="&env.PORT;">
<connect allow="*"
modes="&env.SSL_USER_MODES;"
name="ssl"
parent="default"
port="&env.SSL_PORT;">
<connect allow="*"
modes="&env.AUTHENTICATED_USER_MODES;"
name="authenticated"
parent="ssl"
registered="yes"
requireaccount="yes">
<operjoin channel="&env.OPER_CHANNEL;"
override="no">
<httpdacl password="&env.HTTP_ACL_PASSWORD;"
path="/*"
types="password"
username="&env.HTTP_ACL_USERNAME;">

View File

@ -1,6 +1,9 @@
<include file="/etc/inspircd/include.conf"
missingokay="yes">
<files motd="/etc/inspircd/motd.txt"
opermotd="/etc/inspircd/oper.motd.txt">
<path datadir="/var/lib/inspircd"
configdir="/etc/inspircd"
runtimedir="/tmp"
@ -9,33 +12,6 @@
<maxmind file="/etc/inspircd/GeoLite2-Country.mmdb">
<bind address="*"
port="8000"
type="httpd">
<bind address="*"
port="&env.SSL_PORT;"
sslprofile="defaultssl"
type="clients">
<bind address="*"
port="&env.PORT;"
type="clients">
<bind address="*"
port="&env.SERVER_SSL_PORT;"
sslprofile="defaultssl"
type="servers">
<admin email="&env.ADMIN_EMAIL;"
name="admin"
nick="admin">
<server description="General-purpose internet relay chat network"
id="&env.SID;"
name="&env.SERVER_NAME;"
network="&env.NETWORK_NAME;">
<sts duration="5m"
host="&env.STS_HOST;"
port="&env.SSL_PORT;"
@ -44,53 +20,6 @@
<sasl requiressl="yes"
target="&env.SASL_TARGET;">
<connect commandrate="&env.COMMAND_RATE;"
fakelag="&env.FAKE_LAG;"
hardsendq="&env.HARD_SENDQ;"
maxchans="&env.MAX_CHANS;"
motd="defaultmotd"
name="All"
pingfreq="&env.PING_FREQ;"
recvq="&env.RECVQ;"
softsendq="&env.SOFT_SENDQ;"
threshold="&env.COMMAND_RATE_THRESHOLD;"
timeout="&env.COMMAND_RATE_THRESHOLD_TIMEOUT;"
useconnflood="&env.USE_CONN_FLOOD;"
usednsbl="&env.USE_DNSBL;"
useident="&env.USE_IDENT;"
resolvehostnames="&env.RESOLVE_HOST_NAMES;"
useconnectban="&env.USE_CONNECT_BAN;">
<connect allow="*"
autojoin="#blackhole"
globalmax="&env.GLOBAL_MAX;"
localmax="&env.LOCAL_MAX;"
maxconnwarn="&env.MAX_CONN_WARN;"
modes="&env.DEFAULT_USER_MODES;"
name="default"
port="&env.PORT;">
<connect allow="*"
modes="&env.SSL_USER_MODES;"
name="ssl"
parent="default"
port="&env.SSL_PORT;">
<connect allow="*"
modes="&env.AUTHENTICATED_USER_MODES;"
name="authenticated"
parent="ssl"
registered="yes"
requireaccount="yes">
<operjoin channel="&env.OPER_CHANNEL;"
override="no">
<httpdacl password="&env.HTTP_ACL_PASSWORD;"
path="/*"
types="password"
username="&env.HTTP_ACL_USERNAME;">
<alias format="*"
replace="SQUERY ChanServ :IDENTIFY $2 $3"
requires="CHANSERV"
@ -225,9 +154,9 @@
memory="262144"
saltlength="32">
<auditorium opcansee="no"
opercansee="yes"
opvisible="no">
<auditorium opcansee="&env.AUDITORIUM_OP_CAN_SEE;"
opercansee="&env.AUDITORIUM_OPER_CAN_SEE;"
opvisible="&env.AUDITORIUM_OP_VISIBLE;">
<autodrop commands="CONNECT DELETE GET HEAD OPTIONS PATCH POST PUT TRACE">
@ -333,114 +262,93 @@
<badnick nick="root"
reason="Don't IRC as root">
<badnick nick="LINKSERV"
reason="Reserved For Services">
<badnick nick="SPAMSERV"
reason="Reserved For Services">
<badnick nick="GAMESERV"
reason="Reserved For Services">
<badnick nick="MODESERV"
<badnick nick="ALIS"
reason="Reserved For Services">
<badnick nick="BOTSERV"
reason="Reserved for a network service">
<badnick nick="CHANSERV"
reason="Reserved for a network service">
<badnick nick="GLOBAL"
reason="Reserved for a network service">
<badnick nick="HOSTSERV"
reason="Reserved for a network service">
<badnick nick="MEMOSERV"
reason="Reserved for a network service">
<badnick nick="NICKSERV"
reason="Reserved for a network service">
<badnick nick="OPERSERV"
reason="Reserved for a network service">
<badnick nick="STATSERV"
reason="Reserved for a network service">
reason="Reserved For Services">
<badnick nick="CHANFIX"
reason="Reserved for a network service">
reason="Reserved For Services">
<badnick nick="ALIS"
reason="Reserved for a network service">
<badnick nick="CHANSERV"
reason="Reserved For Services">
<badnick nick="GAMESERV"
reason="Reserved for a network service">
reason="Reserved For Services">
<badnick nick="GLOBAL"
reason="Reserved For Services">
<badnick nick="GROUPSERV"
reason="Reserved For Services">
<badnick nick="HELPSERV"
reason="Reserved for a network service">
reason="Reserved For Services">
<badnick nick="HOSTSERV"
reason="Reserved For Services">
<badnick nick="INFOSERV"
reason="Reserved for a network service">
reason="Reserved For Services">
<badnick nick="MEMOSERV"
reason="Reserved For Services">
<badnick nick="NICKSERV"
reason="Reserved For Services">
<badnick nick="OPERSERV"
reason="Reserved For Services">
<badnick nick="PROXYSCAN"
reason="Reserved for a network service">
reason="Reserved For Services">
<badnick nick="RPGSERV"
reason="Reserved for a network service">
reason="Reserved For Services">
<badnick nick="SASLSERV"
reason="Reserved for a network service">
reason="Reserved For Services">
<banmissing cap="yes"
duration="4m"
reason="CAP required, please upgrade your client"
version="yes">
<banmissing ctcp="yes"
duration="1m"
reason="Enable CTCP or adjust your CTCP flood settings and try again">
<badnick nick="STATSERV"
reason="Reserved For Services">
<bcrypt rounds="16">
<blockamsg action="killopers"
delay="3">
<blockamsg action="&env.BLOCK_AMSG_ACTION;"
delay="&env.BLOCK_AMSG_DELAY;">
<blockhighlight ignoreextmsg="yes"
minlen="50"
minusernum="10"
<blockhighlight ignoreextmsg="&env.BLOCK_HL_IGNORE_EXT_MESSAGE;"
minlen="&env.BLOCK_HL_MIN_LEN;"
minusernum="&env.BLOCK_HL_MIN_USER_NUM;"
reason="highlighting has been blocked (exceeded limits)"
stripcolor="yes">
stripcolor="&env.BLOCK_HL_STRIP_COLOR;">
<blockinvite modechar="V"
reply="Can't invite, +V">
<botmode forcenotice="&env.BOT_MODE_FORCE_NOTICE;">
<botmode forcenotice="no">
<callerid cooldown="&env.CALLER_ID_COOL_DOWN;"
maxaccepts="&env.CALLER_ID_MAX_ACCEPTS;"
tracknick="&env.CALLER_ID_TRACK_NICK;">
<callerid cooldown="4m"
maxaccepts="256"
tracknick="yes">
<cban glob="&env.CBAN_GLOB;">
<cban glob="yes">
<chanfilter hidemask="&env.CHAN_FILTER_HIDE_MASK;"
maxlen="&env.CHAN_FILTER_MAX_LEN;"
notifyuser="&env.CHAN_FILTER_NOTIFY_USER;">
<chanfilter hidemask="yes"
maxlen="512"
notifyuser="yes">
<chanhistory bots="yes"
enableumode="yes"
maxlines="64"
prefixmsg="yes">
<chanhistory bots="&env.CHAN_HISTORY_BOTS;"
enableumode="&env.CHAN_HISTORY_ENABLE_UMODE;"
maxlines="&env.CHAN_HISTORY_MAX_LINES;"
prefixmsg="&env.CHAN_HISTORY_PREFIX_MSG;">
<chanlog channel="&env.OPER_CHANNEL;"
snomasks="DdRrtXxLlkKvgfFoO">
snomasks="&env.OPER_CHANNEL_SNOMASK;">
<channames allowrange="35,45-46"
denyrange="1-47,58-64,91-96,123-255">
<channames allowrange="&env.CHAN_NAMES_ALLOW_RANGE;"
denyrange="CHAN_NAMES_DENY_RANGE;">
<channels opers="4294967295"
users="4294967295">
<channels opers="&env.CHANNELS_OPERS;"
users="&env.CHANNELS_USERS;">
<class chanmodes="*"
commands="DIE RESTART REHASH LOADMODULE UNLOADMODULE RELOADMODULE GLOADMODULE GUNLOADMODULE GRELOADMODULE"
@ -482,31 +390,21 @@
<class name="RolePlay"
priv="channels/roleplay channels/roleplay-override">
<cloak ignorecase="no"
key="BP4qa616oRTJLnUMYZfdcllopx1mere0OlyyLtsicNh2NRyywd529cmvtZnlbNLCbsIkY7Efk6Dp170u"
mode="full"
prefix="cloak/"
suffix=".hidden">
<cloak ignorecase="&env.CLOAK_IGNORE_CASE;"
key="&env.CLOAK_KEY;"
mode="&env.CLOAK_MODE;"
prefix="&env.CLOAK_PREFIX;"
suffix="&env.CLOAK_SUFFIX;">
<codepage name="ascii">
<codepage name="&env.CODE_PAGE;">
<connectban banmessage="filtered for connection hammering; wait 64 seconds to retry"
bootwait="128"
duration="64"
ipv4cidr="32"
ipv6cidr="128"
splitwait="128"
threshold="32">
<connflood bootwait="2m"
maxconns="8"
period="32s"
quitmsg="This module isn't used, use connban instead"
timeout="32s">
<connrequire blockmessage="Enable CTCP or adjust your CTCP flood settings and try again in 1 minute"
ctcpstring="TIME"
timeout="5">
bootwait="&env.CONNECT_BAN_BOOT_WAIT;"
duration="&env.CONNECT_BAN_DURATION;"
ipv4cidr="&env.CONNECT_BAN_V4_PREFIX_LEN;"
ipv6cidr="&env.CONNECT_BAN_v6_PREFIX_LEN;"
splitwait="&env.CONNECT_BAN_SPLIT_WAIT;"
threshold="&env.CONNECT_BAN_THRESHOLD;">
<cpcase lower="97"
upper="65">
@ -610,7 +508,7 @@
<cpchars front="no"
index="47">
<ctctags allowclientonlytags="no">
<ctctags allowclientonlytags="&env.CTC_TAGS_ALLOW_CLIENT_ONLY_TAGS;">
<customprefix letter="q"
name="founder"
@ -641,20 +539,17 @@
rank="10000"
ranktoset="20000">
<dccblock channels="no"
users="no">
<deaf bypasschars="&env.DEAF_BYPASS_CHARS;"
bypasscharsuline="&env.DEAF_BYPASS_CHARS_ULINE;"
enableprivdeaf="&env.DEAF_ENABLE_PRIV_DEAF;"
privdeafuline="&env.DEAF_PRIV_DEAF_ULINE;">
<deaf bypasschars=""
bypasscharsuline="!"
enableprivdeaf="yes"
privdeafuline="yes">
<delaymsg allownotice="&env.DELAY_MSG_ALLOW_NOTICE;">
<delaymsg allownotice="yes">
<disabled chanmodes=""
commands=""
fakenonexistant="no"
usermodes="w">
<disabled chanmodes="&env.DISABLE_CHMODES;"
commands="&env.DISABLE_COMMANDS;"
fakenonexistant="&env.DISABLE_FAKENONEXISTANT;"
usermodes="&env.DISABLE_USERMODES;">
<dnsbl action="zline"
domain="dnsbl.dronebl.org"
@ -683,57 +578,47 @@
timeout="5s"
type="record">
<dualversion active="yes"
ban="yes"
duration="1m"
reason="Enable CTCP or adjust your CTCP flood settings and try again in 1 minute"
show="yes">
<exception host="*@127.0.0.1/32"
reason="Local IRC client">
<exemptfromfilter target="&env.OPER_CHANNEL;">
<exemptfromfilter target="&env.SERVICE_CHANNEL;">
<exemptfromfilter target="&env.HELP_CHANNEL;">
<exemptfromfilter target="ALIS">
<exemptfromfilter target="BOTSERV">
<exemptfromfilter target="CHANFIX">
<exemptfromfilter target="CHANSERV">
<exemptfromfilter target="GAMESERV">
<exemptfromfilter target="GLOBAL">
<exemptfromfilter target="GROUPSERV">
<exemptfromfilter target="HELPSERV">
<exemptfromfilter target="HOSTSERV">
<exemptfromfilter target="INFOSERV">
<exemptfromfilter target="MEMOSERV">
<exemptfromfilter target="NICKSERV">
<exemptfromfilter target="OPERSERV">
<exemptfromfilter target="PROXYSCAN">
<exemptfromfilter target="RPGSERV">
<exemptfromfilter target="SASLSERV">
<exemptfromfilter target="STATSERV">
<extbanredirect char="d">
<extbanregex engine="pcre"
opersonly="yes">
<fakelist killonjoin="false"
maxusers="50"
minusers="20"
reason="User hit a spam trap"
target="#spamtrap"
topic="SPAM TRAP: DO NOT JOIN, wait 30 seconds for real channel list"
waittime="1s">
<filteropts engine="glob"
notifyuser="yes"
warnonselfmsg="yes">
<hidechans affectsopers="true">
<hideidle modechar="a">
<hidechans affectsopers="&env.HIDECHANS_AFFECTS_OPERS;">
<hidelist mode="filter"
rank="30000">
@ -744,48 +629,29 @@
<hidemode mode="ban"
rank="10000">
<hostname charmap="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.-_/0123456789,">
<hostname charmap="&env.HOSTNAME_CHAR_MAP;">
<httpd timeout="8s">
<httpd timeout="&env.HTTPD_TIMEOUT;">
<httpstats enableparams="yes">
<ident prefixunqueried="&env.IDENT_PREFIX_UNQUERIED;"
timeout="&env.IDENT_TIMEOUT;">
<ident prefixunqueried="yes"
timeout="2">
<insane hostmasks="&env.INSANE_HOSTMASKS;"
ipmasks="&env.INSANE_IPMASKS;"
nickmasks="&env.INSANE_NICKMASKS;"
trigger="&env.INSANE_TRIGGER;">
<idleprofile away="only"
idletime="7200"
ignoreloggedin="no"
name="example"
nochans="true"
reason="Disconnected for inactivity">
<inviteexception bypasskey="&env.INVITE_EXCEPTION_BYPASS_KEY;">
<insane hostmasks="no"
ipmasks="no"
nickmasks="no"
trigger="95.5">
<ircv3 accountnotify="&env.IRCV3_ACCOUNT_NOTIFY;"
awaynotify="&env.IRCV3_AWAY_NOTIFY;"
extendedjoin="&env.IRCV3_EXTENDED_JOIN;">
<inviteexception bypasskey="yes">
<joinflood bootwait="&env.JOIN_FLOOD_BOOT_WAIT;"
duration="&env.JOIN_FLOOD_DURATION;"
splitwait="&env.JOIN_FLOOD_SPLIT_WAIT;">
<ircv3 accountnotify="yes"
awaynotify="yes"
extendedjoin="yes">
<joinflood bootwait="32s"
duration="2m"
splitwait="32s">
<joinpartspam allowredirect="no"
freeredirect="no"
modechar="x">
<keyword action="gline"
duration="5m"
flags="*"
pattern="*startkeylogger*"
reason="keylogger failed to start">
<knock notify="both">
<knock notify="&env.KNOCK_NOTIFY;">
<limits maxaway="&env.MAX_AWAY;"
maxchan="&env.MAX_CHAN;"
@ -809,21 +675,21 @@
type="* -USERINPUT -USEROUTPUT">
<maxlist chan="largechan"
limit="512"
limit="&env.LIST_MAX_SIZE;"
mode="ban">
<maxlist chan="largechan"
limit="512"
limit="&env.LIST_MAX_SIZE;"
mode="e">
<maxlist chan="*"
limit="256">
limit="&env.LIST_NORMAL_SIZE;">
<maxmind file="/etc/inspircd/geolite2.mmdb">
<messageflood notice="1.0"
privmsg="1.0"
tagmsg="0.2">
<messageflood notice="&env.MESSAGE_FLOOD_NOTICE;"
privmsg="&env.MESSAGE_FLOOD_PRIVMSG;"
tagmsg="&env.MESSAGE_FLOOD_TAG_MSG;">
<module name="geo_maxmind">
@ -839,8 +705,6 @@
<module name="anticaps">
<module name="anticaps">
<module name="argon2">
<module name="auditorium">
@ -899,8 +763,6 @@
<module name="connectban">
<module name="connflood">
<module name="conn_join">
<module name="conn_umodes">
@ -1217,8 +1079,6 @@
<module name="regex_tre">
<module name="solvemsg">
<module name="stats_unlinked">
<module name="teams">
@ -1227,31 +1087,27 @@
<module name="userip">
<monitor maxentries="256">
<monitor maxentries="&env.MONITOR_MAX_ENTRIES;">
<muteban notifyuser="yes">
<muteban notifyuser="&env.MUTE_BAN_NOTIFY_USER;">
<nickdelay delay="5"
hint="true">
<nickdelay delay="&env.NICK_DELAY;"
hint="&env.NICK_DELAY_HINT;">
<nickflood duration="60s">
<nickflood duration="&env.NICK_FLOOD_DURATION;">
<nocreate noisy="yes"
reason="You are not allowed to create channels"
telluser="yes">
<noctcp enableumode="&env.NO_CTCP_ENABLE_UMODE;">
<noctcp enableumode="yes">
<ojoin notice="&env.OJOIN_NOTICE;"
op="&env.OJOIN_OP;"
prefix="&env.OJOIN_PREFIX;">
<ojoin notice="yes"
op="yes"
prefix="!">
<operlog tosnomask="on">
<operlog tosnomask="&env.OPER_TO_SNOMASK;">
<opermotd file="/etc/inspircd/oper.motd.txt"
onoper="yes">
<operprefix prefix="*">
<operprefix prefix="&env.OPER_PREFIX;">
<options allowmismatch="&env.ALLOW_MISMATCH;"
allowzerolimit="&env.ALLOW_ZERO_LIMIT;"
@ -1277,9 +1133,9 @@
syntaxhints="&env.SYNTAX_HINTS;"
xlinemessage="&env.XLINE_MESSAGE;">
<override enableumode="yes"
noisy="yes"
requirekey="yes">
<override enableumode="&env.OVERRIDE_ENABLE_UMODE;"
noisy="&env.OVERRIDE_NOISY;"
requirekey="&env.OVERRIDE_REQUIRE_KEY;">
<passforward cmd="SQUERY $nickrequired :IDENTIFY $nick $pass"
forwardmsg="NOTICE $nick :*** Forwarding PASS to $nickrequired"
@ -1323,42 +1179,26 @@
darkcolour="black"
lightcolour="white">
<randquote file="quotes"
prefix="❦ "
suffix="">
<remove protectedrank="50000"
supportnokicks="yes">
supportnokicks="&env.REMOVE_SUPPORT_NO_KICKS;">
<repeat maxbacklog="20"
maxdistance="50"
maxlines="20"
maxtime="0"
size="512">
<repeat maxbacklog="&env.REPEAT_MAX_BACK_LOG;"
maxdistance="&env.REPEAT_MAX_DISTANCE;"
maxlines="&env.REPEAT_MAX_LINES;"
maxtime="&env.REPEAT_MAX_TIME;"
size="&env.REPEAT_MAX_SIZE;">
<restrictchans allowregistered="no">
<restrictchans allowregistered="&env.RESTRICT_CHANS_ALLOW_REGISTERED;">
<restrictmsg_duration duration="1s"
exemptoper="yes"
exemptregistered="yes"
exemptuline="yes"
notify="no"
target="both">
<rline engine="pcre"
matchonnickchange="yes"
zlineonmatch="no">
<roleplay mode="U"
needchanmode="true"
needop="false"
npchost="&env.ROLE_PLAY_VHOST;">
<rline engine="&env.RLINE_ENGINE;"
matchonnickchange="&env.RLINE_MATCH_ON_NICK_CHANGE;"
zlineonmatch="&env.RLINE_ZLINE_ON_MATCH;">
<rotatelog period="86400">
<securelist exemptregistered="yes"
showmsg="yes"
waittime="8s">
<securelist exemptregistered="&env.SECURE_LIST_EXEMPT_REGISTERED;"
showmsg="&env.SECURE_LIST_SHOW_MSG;"
waittime="&env.SECURE_LIST_WAIT_TIME;">
<security allowcoreunload="no"
announceinvites="dynamic"
@ -1373,55 +1213,30 @@
restrictbannedusers="&env.RESTRICT_BANNED_USERS;"
userstats="&env.USER_STATS;">
<shedusers blockconnect="yes"
blockmessage="This server is in maintenance mode."
kill="no"
maxusers="0"
message="This server has entered maintenance mode."
minidle="3600"
shedopers="no"
shutdown="no">
<showwhois opersonly="&env.SHOW_WHOIS_OPER_ONLY;"
showfromopers="&env.SHOW_WHOIS_FROM_OPERS;">
<showfile endtext="End of uptime"
file="/proc/uptime"
introtext="server uptime:"
name="UPTIME">
<shun affectopers="&env.SHUN_AFFECT_OPERS;"
allowconnect="&env.SHUN_ALLOW_CONNECT;"
allowtags="&env.SHUN_ALLOW_TAGS;"
cleanedcommands="&env.SHUN_CLEANED_COMMANDS;"
enabledcommands="&env.SHUN_ENABLED_COMMANDS;"
notifyuser="&env.SHUN_NOTIFY_USER;">
<showfile endtext="End of loadavg"
file="/proc/loadavg"
introtext="server loadavg:"
name="LOADAVG">
<silence exemptuline="&env.SILENCE_EXEMPT_ULINE;"
maxentries="&env.SILENCE_MAX_ENTRIES;">
<showwhois opersonly="no"
showfromopers="yes">
<sslinfo operonly="&env.SSL_INFO_OPER_ONLY;">
<shun affectopers="no"
allowconnect="no"
allowtags="no"
cleanedcommands="AWAY PART QUIT"
enabledcommands="ADMIN OPER PING PONG QUIT PART JOIN"
notifyuser="yes">
<silence exemptuline="yes"
maxentries="256">
<sslinfo operonly="no">
<sslmodes enableumode="yes">
<sslmodes enableumode="&env.SSL_ENABLE_UMODE;">
<stdregex type="ecmascript">
<strictsasl reason="Fix your SASL authentication settings and try again">
<svshold silent="false">
<svshold silent="&env.SVS_HOLD_SILENT;">
<timedbans sendnotice="yes">
<timedstaticquit mintime="8m"
quitmsg="client quit within first 8 minutes">
<totp hash="sha256"
window="5">
<timedbans sendnotice="&env.TIMED_BANS_SEND_NOTICE;">
<type classes="SACommands OperChat BanControl HostCloak Shutdown ServerLink"
modes="+s +cCqQ"
@ -1443,24 +1258,24 @@
<uline server="&env.SERVICES_ULINE;"
silent="no">
<waitpong killonbadreply="yes"
sendsnotice="yes">
<waitpong killonbadreply="&env.WAIT_PONG_KILL_ON_BAD_REPLY;"
sendsnotice="&env.WAIT_PONG_SEND_NOTICE;">
<watch maxwatch="256">
<watch maxwatch="&env.WATCH_MAX;">
<whowas groupsize="10"
maxgroups="100000"
maxkeep="32y">
<whowas groupsize="&env.WHOWAS_GROUP_SIZE;"
maxgroups="&env.WHOWAS_MAX_GROUPS;"
maxkeep="&env.WHOWAS_MAX_KEEP;">
<wsorigin allow="&env.WS_ORIGIN_ALLOW;">
<xlinedb filename="/var/lib/inspircd/xline.db"
saveperiod="128s">
<zombie cleansplit="no"
dirtysplit="yes"
maxzombies="100"
serverzombietime="5m">
<zombie cleansplit="&env.ZOMBIE_CLEAN_SPLIT;"
dirtysplit="&env.ZOMBIE_DIRTY_SPLIT;"
maxzombies="&env.ZOMBIE_MAX;"
serverzombietime="&env.ZOMBIE_SERVER_TIME;">
<alias text="HELPOP" replace="HELP $2-">

1
motd.txt Normal file
View File

@ -0,0 +1 @@
-

1
oper.motd.txt Normal file
View File

@ -0,0 +1 @@
-

View File

@ -23,9 +23,9 @@ loadmodule "crypto/rawmd5";
loadmodule "crypto/ircservices";
loadmodule "crypto/crypt3-des";
loadmodule "crypto/base64";
loadmodule "auth/ldap";
#loadmodule "auth/ldap";
loadmodule "nickserv/main";
loadmodule "nickserv/access";
#loadmodule "nickserv/access";
loadmodule "nickserv/badmail";
loadmodule "nickserv/cert";
loadmodule "nickserv/drop";
@ -500,8 +500,8 @@ botserv {
groupserv {
nick = "GROYPSERV";
user = "GROYPSERV";
nick = "GROUPSERV";
user = "GROUPSERV";
host = "services/-";
real = "Group Management Services";