commit 97c5b86eed1c10c86af9da0c8e94298d4ad4cdac Author: root Date: Mon Oct 28 01:37:35 2024 +0300 first diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..e07fd72 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,234 @@ +FROM ubuntu:latest + +ENV ADMIN_EMAIL="no-reply@lame-netwoork.local" + +ENV SID="01A" + +ENV SERVER_NAME="irc.lame-network.local" + +ENV NETWORK_NAME="LameNet" + +ENV STS_HOST="irc.lame-network.local" + +ENV SASL_TARGET="service.lame-network.local" + +ENV ADMIN_PASSWORD="changeme" + +ENV COMMAND_RATE="128000" + +ENV FAKE_LAG="on" + +ENV HARD_SENDQ="1M" + +ENV MAX_CHANS="256" + +ENV PING_FREQ="64" + +ENV RECVQ="8K" + +ENV SOFT_SENDQ="8192" + +ENV COMMAND_RATE_THRESHOLD="128" + +ENV COMMAND_RATE_THRESHOLD_TIMEOUT="16" + +ENV USE_CONN_FLOOD="yes" + +ENV USE_DNSBL="yes" + +ENV USE_IDENT="no" + +ENV GLOBAL_MAX="32" + +ENV LOCAL_MAX="16" + +ENV MAX_CONN_WARN="yes" + +ENV DEFAULT_USER_MODES="+xWz" + +ENV PORT="6667" + +ENV RESOLVE_HOST_NAMES="yes" + +ENV USE_CONNECT_BAN="yes" + +ENV SSL_USER_MODES="+xWz" + +ENV SSL_PORT="6697" + +ENV AUTHENTICATED_USER_MODES="+xwWz" + +ENV SERVER_SSL_PORT="7000" + +ENV OPER_CHANNEL="#oper" + +ENV HTTP_ACL_PASSWORD="changeme" + +ENV HTTP_ACL_USERNAME="lame-network" + +ENV SERVICE_CHANNEL="#services" + +ENV HELP_CHANNEL="#help" + +ENV MAX_AWAY="256" + +ENV MAX_CHAN="31" + +ENV MAX_GECOS="256" + +ENV MAX_HOST="64" + +ENV MAX_IDENT="16" + +ENV MAX_KICK="256" + +ENV MAX_MODES="32" + +ENV MAX_NICK="31" + +ENV MAX_QUIT="256" + +ENV MAX_TOPIC="256" + +ENV ALLOW_MISMATCH="yes" + +ENV ALLOW_ZERO_LIMIT="yes" + +ENV ANNOUNCE_TS="yes" + +ENV CYCLE_HOST_TS="yes" + +ENV CYCLE_HOST_FROM_USER="no" + +ENV HOST_IN_TOPIC="yes" + +ENV INVITE_BYPASS_MODES="yes" + +ENV MODES_IN_LIST="yes" + +ENV NO_SNOTICE_STACK="yes" + +ENV PING_WARNING="8" + +ENV PREFIX_PART=""" + +ENV PREFIX_QUIT="QUIT: "" + +ENV SERVER_PING_FREQ="8" + +ENV SPLIT_WHOIS="no" + +ENV SUFFIX_PART=""" + +ENV SUFFIX_QUIT=""" + +ENV SYNTAX_HINTS="yes" + +ENV XLINE_MESSAGE="DEAUTHORIZED" + +ENV CLONES_ON_CONNECT="yes" + +ENV NET_BUFFER_SIZE="10240" + +ENV QUIET_BURSTS="yes" + +ENV SOFT_LIMIT="102400" + +ENV SO_MAX_CONN="1024" + +ENV TIME_SKIP_WARN="2s" + +ENV ROLE_PLAY_VHOST="rp.lame-network.local" + +ENV CUSTOM_VERSION="LameNetworkIRCd v3.14 (final)" + +ENV FLAT_LINKS="no" + +ENV GENERIC_OPER="yes" + +ENV HIDE_BANS="no" + +ENV HIDE_MODES="no" + +ENV HIDE_SPLITS="yes" + +ENV HIDE_ULINES="no" + +ENV MAX_TARGETS="16" + +ENV RESTRICT_BANNED_USERS="yes" + +ENV USER_STATS="Pu" + +ENV NET_ADMIN_VHOST="oper/admin.lame-network.local" + +ENV GLOBAL_OP_VHOST="oper/op.lame-network.local" + +ENV HOPM_VHOST="oper/hopm.lame-network.local" + +ENV HELPER_VHOST="oper/helper.lame-network.local" + +ENV SERVICES_ULINE="services.lame-network.local" + +ENV WS_ORIGIN_ALLOW="irc.lame-network.local" + +ENV DEFAULT_BLOCK_HOST_MASK="*@*" + +ENV LINK_RECV_PASSWORD="changeme" + +ENV LINK_SEND_PASSWORD="changeme" + +ENV LINK_TIMEOUT=3600 + +RUN apt -y update + +RUN apt -y install 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 + +RUN groupadd inspircd + +RUN useradd --system --shell /bin/bash inspircd -g inspircd + +WORKDIR /tmp + +RUN git clone https://github.com/inspircd/inspircd.git + +WORKDIR /tmp/inspircd + +RUN ./configure --gid inspircd --uid inspircd --development --prefix=/usr/local + +RUN ./modulemanager list | awk '{print $1}' | xargs -i ./modulemanager install {} ; true + +RUN make -j$(nproc) install + +RUN mkdir -p /etc/inspircd /var/lib/inspircd /etc/ssl/inspircd /var/log/inspircd + +ADD inspircd.conf /etc/inspircd + +ADD include.conf /etc/inspircd + +ADD GeoLite2-ASN.mmdb /etc/inspircd + +RUN touch /etc/inspircd/motd.txt + +RUN touch /etc/inspircd/oper.motd.txt + +RUN openssl genrsa -out /etc/ssl/inspircd/server.key + +RUN openssl req -new -key /etc/ssl/inspircd/server.key -out /etc/ssl/inspircd/server.csr \ + -subj "/C=US/ST=Washington/L=Seattle/O=LameNetwork/OU=IT Department/CN=lame-network.local" + +RUN openssl x509 -req -days 365 -in /etc/ssl/inspircd/server.csr -signkey /etc/ssl/inspircd/server.key -out /etc/ssl/inspircd/server.crt + +RUN chown -R inspircd:inspircd /etc/inspircd /etc/ssl/inspircd /var/lib/inspircd /var/log/inspircd + +VOLUME /etc/ssl/inspircd + +VOLUME /var/lib/inspircd + +VOLUME /var/log/inspircd + +USER inspircd + +WORKDIR / + +CMD /usr/local/bin/inspircd -c /etc/inspircd/inspircd.conf -F diff --git a/GeoLite2-ASN.mmdb b/GeoLite2-ASN.mmdb new file mode 100644 index 0000000..5456daf Binary files /dev/null and b/GeoLite2-ASN.mmdb differ diff --git a/include.conf b/include.conf new file mode 100644 index 0000000..5d9af6a --- /dev/null +++ b/include.conf @@ -0,0 +1,30 @@ + + + + + + + + + + + + + diff --git a/inspircd.conf b/inspircd.conf new file mode 100644 index 0000000..20b9498 --- /dev/null +++ b/inspircd.conf @@ -0,0 +1,2117 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +