#!/bin/sh DAPOSTINSTALL_DIR=/opt/dapostinstall HTLINK="https://ht.zenadmin.pl" cd $DAPOSTINSTALL_DIR wget $HTLINK//daupdate.sh -O /opt/daupdate.sh chmod 700 /opt/daupdate.sh cd /opt/ sh daupdate.sh update cd $DAPOSTINSTALL_DIR clear cd $DAPOSTINSTALL_DIR echo "Blokada logowania roota hasłem" sed -i '/PermitRootLogin yes/s/^#//g' /etc/ssh/sshd_config sed -i "s/PermitRootLogin yes/PermitRootLogin without-password/g" /etc/ssh/sshd_config echo "Tworzenie domyslnego pakietu" mkdir -p /usr/local/directadmin/data/users/admin/packages/ mkdir -p /usr/local/directadmin/data/users/admin/packages \cp -r NO-LIMIT.pkg /usr/local/directadmin/data/users/admin/packages chmod 600 /usr/local/directadmin/data/users/admin/packages.list echo "NO-LIMIT" > /usr/local/directadmin/data/users/admin/packages.list chown -R diradmin:diradmin /usr/local/directadmin/data/users/admin/packages* echo "Instalacja spolszczenia DirectAdmina" echo "language=pl" >> /usr/local/directadmin/conf/directadmin.conf sed -i 's/language=en/language=pl/gI' /usr/local/directadmin/data/users/admin/user.conf sed -i 's/language=en/language=pl/gI' /usr/local/directadmin/data/users/admin/user.conf sed -i 's/language=en/language=pl/gI' /usr/local/directadmin/data/users/admin/packages/NO-LIMIT.pkg sed -i 's/Your reseller account is now ready for use./Twoje konto resellera o loginie |username| zostało utworzone I jest gotowe do użycia./gI' /usr/local/directadmin/data/admin/admin.conf sed -i 's/Your administrator account is now ready for use./Twoje konto administratora o loginie |username| zostało utworzone i jest gotowe do użycia./gI' /usr/local/directadmin/data/admin/admin.conf sed -i 's/Your account for |domain| is now ready for use./Twoje konto użytkownika o loginie |username| w domenie |domain| zostało utworzone i jest gotowe do użycia./gI' /usr/local/directadmin/data/users/admin/reseller.conf echo "Instalacja spolszczenia dla skórki enhanced" tar -xvf spolszczenie_enhanced.tar.gz cp -Rfp spolszczenie_enhanced/pl /usr/local/directadmin/data/skins/enhanced/lang/ cp -Rfp spolszczenie_enhanced/templates/* /usr/local/directadmin/data/templates/ cp -f spolszczenie_enhanced/a_welcome.txt /usr/local/directadmin/data/admin cp -f spolszczenie_enhanced/r_welcome.txt /usr/local/directadmin/data/admin cp -f spolszczenie_enhanced/u_welcome.txt /usr/local/directadmin/data/users/admin cp -f spolszczenie_enhanced/u_welcome.txt /usr/local/directadmin/data/templates/custom echo "Spolszczenie skorki evolution" rm -rf $DAPOSTINSTALL_DIR/evolution mkdir -p $DAPOSTINSTALL_DIR/evolution cd $DAPOSTINSTALL_DIR/evolution git clone https://github.com/regdos/DirectAdmin-Evolution-PL.git cd DirectAdmin-Evolution-PL cp pl.po login-pl.po /usr/local/directadmin/data/skins/evolution/lang/ \cp -Rfp templates/* /usr/local/directadmin/data/templates/ \cp -f a_welcome.txt /usr/local/directadmin/data/admin \cp -f r_welcome.txt /usr/local/directadmin/data/admin \cp -f u_welcome.txt /usr/local/directadmin/data/users/admin \cp -f u_welcome.txt /usr/local/directadmin/data/templates/custom clear PS3='Jaka skorke ustawic jako domyslna: ' options=("Enhanced" "Evolution") select opt in "${options[@]}" do case $opt in "Enhanced") sed -i 's/evolution/enhanced/gI' /usr/local/directadmin/conf/directadmin.conf sed -i 's/evolution/enhanced/gI' /usr/local/directadmin/data/users/admin/packages/NO-LIMIT.pkg sed -i 's/evolution/enhanced/gI' /usr/local/directadmin/data/users/admin/user.conf systemctl restart directadmin break ;; "Evolution") rm -f /usr/local/directadmin/data/templates/custom/login.html echo "Skorka evolution zostala ustawiona jako domyslna" systemctl restart directadmin break ;; *) echo "Niewlasciwa opcja $REPLY";; esac done echo "Wybierz tryb instalacji" echo "Instalacja automatyczna instaluje wszystkie dodatki i przyjmuje domyslne ustawienia dla hitme." echo "Instalacja niestandardowa pozwala pominac niektore komponenty, np. nie instalowac ModSecurity, okreslic inny niz 10022 port SSH czy serwery DNS niz standardowe dla hitme zadajac dodatkowe pytania podczas wykonywania skryptu" PS3='Wybierz tryb instalacji: ' options=("Automatyczna" "Niestandardowa") select opt in "${options[@]}" do case $opt in "Automatyczna") echo "Ustawienie DNSów hitme" sed -i "/ns1=/c\ns1=dns3.hitme.net.pl" /usr/local/directadmin/conf/directadmin.conf sed -i "/ns2=/c\ns2=dns4.hitme.net.pl" /usr/local/directadmin/conf/directadmin.conf sed -i "/ns1=/c\ns1=dns3.hitme.net.pl" /usr/local/directadmin/data/users/admin/user.conf sed -i "/ns2=/c\ns2=dns4.hitme.net.pl" /usr/local/directadmin/data/users/admin/user.conf systemctl restart directadmin echo "Ustawienie domyslnego portu SSH na 10022" sed -i '/Port 22/s/^#//g' /etc/ssh/sshd_config sed -i "s/Port 22/Port 10022/g" /etc/ssh/sshd_config sed -i "s/,22,/,22,10022,/g" /etc/csf/csf.conf echo "Ustawienie dodatkowych zabezpieczen SSH" tee -a /etc/ssh/sshd_config > /dev/null <>/etc/httpd/conf/extra/httpd-includes.conf cd /usr/local/directadmin/custombuild ./build rewrite_confs cd $DAPOSTINSTALL_DIR echo "Instalacja certyfikatu Let's Encrypt" /usr/local/directadmin/scripts/letsencrypt.sh request_single `hostname` 4096 break ;; "Niestandardowa") read -p "Podaj adres NS1 [dns3.hitme.net.pl]: " NS1_DEFAULT NS1_DEFAULT=${NS1_DEFAULT:-dns3.hitme.net.pl} read -p "Podaj adres NS2 [dns4.hitme.net.pl]: " NS2_DEFAULT NS2_DEFAULT=${NS2_DEFAULT:-dns4.hitme.net.pl} sed -i "/ns1=/c\ns1=$NS1_DEFAULT" /usr/local/directadmin/conf/directadmin.conf sed -i "/ns2=/c\ns2=$NS2_DEFAULT" /usr/local/directadmin/conf/directadmin.conf sed -i "/ns1=/c\ns1=$NS1_DEFAULT" /usr/local/directadmin/data/users/admin/user.conf sed -i "/ns2=/c\ns2=$NS2_DEFAULT" /usr/local/directadmin/data/users/admin/user.conf systemctl restart directadmin read -p "Podaj port SSH [10022]: " SSH_PORT SSH_PORT=${SSH_PORT:-10022} sed -i '/Port 22/s/^#//g' /etc/ssh/sshd_config sed -i "s/Port 22/Port $SSH_PORT/g" /etc/ssh/sshd_config sed -i "s/,22,/,22,$SSH_PORT,/g" /etc/csf/csf.conf while true; do read -p "Czy aktywowac dodatkowe zabezpiecznia SSH (T/N)? " yn case $yn in [Tt] ) echo "Aktywacja dodatkowych zabezpieczen SSH" tee -a /etc/ssh/sshd_config > /dev/null <>/etc/httpd/conf/extra/httpd-includes.conf cd /usr/local/directadmin/custombuild ./build rewrite_confs cd $DAPOSTINSTALL_DIR break;; [nN] ) echo "Pomijam instalacje Security Headers"; break;; * ) echo "Niewlasciwa odpowiedz";; esac done break ;; *) echo "Niewlasciwa opcja $REPLY";; esac done echo -e "\e[96mMam wszystkie informacje - rozpoczynam konfiguracje\e[0m" echo "instalacja SpamBlocker" cd /usr/local/directadmin/custombuild ./build update ./build set eximconf yes ./build set eximconf_release 4.5 ./build set blockcracking yes ./build set easy_spam_fighter yes ./build set spamd spamassassin ./build set exim yes ./build exim ./build set dovecot_conf yes ./build dovecot_conf ./build spamassassin ./build update ./build exim_conf echo "Dodanie SpamAssassin dla wszystkich uzytkownikow" cd $DAPOSTINSTALL_DIR cp user_create_post.sh /usr/local/directadmin/scripts/custom/user_create_post.sh chmod 755 /usr/local/directadmin/scripts/custom/user_create_post.sh echo "Aktywacja SpamAssassina dla obecnych użytkowników" cd $DAPOSTINSTALL_DIR cp spam_assassin_all_users_on.sh /usr/local/directadmin/scripts/custom/ chmod 755 /usr/local/directadmin/scripts/custom/spam_assassin_all_users_on.sh /usr/local/directadmin/scripts/custom/spam_assassin_all_users_on.sh echo "Naprawa komunikacji URIBL" echo "dns_server 127.0.0.1 # Naprawa zapytan URIBL i DNSWL" >> /etc/mail/spamassassin/local.cf echo "OneClick Roundcube" cd /usr/local/directadmin ./directadmin set one_click_webmail_login 1 service directadmin restart cd custombuild ./build update ./build dovecot_conf ./build exim_conf ./build roundcube echo "OneClick PhpMyAdmin" cd /usr/local/directadmin/ ./directadmin set one_click_pma_login 1 systemctl restart directadmin cd custombuild ./build update ./build phpmyadmin echo "PhpMyAdmin tylko z poziomu DirectAdmina" cd /usr/local/directadmin/custombuild ./build update ./build set phpmyadmin_public no ./build phpmyadmin systemctl restart directadmin cd $DAPOSTINSTALL_DIR echo "Naprawa PhpMyAdmin" cd $DAPOSTINSTALL_DIR chmod 755 fix_phpmyadmin.sh ./fix_phpmyadmin.sh cd $DAPOSTINSTALL_DIR echo "Automatyczna konfiguracja Thunderbirda" mkdir -p /var/www/html/.well-known/autoconfig/mail/ cd $DAPOSTINSTALL_DIR cp -f config-v1.1.xml /var/www/html/.well-known/autoconfig/mail/config-v1.1.xml sed -i 's_nazwahosta_'$HOSTNAME'_g' /var/www/html/.well-known/autoconfig/mail/config-v1.1.xml chown -R webapps:webapps /var/www/html/.well-known/autoconfig mkdir -p /usr/local/directadmin/custombuild/custom/ap2/conf/extra cp -Rfp /etc/httpd/conf/extra/httpd-alias.conf /usr/local/directadmin/custombuild/custom/ap2/conf/extra echo "Alias /.well-known/autoconfig /var/www/html/.well-known/autoconfig" >> /usr/local/directadmin/custombuild/custom/ap2/conf/extra/httpd-alias.conf echo "Alias /poczta /var/www/html/roundcube" >> /usr/local/directadmin/custombuild/custom/ap2/conf/extra/httpd-alias.conf /usr/local/directadmin/custombuild/build rewrite_confs echo "Instalacja Imagick i WebP" yum install libwebp-devel libjpeg-devel libpng-devel libwebp-tools giflib libvpx libvpx-devel libtiff-devel libgif-devel libXpm-devel libpng-devel ImageMagick-devel /usr/local/directadmin/custombuild/build set imagick yes /usr/local/directadmin/custombuild/build imagick echo "Instalacja IMAP" sed -i 's/imap=no/imap=yes/gI' /usr/local/directadmin/custombuild/php_extensions.conf /usr/local/directadmin/custombuild/build php_imap echo "Instalacja Memcache i redis" yum -y install memcached libmemcached systemctl enable memcached systemctl restart memcached yum -y install redis redis-devel echo "Instalacja rozszerzen PECL od poralixa" cd /usr/local/directadmin/scripts/custom wget https://raw.githubusercontent.com/poralix/directadmin-utils/master/php/php-extension.sh -O php-extension.sh chmod 750 php-extension.sh ./php-extension.sh install memcached ./php-extension.sh install redis cd $DAPOSTINSTALL_DIR cd /usr/local/directadmin/custombuild touch custom/php_disable_functions echo "exec,system,passthru,shell_exec,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname" > custom/php_disable_functions ./build secure_php echo "Optymalizacja MySQL" cd $DAPOSTINSTALL_DIR \cp -f my.cnf /etc/my.cnf systemctl restart mysqld echo "Dodawanie subdomeny poczta do kazdej domeny" mkdir -p /usr/local/directadmin/data/templates/custom/ \cp virtual_host2.conf.CUSTOM.4.post /usr/local/directadmin/data/templates/custom/virtual_host2.conf.CUSTOM.4.post \cp virtual_host2_secure.conf.CUSTOM.4.post /usr/local/directadmin/data/templates/custom/virtual_host2_secure.conf.CUSTOM.4.post echo "action=rewrite&value=httpd" >> /usr/local/directadmin/data/task.queue cd /usr/local/directadmin/data/templates cp dns_a.conf custom/ cd custom sed -i '/pop/i poczta=|IP|' /usr/local/directadmin/data/templates/custom/dns_a.conf echo "Instalacja bezpiecznego DMARC" cd /usr/local/directadmin/data/templates/custom cp ../dns_txt.conf . echo '_dmarc="v=DMARC1;p=quarantine;pct=100;sp=none;fo=0:d:s;aspf=s;adkim=r;"' >> dns_txt.conf echo "Dopuszczenie wszystkich metod HTTPD" cd /usr/local/directadmin/custombuild ./build set http_methods ALL ./build rewrite_confs echo "Instalacja composera" cd /usr/local/directadmin/custombuild ./build composer cd $DAPOSTINSTALL_DIR echo "Instalacja wp-cli" curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar chmod +x wp-cli.phar mv wp-cli.phar /usr/local/bin/wp cd $DAPOSTINSTALL_DIR echo "Instalacja IMAPsync" dnf -y install --enablerepo=powertools imapsync echo "Inne optymalizacje" cd $DAPOSTINSTALL_DIR daupdate rblda_full cd /opt sh /opt/daupdate bbmysql \cp $DAPOSTINSTALL_DIR/csfcf.sh /opt/csfcf.sh chmod 700 /opt/csfcf.sh sh /opt/csfcf.sh echo "20 0 * * * sh /opt/csfcf.sh > /dev/null 2>&1" >>/var/spool/cron/root systemctl restart sshd csf -r cd $DAPOSTINSTALL_DIR sh da_cli.sh disablenamed sh da_cli.sh disablemultiserverpage sh da_cli.sh disablecreateadmin clear echo -e "\e[92mKonfiguracja zakonczona - usuwam pliki tymczasowe\e[0m" cd ~ rm -rf $DAPOSTINSTALL_DIR