ISP Config – czyli jak zainstalować darmowy cpanel

7

W dzisiejszym poradniku pokaże wam jak zainstalować ISP Config na Debianie oraz Ubuntu. ISP Config jest darmowym oprogramowanie które może nam posłużyć do zarządzania serwerem, może być ono alternatywą płatnych panelu typu cpanel czy direct admin.

Instalacja Systemu Debian

Instalacje systemu przedstawiłem we wcześniejszym poradniku, więc proszę się stosować do tego poradnika, z tym że instalujemy wszystkie role prócz laptopa i środowiska graficznego gdyż to tylko zajmuje miejsce na dysku.

Konfiguracja systemu

Pierwszym co zainstalujemy będzie ssh, co pozwoli się nam w późniejszych etapach łączyć się zdalnie z naszym serwerem. Aby to zainstalować w terminalu jako użytkownik root (su) wpisujemy:

apt-get install ssh openssh-server

Konfiguracja sieci

Następnym krokiem w naszej instalacji będzie skonfigurowanie sieci, skonfigurujemy ją tak aby nasz system używał zawsze jednego i tego samego IP. W moim przypadku IP to 192.168.1.100, w swoim przypadku użyj (jeśli posiadasz) zewnętrznego IP które pozwoli odnaleźć twój serwer w sieci. Aby edytować ustawienia wpisujemy komendę:

nano /etc/network/interfaces

Nano jest edytorem tekstu, jest on bardzo prosty w obsłudze. Jesli nasz system nie posiada tego edytora nalezy go zainstalowac nastepujacym poleceniem:

apt-get update

apt-get upgrade

apt-get install nano

Jeśli już otworzyliśmy nasz plik to edytujemy go:

# 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.1.100
        netmask 255.255.255.0
        network 192.168.1.0
        broadcast 192.168.0.255
        gateway 192.168.1.1

Plik zapisujemy wciskając klawisza CRL+O po czym zamykamy plik klikając CRL + X, jeśli wszystko wpisaliśmy poprawnie resetujemy naszą karte sieciową wpisując w terminalu komendę:

/etc/init.d/networking restart

Po czym edytujemy kolejny plik, tym razem host

nano /etc/hosts

Powinien on wyglądać tak:

127.0.0.1       localhost.localdomain   localhost
192.168.1.100   server1.example.com     server1
# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts

Przy czym IP 192.168.1.100 jest twoim IP które wpisałeś podczas konfiguracji sieci, następnie wpisujemy:

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

Przy czym server1.example.com musi zostać zastąpiony domeną podaną w pliku host który edytowaliśmy wcześniej. Kolejną czynnością jest sprawdzenie czy host i hostname mają poprawne domeny, w rezultacie powinieneś otrzymać dwu krotnie tą samą odpowiedz ze strony serwera którą jest twoja domena.

Wpisujemy:

hostname

hostname -f

Aktualizacja Instalacji Debiana

Kolejnym etapem naszej konfiguracji będzie zaktualizowanie naszej instalacji Debiana oraz zainstalowanie antywirusa clamav.

Wpisujemy:

nano /etc/apt/sources.list

Po czym do pliku sources.list dopisujemy:

deb http://volatile.debian.org/debian-volatile lenny/volatile main contrib non-free

Po czym uruchamiamy aktualizacje wpisując kolejno:

apt-get update

apt-get ugrade

Synchronizowanie zegara

Kolejną czynnością będzie zsynchronizowanie zegarka z NTP (network time protocol).

Wpisujemy:

apt-get install ntp ntpdate

Od tej pory twój zegarek systemowy będzie zawsze aktualny.

Instalacja Postfix, Courier, Saslauthd, MySQL, phpMyAdmin, rkhunter, binutils

W tym etapie instalujemy między innymi, bazę danych MySQL, phpmyadmin itp.

Wpisujemy:

apt-get install postfix postfix-mysql postfix-doc mysql-client mysql-server courier-authdaemon courier-authlib-mysql courier-pop courier-pop-ssl courier-imap courier-imap-ssl libsasl2-2 libsasl2-modules libsasl2-modules-sql sasl2-bin libpam-mysql openssl courier-maildrop getmail4 rkhunter binutils

Podczas instalacji zostaniemy zapytani o kilka drobiazgów typu:

New password for the MySQL “root” user: // hasło dla użytkownika root

Repeat password for the MySQL “root” user: // Hasło dla  bazy danych MySQL

Create directories for web-based administration? // No

General type of mail configuration: // Internet Site

System mail name: // server1.example.com – zastąp swoją domeną

SSL certificate required // Ok

Kolejnym krokiem będzie edytowanie ustawień bazy danych tak aby nie była ona dostępna tylko z localhost

W tym celu wpisujemy polecenie:

nano /etc/mysql/my.cnf

Po czym odnajdujemy linie:

bind-address           = 127.0.0.1

I przed bind.. wstawiamy kratkę (#). Powinno to wyglądać tak:

[...]
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
#bind-address           = 127.0.0.1
[...]

Następnie resetujemy MySQL, wpisując polecenie:

/etc/init.d/mysql restart

Teraz sprawdzamy czy nasza sieć jest włączona:

netstat -tap | grep mysql

Odpowiedz powinna wyglądać jak ta:

server1:~# netstat -tap | grep mysql tcp        0      0 *:mysql                 *:*                     LISTEN      6612/mysqld server1:~#

Idąc dalej instalujemy certyfikaty SSL dla IMAP-SSL i POP3-SSL.

Wpisujemy:

cd /etc/courier

rm -f /etc/courier/imapd.pem

rm -f /etc/courier/pop3d.pem

po czym modyfikujemy te dwa pliki, zamieniając localhost na naszą domenę:

nano /etc/courier/imapd.cnf

Powinno to wyglądać jak poniżej:

[...]
CN=server1.example.com
[...]

edytujemy drugi plik:

nano /etc/courier/pop3d.cnf

Powinno to wyglądać jak poniżej:

[...]
CN=server1.example.com
[...]

Zapisujemy plik i przechodzimy do dalszej konfiguracji systemu. Kolejnym krokiem jest ponowne stworzenie certyfikatów, tworzymy je wpisując:

mkimapdcert

mkpop3dcert

Na koniec resetujemy Courier-IMAP-SSL i Courier-POP3-SSL;

/etc/init.d/courier-imap-ssl restart

/etc/init.d/courier-pop-ssl restart

Instalacja Amavisd-new, SpamAssassin oraz Clamav

Kolejnym krokiem w konfiguracji jest zainstalowanie filtrów anty-spamowych oraz antywirusa, aby to zrobić wpisujemy:

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

Instalacja Apache2, PHP5, phpMyAdmin, FCGI, suExec, Pear, oraz mcrypt

Następnym krokiem będzie zainstalowanie apache oraz kilku innych drobiazgów do obsługi stron www, instalujemy je wpisując:

apt-get install apache2 apache2.2-common apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert libapache2-mod-php5 php5 php5-common php5-gd php5-mysql php5-imap phpmyadmin php5-cli php5-cgi libapache2-mod-fcgid apache2-suexec php-pear php-auth php5-mcrypt mcrypt php5-imagick imagemagick libapache2-mod-suphp

Podczas instalacji zostaniemy zapytani co ma zostać ponownie skonfigurowane, tutaj wybieramy apache2 i przechodzimy dalej.

Web server to reconfigure automatically: // apache2

Następnie wpisujemy następującą komendę:

a2enmod suexec rewrite ssl actions include

Uruchomi ona moduły apache.

Instalujemy PureFTPd oraz Quota

Instalujemy je następującą komendą:

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

Po czym edytujemy plik pure-ftpd-common:

nano /etc/default/pure-ftpd-common

po czym zmieniamy inetd na standaloneVIRTUALCHROOT=true:

[...]
STANDALONE_OR_INETD=standalone
[...]
VIRTUALCHROOT=true
[...]

Kolejnym plikiem który będziemy edytowali jest inetd.conf:

nano /etc/inetd.conf

Do lini rozpoczynającej się z ftp stream tcp

[...]
#:STANDARD: These are standard services.
#ftp    stream  tcp     nowait  root    /usr/sbin/tcpd /usr/sbin/pure-ftpd-wrapper
[...]

Resetujemy inetd:

/etc/init.d/openbsd-inetd restart

Po czym uruchamiamy PureFTPd:

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

Edytujemy /etc/fstab

nano /etc/fstab

Powinno wyglądać jak poniżej:

# /etc/fstab: static file system information.
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
proc            /proc           proc    defaults        0       0
/dev/sda1       /               ext3    errors=remount-ro,usrquota,grpquota 0       1
/dev/sda5       none            swap    sw              0       0
/dev/hda        /media/cdrom0   udf,iso9660 user,noauto     0       0
/dev/fd0        /media/floppy0  auto    rw,user,noauto  0       0

Po czym wpisujemy:

touch /quota.user /quota.group chmod 600 /quota.* mount -o remount /

quotacheck -avugm quotaon -avug

Instalacja MyDNS

Przed instalacja MyDNS musimy zainstalować kilka niezbędnych dodatków:

apt-get install g++ libc6 gcc gawk make texinfo libmysqlclient15-dev

MyDNS nie jest dostępny w pakietach Debian Lenny lecz można go pobrać z zewnątrz w tym celu wpisujemy:

cd /tmp

wget http://heanet.dl.sourceforge.net/sourceforge/mydns-ng/mydns-1.2.8.25.tar.gz

tar xvfz mydns-1.2.8.25.tar.gz

cd mydns-1.2.8.25

./configure

make

make install

Następnie tworzymy pliki typu start/stop

nano /etc/init.d/mydns

i wklejamy to co poniżej:

#! /bin/sh
#
# mydns         Start the MyDNS server
#
# Author:       Philipp Kern <phil@philkern.de>.
#               Based upon skeleton 1.9.4 by Miquel van Smoorenburg
#               <miquels@cistron.nl> and Ian Murdock <imurdock@gnu.ai.mit.edu>.
#
set -e
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/local/sbin/mydns
NAME=mydns
DESC="DNS server"
SCRIPTNAME=/etc/init.d/$NAME
# Gracefully exit if the package has been removed.
test -x $DAEMON || exit 0
case "$1" in
  start)
        echo -n "Starting $DESC: $NAME"
        start-stop-daemon --start --quiet \
                --exec $DAEMON -- -b
        echo "."
        ;;
  stop)
        echo -n "Stopping $DESC: $NAME"
        start-stop-daemon --stop --oknodo --quiet \
                --exec $DAEMON
        echo "."
        ;;
  reload|force-reload)
        echo -n "Reloading $DESC configuration..."
        start-stop-daemon --stop --signal HUP --quiet \
                --exec $DAEMON
        echo "done."
        ;;
  restart)
        echo -n "Restarting $DESC: $NAME"
        start-stop-daemon --stop --quiet --oknodo \
                --exec $DAEMON
        sleep 1
        start-stop-daemon --start --quiet \
                --exec $DAEMON -- -b
        echo "."
        ;;
  *)
        echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2
        exit 1
        ;;
esac
exit 0

Następnie ustawiamy aby MyDNS uruchamiał się przy starcie sytemu:

chmod +x /etc/init.d/mydns update-rc.d mydns defaults

Instalacja Vlogger i Webalizer

apt-get install vlogger webalizer

Po zainstalowaniu edytujemy plik konfiguracyjny:

nano /etc/webalizer/webalizer.conf

i zmieniamy z No na Yes:

#Incremental no

Zmieniamy na:

Incremental yes

Instalacja Jailkit

Jailkit musi być zainstalowany przed ISP Config nie po, instalujemy go nastepujaco:

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

cd /tmp

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

tar xvfz jailkit-2.5.tar.gz cd jailkit-2.5

./configure

make

make install

cd ..

rm -rf jailkit-2.5*

Instalacja fail2ban

Jest to nie wymagany lecz zalecany dodatek.

apt-get install fail2ban

Instalacja Webmaila

Jako webmail posłuży nam SquirrelMail:

apt-get install squirrelmail

następni tworzymy skrót do maila:

ln -s /usr/share/squirrelmail/ /var/www/webmail

Po czym konfigurujemy:

squirrelmail-configure

Na początku wciśnij D po czym wpisz courier następnie wciskamy dowolny klawisz po czym zapisujemy (S) i wychodzimy (Q) Webmail będzie pod adresem http://twoje_ip/webmail oraz http://twoja_domena/webmail

Instalacja ISP Config 3

Po długiej konfiguracji przechodzimy do instalacji naszego panelu:

cd /tmp

wget http://downloads.sourceforge.net/ispconfig/ISPConfig-3.0.3.2.tar.gz

tar xvfz ISPConfig-3.0.3.2.tar.gz

cd ispconfig3_install/install/

ISPConfig-3.0.3.2.tar.gz zamień z najnowszą dostępną wersją. Następnie przechodzimy do instalacji:

php -q install.php

>> Initial configuration Operating System: Debian Lenny/Sid or compatible

Following will be a few questions for primary configuration so be careful.

Default values are in [brackets] and can be accepted with <ENTER>.

Tap in ”quit” (without the quotes) to stop the installer. Select language (en,de) [en]: //  ENTER

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

MySQL database to create [dbispconfig]: // ENTER

MySQL charset [utf8]: // ENTER

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

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 MyDNS Configuring Apache Configuring Firewall Installing ISPConfig ISPConfig Port [8080]: // ENTER

Configuring DBServer Installing Crontab no crontab for root no crontab for getmail Restarting services … Stopping MySQL database server: mysqld. Starting MySQL database server: mysqld. Checking for corrupt, not cleanly closed and upgrade needing tables.. Stopping Postfix Mail Transport Agent: postfix. Starting Postfix Mail Transport Agent: postfix. Stopping SASL Authentication Daemon: saslauthd. Starting SASL Authentication Daemon: saslauthd. Stopping amavisd: amavisd-new. Starting amavisd: amavisd-new. Stopping ClamAV daemon: clamd. Starting ClamAV daemon: clamd . Stopping Courier authentication services: authdaemond. Starting Courier authentication services: authdaemond. Stopping Courier IMAP server: imapd. Starting Courier IMAP server: imapd. Stopping Courier IMAP-SSL server: imapd-ssl. Starting Courier IMAP-SSL server: imapd-ssl. Stopping Courier POP3 server: pop3d. Starting Courier POP3 server: pop3d. Stopping Courier POP3-SSL server: pop3d-ssl. Starting Courier POP3-SSL server: pop3d-ssl. Restarting web server: apache2 … waiting . Restarting ftp server: Running: /usr/sbin/pure-ftpd-mysql-virtualchroot -l mysql:/etc/pure-ftpd/db/mysql.conf -l pam -E -A -u 1000 -O clf:/var/log/pure-ftpd/transfer.log -b -B Installation completed. server1:/tmp/ispconfig3_install/install#

W tym momencie nasz panel został zainstalowany i bedzie dostępny po http://twoja_domena:8080 oraz http://twoje_IP:8080 Domyślne dane logowania to: Login: admin pass: admin

Uwagi koncowe:

Jesli po zainstalowaniu w naszym panelu mydns jest na czerwono zainstaluj go wg tego poradnika.

Podsumowując

Instalacja tego panelu może zająć dość sporo czasu, lecz można powiedzieć ze było warto.

© 2010 – 2011, lukaszfr. Kopiowanie poradników dozwolone jedynie za podaniem źródła.

Related posts:

  1. Joomla – czyli krok po kroku jak zainstalować Joomla
  2. Instalacja Windows XP – czyli jak zainstalować Windows XP
  3. Instalacja Windows 7 – czyli krok po kroku jak zainstalować Windows 7
  4. Instalacja systemu Debian
  5. GIMP – czyli jak tworzyć przeźroczyste tła w zdjęciach

7 Responses

  1. ABRACADABRA says:

    Jedyna dobra instalacja tylko bym uaktualnił wszystkie pakiety na chwilę obecną 01.2011 jak ISPConfig do wersji 3.0.3.2 Jailkit do wersji 2.13 oraz MyDNS do wersji 1.2.8.27 (wszystkie wersje stable)
    Dla laika jak ja (dobrze że miałem jakąś małą szkołe z linuxem) porozdzielał bym ścieżki komend takie jak :
    apt-get install build-essential autoconf automake1.9 libtool flex bison cd /tmp wget http://olivier.sessink.nl/jailkit/jailkit-2.5.tar.gz tar xvfz jailkit-2.5.tar.gz cd jailkit-2.5 ./configure make make install cd .. rm -rf jailkit-2.5*

    powinny być :
    apt-get install build-essential autoconf automake1.9 libtool flex bison
    cd /tmp
    wget http://olivier.sessink.nl/jailkit/jailkit-2.5.tar.gz
    tar xvfz jailkit-2.5.tar.gz
    cd jailkit-2.5
    ./configure
    make
    make install

    Pozdrawiam

  2. piotr says:

    coś jakby przetłumaczone … http://www.howtoforge.com/perfect-server-debian-squeeze-with-bind-and-courier-ispconfig-3
    warto podmienić mydns na bind9
    zapomniano o konfiguracji autoryzacji serwera dns :/ bieda :)

  3. mackal says:

    Oryginalny poradnik zniknął, gdyż aktualnie wzbogacony o screeny i opisy na 333 stronach jest sprzedawany po 5 Euro przez wydawcę. Napracowali się z dokumentacją i zbierają na piwo ;)

  4. mackal says:

    Wracając do sedna sprawy mam pewien problem który dopadł mnie przy instalacji PureFTPd i Quota. Mianowicie na moim VPS’ie zastałem pusty plik /etc/fstab z komentarzem, iż konfiguracji brak ;)
    Opierając się na informacjach z sieci stwierdziłem, że dopiszę tam coś ręcznie, ale w tym celu potrzebuje sprawdzić nazwę dysku/partycji. Jak się jednak okazało nie ma również pliku /proc/partitions ;)

    Problem dosyć mało spotykany więc może ktoś ma jakiś pomysł na rozwiązanie sprawy ??

Leave a Reply

© 2010 Poradniki Komputerowe. All rights reserved.
Proudly designed by Theme Junkie.