Installatie blog: Difference between revisions

From Hobbynet Admin Wiki
Jump to navigation Jump to search
Line 35: Line 35:


===Apache===
===Apache===
installeer apache2 en wat modules. Sommige zijn niet nodig maar doen geen kwaad.
installeer apache2 en wat modules. Sommige zijn niet nodig maar doen geen kwaad. (overgenomen uit Perfect Server).
<pre>
<pre>
apt-get -y install apache2 apache2-doc apache2-utils libapache2-mod-php php7.2 php7.2-common php7.2-gd php7.2-mysql php7.2-imap phpmyadmin php7.2-cli php7.2-cgi libapache2-mod-fcgid apache2-suexec-pristine php-pear mcrypt  imagemagick libruby libapache2-mod-python php7.2-curl php7.2-intl php7.2-pspell php7.2-recode php7.2-sqlite3 php7.2-tidy php7.2-xmlrpc php7.2-xsl memcached php-memcache php-imagick php-gettext php7.2-zip php7.2-mbstring php-soap php7.2-soap
apt-get -y install apache2 apache2-doc apache2-utils libapache2-mod-php php7.2 php7.2-common php7.2-gd php7.2-mysql php7.2-imap phpmyadmin php7.2-cli php7.2-cgi libapache2-mod-fcgid apache2-suexec-pristine php-pear mcrypt  imagemagick libruby libapache2-mod-python php7.2-curl php7.2-intl php7.2-pspell php7.2-recode php7.2-sqlite3 php7.2-tidy php7.2-xmlrpc php7.2-xsl memcached php-memcache php-imagick php-gettext php7.2-zip php7.2-mbstring php-soap php7.2-soap
Line 51: Line 51:
</pre>
</pre>
Vervolgens de /etc/apache2/... overgenomen van mail-lb1
Vervolgens de /etc/apache2/... overgenomen van mail-lb1
===AppArmor===
===AppArmor===
Deels overgenomen uit [https://www.howtoforge.com/tutorial/perfect-server-ubuntu-18.04-with-apache-php-myqsl-pureftpd-bind-postfix-doveot-and-ispconfig/ Perfect Server beschijving].  
Deels overgenomen uit [https://www.howtoforge.com/tutorial/perfect-server-ubuntu-18.04-with-apache-php-myqsl-pureftpd-bind-postfix-doveot-and-ispconfig/ Perfect Server beschijving].  

Revision as of 21:50, 17 July 2018

Installatie mailserver

Uitgaande van een situatie van herbouw waarbij de Postfix(admin), Dovecot config van 16.04 nog beschikbaar is.

apt-get install aptitude
apt-get install postfix postfix-mysql postfix-pcre postfix-doc
apt-get install dovecot-core dovecot-imapd dovecot-lmtpd dovecot-mysql dovecot-pop3d dovecot-sieve
apt-get install opendkim opendkim-tools

Haal de werkende config op van de al werkende mailserver (mail-lb1 18.04) of van de locatie met de gebackupte bestanden van de oude mailserver.

cd /etc/postfix
scp -pr * mail-lb2-int.hobby.nl:/etc/postfix
cd /etc/postfixadmin
scp -pr * mail-lb2-int.hobby.nl:/etc/postfixadmin
cd /etc/dovecot
scp -pr * mail-lb2-int.hobby.nl:/etc/dovecot
cd /etc/opendkim
scp -pr * mail-lb2-int.hobby.nl:/etc/opendkim
scp -pr ../opendkim.conf mail-lb2-int.hobby.nl:/etc/opendkim.conf

Ownership

Alle virtuele mailboxen hebben allemaal de zelfde eigenaar: vmail:vmail. Maak de user vmail aan door onderstaande in /etc/passwd, /etc/group en /etc/shadow te plaatsen.

/etc/passwd: vmail:x:5000:5000::/home/vmail/:/bin/sh
/etc/group : vmail:x:5000:
/etc/shadow: vmail:!:14466:0:99999:7:::

Filters

Installeer amavis-new, spamassassin, clamav

apt-get -y install amavisd-new spamassassin clamav clamav-daemon unzip bzip2 arj nomarch lzop cabextract apt-listchanges libnet-ldap-perl libauthen-sasl-perl clamav-docs daemon libio-string-perl libio-socket-ssl-perl libnet-ident-perl zip libnet-dns-perl postgrey

Dovecot

Dovecot config is verdeeld over meerdere bestanden. Ze bevinden zich in /etc/dovecot/conf.d. Dovecot heeft hooks voor postlogin scripts. Vanouds loggen wij de laatste login in een directory sruktuur op /disk/mail/login. De postlogin scripts voor imap en pop3 zijn echter verloren gegaan. Er zijn nieuwe scripts gemaakt die nu in /etc/dovecot staan onder de naam <protocol>-wrapper.sh in 10-master.conf. De laatste login wordt nu in de "home directory" gezet. Dus in /disk/mail/vmail/vandenbussche.nl/egbert/. De timestamp van de (lege) file ".last_login" is het tijdstip van login.

Apache

installeer apache2 en wat modules. Sommige zijn niet nodig maar doen geen kwaad. (overgenomen uit Perfect Server).

apt-get -y install apache2 apache2-doc apache2-utils libapache2-mod-php php7.2 php7.2-common php7.2-gd php7.2-mysql php7.2-imap phpmyadmin php7.2-cli php7.2-cgi libapache2-mod-fcgid apache2-suexec-pristine php-pear mcrypt  imagemagick libruby libapache2-mod-python php7.2-curl php7.2-intl php7.2-pspell php7.2-recode php7.2-sqlite3 php7.2-tidy php7.2-xmlrpc php7.2-xsl memcached php-memcache php-imagick php-gettext php7.2-zip php7.2-mbstring php-soap php7.2-soap
a2enmod suexec rewrite ssl actions include cgi

Create file to mitgate HTTPOXY (ook op mail-lb1)

 
vi /etc/apache2/conf-available/httpoxy.conf

<IfModule mod_headers.c>
    RequestHeader unset Proxy early
</IfModule>

a2enconf httpoxy

Vervolgens de /etc/apache2/... overgenomen van mail-lb1

AppArmor

Deels overgenomen uit Perfect Server beschijving.

Apparmor verwijderd

service apparmor stop
update-rc.d -f apparmor remove
apt-get remove apparmor apparmor-utils

kies de juiste shell

dpkg-reconfigure dash <- NO

Patch voor amavis-new

Er zit een bug in amavis-new waardoor DKIM niet goed werkt. Mogelijk is de patch al toegepast.

cd /tmp
wget https://git.ispconfig.org/ispconfig/ispconfig3/raw/stable-3.1/helper_scripts/ubuntu-amavisd-new-2.11.patch
cd /usr/sbin
cp -pf amavisd-new amavisd-new_bak
patch < /tmp/ubuntu-amavisd-new-2.11.patch
systemctl restart postfix
systemctl restart dovecot

freshclam

service clamav-daemon start

postfixadmin

Postfixadmin is beschikbaar via de repo maar gaf een foutmelding. Dan maar via tarball. Postfixadmin 3.2.0 opgehaald en uitgepakt. Al snel bleek dat de Hobbynet patch voor {CRYPT} wachtwoorden niet zonder meer in te bouwen is. De code is drastisch veranderd sinds 3.0.2. Daarom 3.0.2 gebruikt. Het is mogelijk dat {CRYPT} in 3.2.0 zit. Upgrade naar 3.2.0 komt op de TODO list.