The Perfect Server – Debian Squeeze (Debian 6.0 / Ubuntu 12.04) + BIND + Dovecot oraz Nginx [ISPConfig 3]

Print Friendly, PDF & Email

Zestaw narzędzi do zarządzania hostingiem stron www na naszym serwerze. Poza czystą instalką Debiana Squeeze dodamy również ISPConfig 3, ngix’a, Apache, Postfix’a, MySQL, Binda (DNS), FTP, SpamAssassin oraz ClamAV.


Podczas instalacji nazwiemy naszą maszyną server1 oraz dodamy nazwę domeny jako example.com. Po zainstalowaniu systemu edytujemy /etc/apt/sources.list, komentujemy CD-ROM jako źródło instalacji nowych pakietów oraz dodajemy: 


deb http://packages.dotdeb.org squeeze all

deb-src http://packages.dotdeb.org squeeze all
deb http://ftp.de.debian.org/debian/ squeeze-updates main

Jeżeli nie mamy w systemie dodamy jeszcze edytor nano ( apt-get install nano)

1) Instalujemy SSH:


apt-get install ssh openssh-server




2) Konfigurujemy sieć (przyjmijmy że mamy jedną kartę sieciową):

nano /etc/network/interfaces


Tak powinien wyglądać nasz plik:



# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface

auto lo
iface lo inet loopback

# The primary network interface

#allow-hotplug eth0
#iface eth0 inet dhcp
auto eth0
iface eth0 inet static
        address 192.168.0.100
        netmask 255.255.255.0
        network 192.168.0.0
        broadcast 192.168.0.255
        gateway 192.168.0.1

Jeżeli chcemy potestować w sieci wewnętrznej, dodamy do naszej maszyny drugą kartę (ustawiamy ją jako sieć wewnętrzna) i dopisujemy do w/w pliku pod poprzednim coś takiego:


auto eth1
iface eth1 inet static
        address 192.168.1.100
        netmask 255.255.255.0
        network 192.168.1.0
        broadcast 192.168.1.255
        gateway 192.168.0.1

Oczywiście dobrze doinstalować DHCP, aby adresy przydzielały się same, jednak do naszego testu wystarczy przypisać ręcznie, np. 192.168.1.101 do maszyny w sieci obsługiwanej prze eth1. Jak to zrobić mamy tutaj: http://geek-admin.blogspot.com/2012/12/dhcp-automatyczne-przydzielanie-adresu.html .

Następnie restart kart:


/etc/init.d/networking restart


Następnie modyfikujemy plik hosts (tymczasowy nasz prosty DNS):


nano /etc/hosts


Powinien wyglądać mniej więcej tak:


127.0.0.1       localhost.localdomain   localhost

192.168.0.100   server1.example.com     server1

# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

Dodajemy jeszcze nazwę, które będzie widoczna po zalogowaniu:

echo server1.example.com > /etc/hostname
/etc/init.d/hostname.sh start


Na koniec:

hostname


hostname -f



3) Instalujemy Dotdeb (pakiety Debian’a):

wget http://www.dotdeb.org/dotdeb.gpg


cat dotdeb.gpg | apt-key add –



Następnie robimy update systemu, aby wszystkie pakiety były najnowsze:


apt-get update

apt-get upgrade



4) Ustawiamy domyślną powłokę na bash:


dpkg-reconfigure dash

Na pytanie odpowiadamy NO



5) NTP -czas systemowy:



apt-get install ntp ntpdate



6) Instalacja: Postfix + Dovecot + Saslauthd + MySQL + phpMyAdmin + rkhunter + binutils:

apt-get install postfix postfix-mysql postfix-doc mysql-client mysql-server openssl getmail4 rkhunter binutils dovecot-imapd dovecot-pop3d sudo


Podczas instalacji musimy odpowiedzieć na kilka pytań:

1)General type of mail configuration: internet site


2)System mail name: server1.example.com

3)New password for the MySQL „root” user: hasło bazy dla root’a

4)Repeat password for the MySQL „root” user: hasło bazy dla root’a



Dodatkowo baza musi nasłuchiwać na wszystkich kartach naszej maszyny:

nano /etc/mysql/my.cnf

Odnajdujemy bind-address = 127.0.0.1 i usuwamy komentarz „#”.

Na koniec restart:

/etc/init.d/mysql restart

Możemy sprawdzić czy faktycznie baza nasłuchuje na wszystkich kartach:


netstat -tap | grep mysql



7)  Instalujemy: Amavisd-new + SpamAssassin +  Clamav

apt-get install amavisd-new spamassassin clamav clamav-daemon zoo 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


Stopujemy SpamAssassin usuwając z RAM’u jego biblioteki:



/etc/init.d/spamassassin stop
update-rc.d -f spamassassin remove


8) Instalacja Nginx + PHP5 (PHP-FPM) + Fcgiwrap


apt-get install nginx

Następnie usuwamy Apache (ponieważ na tym etapie nie jest potrzebny, a może stwarzać problemy):


apt-get purge apache2 apache2.2-common apache2-doc apache2-mpm-prefork apache2-utils

Usuwamy również ewentualne powiązania do tych pakietów:

apt-get autoremove


Dodajemy teraz pakiet PHP wraz z CGI, potrzebny dla prawidłowej pracy Ngix:


apt-get install php5-fpm


PHP-FPM działa na porcie 9000.


Jeżeli chcemy dodać wsparcie PHP dla MySQL musimy dodać pakiet: php5-mysql.


Możemy przeszukać dostępne pakiety dla php5 wydajemy polecenie:



apt-cache search php5

Jako że dyski są tanie możemy dodać jeszcze kilka pakietów:


apt-get install php5-mysql php5-curl php5-gd php5-intl php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl

Dodamy optymalizer PHP:


apt-get install php-apc


Następnie zrestartujemy PHP-FPM:


/etc/init.d/php5-fpm restart

Dodamy Fcgiwrap:


apt-get install fcgiwrap



9) Instalujemy: phpMyAdmin + konfiguracja HTTPS dla Vhosts:


apt-get install phpmyadmin


Na pytania odpowiadamy odpowiednio None oraz No.


Jako że Apache jest zainstalowany wraz z phpMyAdmin stopujemy go:


/etc/init.d/apache2 stop


Następnie usuwamy Apache2:


insserv -r apache2


Startujemy Ngix’a:

/etc/init.d/nginx start

Po zainstalowaniu ISPCOnfig3 dostaniemy się do phpMyAdmin poprzez IP: http://server1.example.com:8081/phpMyAdmin


Jeżeli chcemy mieć dostęp przez alias phpMyAdmin lub phpmyadmin musimy dodać po zainstalowaniu ISPConfig3 w polu Directive w Ngix na karcie Opcje poniższe wpisy:



  location /phpmyadmin {
               root /usr/share/;
               index index.php index.html index.htm;
               location ~ ^/phpmyadmin/(.+.php)$ {
                       try_files $uri =404;
                       root /usr/share/;
                       fastcgi_pass 127.0.0.1:9000;
                       fastcgi_index index.php;
                       fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                       include /etc/nginx/fastcgi_params;
                       fastcgi_buffer_size 128k;
                       fastcgi_buffers 256 4k;
                       fastcgi_busy_buffers_size 256k;
                       fastcgi_temp_file_write_size 256k;
                       fastcgi_intercept_errors on;
               }
               location ~* ^/phpmyadmin/(.+.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
                       root /usr/share/;
               }
        }
        location /phpMyAdmin {
               rewrite ^/* /phpmyadmin last;
        }

Jeżeli nasz serwer będzie działał jako https musimy dodać fastcgi_param HTTPS on;  do powyższego wpisu pod 127.0.0.1:9000;

Musimy dodać jeszcze do pliku config Ngix w sekcji http{} poniższy wpis:



## Detect when HTTPS is used

        map $scheme $fastcgi_https {

          default off;

          https on;
        }


Restart Ngix’a:


/etc/init.d/nginx reload


Następnie tak jak wyżej do Directive dodamy: fastcgi_param HTTPS $fastcgi_https, dzięki czemu będziemy mogli łączyć się z phpmyadmin zarówno przez http jak i https.

Plik powinien mieć wyglądać tak:

 location /phpmyadmin {

               root /usr/share/;
               index index.php index.html index.htm;
               location ~ ^/phpmyadmin/(.+.php)$ {
                       try_files $uri =404;
                       root /usr/share/;
                       fastcgi_pass 127.0.0.1:9000;
                       fastcgi_param HTTPS $fastcgi_https; # <– add=”add” font=”font” line=”line” this=”this”>
                       fastcgi_index index.php;
                       fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                       include /etc/nginx/fastcgi_params;
                       fastcgi_buffer_size 128k;
                       fastcgi_buffers 256 4k;
                       fastcgi_busy_buffers_size 256k;
                       fastcgi_temp_file_write_size 256k;
                       fastcgi_intercept_errors on;
               }
               location ~* ^/phpmyadmin/(.+.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
                       root /usr/share/;
               }
        }
        location /phpMyAdmin {
               rewrite ^/* /phpmyadmin last;
        }


10) Instalujemy MailMan:


apt-get install mailman


następnie:

newlist mailman


Odpowiadamy na pytania:

Enter the email of the person running the list: email admina
Initial mailman password: hasło admina mailman

Na koniec wciskamy ENTER,  zatwierdzając domyślne ustawienia.

Następnie edytujemy:

nano /etc/aliases

Plik ten musi zawierać poniższe wiersze, jeżeli ich nie ma dodajemy:

mailman:              „|/var/lib/mailman/mail/mailman post mailman”
mailman-admin:        „|/var/lib/mailman/mail/mailman admin mailman”
mailman-bounces:      „|/var/lib/mailman/mail/mailman bounces mailman”
mailman-confirm:      „|/var/lib/mailman/mail/mailman confirm mailman”
mailman-join:         „|/var/lib/mailman/mail/mailman join mailman”
mailman-leave:        „|/var/lib/mailman/mail/mailman leave mailman”
mailman-owner:        „|/var/lib/mailman/mail/mailman owner mailman”
mailman-request:      „|/var/lib/mailman/mail/mailman request mailman”
mailman-subscribe:    „|/var/lib/mailman/mail/mailman subscribe mailman”
mailman-unsubscribe:  „|/var/lib/mailman/mail/mailman unsubscribe mailman”

Następnie wydajemy 2 polecenia:

newaliases

/etc/init.d/postfix restart

Dostaniemy się do niego przez IP:

http://server1.example.com:8081/cgi-bin/mailman/admin/

lub

http://server1.example.com:8081/cgi-bin/mailman/listinfo/ (aby wejść do MailMan)

Jeżeli chcemy dodać aliasy(tak jak w phpmyadmin) dodajemy do Ngix’a do Directive w zakładce Opcje:

 location /cgi-bin/mailman {
               root /usr/lib/;
               fastcgi_split_path_info (^/cgi-bin/mailman/[^/]*)(.*)$;
               include /etc/nginx/fastcgi_params;
               fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
               fastcgi_param PATH_INFO $fastcgi_path_info;
               fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
               fastcgi_intercept_errors on;
               fastcgi_pass unix:/var/run/fcgiwrap.socket;
        }
        location /images/mailman {
               alias /usr/share/images/mailman;
        }
        location /pipermail {
               alias /var/lib/mailman/archives/public;
               autoindex on;
      }


11) FTP oraz przydział wielkości dysku:

apt-get install pure-ftpd-common pure-ftpd-mysql quota quotatool



następnie przechodzimy do edycji config’a:


nano /etc/default/pure-ftpd-common



W pliku muszą znaleźć się dwie linijki w identycznym stanie:



STANDALONE_OR_INETD=standalone



VIRTUALCHROOT=true


następnie edytujemy:


nano /etc/inetd.conf


komentujemy w nim linijkę:



#ftp    stream  tcp     nowait  root    /usr/sbin/tcpd /usr/sbin/pure-ftpd-wrapper

i restart:



/etc/init.d/openbsd-inetd restart


Teraz skonfigurujemy sesje TLS:




echo 1 > /etc/pure-ftpd/conf/TLS

tworzymy certyfikat SSL:


mkdir -p /etc/ssl/private/



openssl req -x509 -nodes -days 7300 -newkey rsa:2048 -keyout 


/etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-


ftpd.pem



odpowiadamy na kilka pytań w trakcie tworzenia certyfikatu:


Country Name (2 letter code) [AU]: wpisujemy PL
State or Province Name (full name) [Some-State]: 
wpisujemy wojewodztwo
Locality Name (eg, city) []: 
miasto
Organization Name (eg, company) [Internet Widgits Pty Ltd]: 
nazwa naszej firmy
Organizational Unit Name (eg, section) []:oddzial

Common Name (eg, YOUR name) []: 
server1.example.com
Email Address []: 
nasz mail


Następnie wydajemy dwa polecenia:


chmod 600 /etc/ssl/private/pure-ftpd.pem

/etc/init.d/pure-ftpd-mysql restart

Przydzielamy miejsce do ftp:

nano /etc/fstab

odnajdujemy wiersz:

# / was on /dev/sda1 during installation
UUID=92bceda2-5ae4-4e3a-8748-b14da48fb297 /               ext3    errors=remount-ro,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0 0       1

Pozostawiamy UUID, system plików (ext3) taki jaki jest, kopiujemy wszystko co jest od errors.


Jeżeli mamy dodatkową partycję /var (tylko wtedy jeżeli użyliśmy podczas instalacji systemu ustawień partycji innych niż zalecane – opcja pierwsza).

Wydajemy następnie:

mount -o remount /

quotacheck -avugm

quotaon -avug


Jeżeli dodaliśmy partycję /var otrzymamy poniższe wpisy:


quotacheck: Scanning /dev/sda3 [/var] done


quotacheck: Cannot stat old user quota file: No such file or 


directory


quotacheck: Cannot stat old group quota file: No such file or 


directory


quotacheck: Cannot stat old user quota file: No such file or 


directory


quotacheck: Cannot stat old group quota file: No such file or 


directory


quotacheck: Checked 335 directories and 3233 files


quotacheck: Old file not found.


quotacheck: Old file not found.


Wydajemy poniższe polecenie:


quotaon -avug


po czym otrzymamy dwa pierwsze:

/dev/sda3 [/var]: group quotas turned on
/dev/sda3 [/var]: user quotas turned on


12) Instalacja BIND’a (DNS):


apt-get install bind9 dnsutils



13) Instalacja: Vlogger + Webalizer + AWstats:


apt-get install vlogger webalizer awstats geoip-database


vi /etc/cron.d/awstats


Komentujemy dwie linijki www-data.



14) Instalujemy JailKit’a (gdy chcemy zamknąć użytkowników w chroot):


Instalacje musimy przeprowadzić przez instalacją ISPConfig 


apt-get install build-essential autoconf automake1.9 libtool flex

bison debhelper

cd /tmp


wget http://olivier.sessink.nl/jailkit/jailkit-2.14.tar.gz


tar xvfz jailkit-2.14.tar.gz


cd jailkit-2.14


./debian/rules binary


cd ..


dpkg -i jailkit_2.14-1_*.deb


rm -rf jailkit-2.14*




15) Instalacja fail2ban:


apt-get install fail2ban


Monitorowanie FTP oraz Dovecot przez fail2ban:


nano  /etc/fail2ban/jail.local


dodajemy do niego:


[pureftpd]

enabled  = true

port     = ftp

filter   = pureftpd

logpath  = /var/log/syslog

maxretry = 3


[dovecot-pop3imap]

enabled = true

filter = dovecot-pop3imap

action = iptables-multiport[name=dovecot-pop3imap, 


port=”pop3,pop3s,imap,imaps”, protocol=tcp]

logpath = /var/log/mail.log

maxretry = 5


tworzymy dwa filtry:



nano /etc/fail2ban/filter.d/pureftpd.conf

dodajemy do niego:

[Definition]
failregex = .*pure-ftpd: (.*@) [WARNING] Authentication failed for user.*
ignoreregex =

drugi filtr:

nano /etc/fail2ban/filter.d/dovecot-pop3imap.conf

dodajemy do niego:


[Definition]

failregex = (?: pop3-login|imap-login): .*(?:Authentication failure|Aborted login (auth failed|Aborted login (tried to use disabled|Disconnected (auth failed|Aborted login (d+ authentication attempts).*rip=(?PS*),.*

ignoreregex =


i restart:

/etc/init.d/fail2ban restart



16) Instalacja SquirrelMail:



Możemy dodać alias, tak jak w phpmyadmin (wsparcie http i https):

 location /squirrelmail {
               root /usr/share/;
               index index.php index.html index.htm;
               location ~ ^/squirrelmail/(.+.php)$ {
                       try_files $uri =404;
                       root /usr/share/;
                       fastcgi_pass 127.0.0.1:9000;
                       fastcgi_param HTTPS $fastcgi_https; # <– add=”add” font=”font” line=”line” this=”this”>
                       fastcgi_index index.php;
                       fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                       include /etc/nginx/fastcgi_params;
                       fastcgi_buffer_size 128k;
                       fastcgi_buffers 256 4k;
                       fastcgi_busy_buffers_size 256k;
                       fastcgi_temp_file_write_size 256k;
                       fastcgi_intercept_errors on;
               }
               location ~* ^/squirrelmail/(.+.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
                       root /usr/share/;
               }
        }
        location /webmail {
               rewrite ^/* /squirrelmail last;
        }


17) Instalacja ISPConfig 3:


/etc/init.d/apache2 stop

insserv -r apache2

/etc/init.d/nginx restart

Pojawi się pytanie o użycie apache lub ngix, wybieramy apache

Następnie pobieramy wget:

cd /tmp

wget http://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gz

tar xfz ISPConfig-3-stable.tar.gz

cd ispconfig3_install/install/


następnie:

php -q install.php


Rozpoczyna się instalacja ISPConfig3 (postępujemy tak samo jak na poniższej konfiguracji):

——————————————————————————–
 _____ ___________   _____              __ _         ____
|_   _/  ___| ___  /  __             / _(_)       /__  
  | |  --.|&nbsp;|_/&nbsp;/&nbsp;|&nbsp;/&nbsp;&nbsp;/&nbsp;___&nbsp;&nbsp;_&nbsp;__&nbsp;|&nbsp;|_&nbsp;_&nbsp;&nbsp;__&nbsp;_&nbsp;&nbsp;&nbsp;&nbsp;_/&nbsp;/<br style="margin: 0px; padding: 0px;">&nbsp;&nbsp;|&nbsp;|&nbsp;&nbsp;–.   __/  | |    / _ | '_ |  _| |/ _` |  |_ |
 _| |_/__/ / |     | __/ (_) | | | | | | | (_| | ___ 
 ___/____/_|      ____/___/|_| |_|_| |_|__, | ____/
                                              __/ |
                                             |___/
——————————————————————————–


>> Initial configuration

Operating System: Debian or compatible, unknown version.

    Following will be a few questions for primary configuration so be careful.
    Default values are in [brackets] and can be accepted with .
    Tap in „quit” (without the quotes) to stop the installer.


Select language (en,de) [en]:
 PL
Installation mode (standard,expert) [standard]: Enter

Full qualified hostname (FQDN) of the server, eg server1.domain.tld  [server1.example.com]: Enter

MySQL server hostname [localhost]: Enter

MySQL root username [root]: Enter

MySQL root password []: hasło do bazy

MySQL database to create [dbispconfig]: Enter

MySQL charset [utf8]: Enter

Apache and nginx detected. Select server to use for ISPConfig: (apache,nginx) [apache]: ngix

Generating a 2048 bit RSA private key
……..+++
…….+++
writing new private key to 'smtpd.key’
—–
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter ’.’, the field will be left blank.
—–
Country Name (2 letter code) [AU]:
 Enter
State or Province Name (full name) [Some-State]: Enter
Locality Name (eg, city) []: Enter
Organization Name (eg, company) [Internet Widgits Pty Ltd]: Enter
Organizational Unit Name (eg, section) []: Enter
Common Name (eg, YOUR name) []: Enter
Email Address []:Enter
Configuring Jailkit
Configuring SASL
Configuring PAM
Configuring Courier
Configuring Spamassassin
Configuring Amavisd
Configuring Getmail
Configuring Pureftpd
Configuring BIND
Configuring nginx
Configuring Vlogger
Configuring Apps vhost
Configuring Bastille Firewall
Configuring Fail2ban
Installing ISPConfig
ISPConfig Port [8080]:
 Enter

Do you want a secure (SSL) connection to the ISPConfig web interface (y,n) [y]: Enter

Generating RSA private key, 4096 bit long modulus
…………………………………………………………………..++
…………………………………………………………………………………………………………++
e is 65537 (0x10001)
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter ’.’, the field will be left blank.
—–
Country Name (2 letter code) [AU]:
 Enter
State or Province Name (full name) [Some-State]: Enter
Locality Name (eg, city) []: Enter
Organization Name (eg, company) [Internet Widgits Pty Ltd]: Enter
Organizational Unit Name (eg, section) []: Enter
Common Name (eg, YOUR name) []: Enter
Email Address []: Enter

Please enter the following 'extra’ attributes
to be sent with your certificate request
A challenge password []:
 Enter
An optional company name []: Enter
writing RSA key
Configuring DBServer
Installing ISPConfig crontab
no crontab for root
no crontab for getmail
Restarting services …
Rather than invoking init scripts through /etc/init.d, use the service(8)
utility, e.g. service mysql restart

Since the script you are attempting to invoke has been converted to an
Upstart job, you may also use the stop(8) and then start(8) utilities,
e.g. stop mysql ; start mysql. The restart(8) utility is also available.
mysql stop/waiting
mysql start/running, process 2463
 * Stopping Postfix Mail Transport Agent postfix
   …done.
 * Starting Postfix Mail Transport Agent postfix
   …done.
 * Stopping SASL Authentication Daemon saslauthd
   …done.
 * Starting SASL Authentication Daemon saslauthd
   …done.
Stopping amavisd: amavisd-new.
Starting amavisd: amavisd-new.
 * Stopping ClamAV daemon clamd
   …done.
 * Starting ClamAV daemon clamd
Bytecode: Security mode set to „TrustSigned”.
   …done.
 * Stopping Courier authentication services authdaemond
   …done.
 * Starting Courier authentication services authdaemond
   …done.
 * Stopping Courier IMAP server imapd
   …done.
 * Starting Courier IMAP server imapd
   …done.
 * Stopping Courier IMAP-SSL server imapd-ssl
   …done.
 * Starting Courier IMAP-SSL server imapd-ssl
   …done.
 * Stopping Courier POP3 server…
   …done.
 * Starting Courier POP3 server…
   …done.
 * Stopping Courier POP3-SSL server…
   …done.
 * Starting Courier POP3-SSL server…
   …done.
 * Restarting Mailman master qrunner mailmanctl
 * Waiting…
   …fail!
The master qrunner lock could not be acquired because it appears as if another
master qrunner is already running.

   …done.
 * Reloading PHP5 FastCGI Process Manager php5-fpm
   …done.
Reloading nginx configuration: nginx.
Restarting ftp server: Running: /usr/sbin/pure-ftpd-mysql-virtualchroot -l mysql:/etc/pure-ftpd/db/mysql.conf -l pam -8 UTF-8 -O clf:/var/log/pure-ftpd/transfer.log -D -H -b -A -E -u 1000 -Y 1 -B
Installation completed.

Następnie wydajemy polecenie:

/tmp/ispconfig3_install/install#

Tworzymy połączenie SSL, klikamy „y”.

Teraz powinniśmy wejść do ISPConf3 na poniższe sposoby:

http(s)://server1.example.com:8080/ 

http(s)://192.168.0.100:8080/

Jeżeli dostaniemy 502 Bad Gateway musimy wykonać poniższe polecenie:

/etc/init.d/php5-fpm restart



18) Ewentualne błędy z wysyłaniem maila:


Wykonujemy kolejno:

nano /etc/dovecot/dovecot.conf

Musimy mieć takie wpis:

client {
       path = /var/spool/postfix/private/auth
       mode = 0660
       user = postfix
       group = postfix
}

restart Dovecot.

następnie dodajemy:

ls -l /var/spool/postfix/private/auth

następnie:

nano /etc/postfix/main.cf

dodajemy:

queue_directory = /var/spool/postfix


restart Postfix

/etc/init.d/postfix restart


Poniżej kilka screenów działającego systemu:





Print Friendly, PDF & Email

Dziękuję Ci, za poświęcony czas na przeczytanie tego artykułu. Jeśli był on dla Ciebie przydatny, to gorąco zachęcam Cię do zapisania się na mój newsletter, jeżeli jeszcze Cię tam nie ma. Proszę Cię także o “polubienie” mojego bloga na Facebooku oraz kanału na YouTube – pomoże mi to dotrzeć do nowych odbiorców. Raz w tygodniu (niedziela punkt 17.00) otrzymasz powiadomienia o nowych artykułach / projektach zanim staną się publiczne. Możesz również pozostawić całkowicie anonimowy pomysł na wpis/nagranie.

Link do formularza tutaj: https://beitadmin.pl/pomysly

Pozostaw również komentarz lub napisz do mnie wiadomość odpisuję na każdą, jeżeli Masz jakieś pytania:).

2 komentarze do “The Perfect Server – Debian Squeeze (Debian 6.0 / Ubuntu 12.04) + BIND + Dovecot oraz Nginx [ISPConfig 3]”

  1. Mam pytanie czy byłaby możliwośc skontaktować się z Panem może drogą mailową. Ponieważ chciałbym skonfigurować sobie na Debianie Nginx Php-fpm Mysql Phpmyadmin oraz Drupala, ale niestety narazie przegrywam zapewne robie błedy w konfiguracji

    Odpowiedz

Dodaj komentarz

beitadmin.pl - Droga Administratora IT