Home / Linux / Ubuntu / Komplett Ubuntu szerver ISPConfiggal

Komplett Ubuntu szerver ISPConfiggal

A következő leírásban egy tiszta Ubuntu 8.10 Serverre fogok komplett web és mail kiszolgálót telepíteni, ISPConfig 3 társaságában, a könnyebb adminisztrációs végett.

Webkiszolgálónak a szokásos Apache, PHP, MySQL kerül telepítésre, levelezéshez a Postfix, Courier, Squirrelmail (webes mail kliensnek), FTP szervernek a PureFTPd.

A vírusirtásról a Clamav, míg a spam mentességről a Amavisd-new, SpamAssassin lesznek a felelősek.


A leírásban a szerver IP címe 192.168.1.100 lesz, domain neve pedig server1.otthon.local

Szükség lesz egy alap Ubuntu 8.10 Server telepítésre. Erről leírást itt találsz.

Szerezzünk magunknak egy root jogú konzolt a következő paranccsal:

sudo -s

Állítsuk be megfelelően a hálózatot is, valamint frissítsük a rendszert.

Ehhez használjuk a következő parancsokat:

apt-get update
apt-get upgrade
apt-get dist-upgrade

Változtassuk meg az alapértelmezett shellt:

ln -sf /bin/bash /bin/sh

Erre az ISPConfig miatt van szükség.

Tiltsuk le, majd távolítsuk el az AppArmor szolgáltatást.

/etc/init.d/apparmor stop
update-rc.d -f apparmor remove
aptitude remove apparmor apparmor-utils

Szinkronizáljuk a gépünk óráját az interneten található időkiszolgálókhoz. Először telepítsük az ehhez szükséges klienst:

aptitude install ntp ntpdate

Postfix, Courier, Saslauthd, MySQL, phpMyAdmin, rkhunter, binutils csomagok telepítése

aptitude 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 maildrop getmail4 rkhunter binutils

A MySQL telepítésekor néhány kérdésre válaszolnunk kell:

  • New password for the MySQL “root” user: root jelszó
  • Repeat password for the MySQL “root” user: root jelszó
  • Create directories for web-based administration? <– Nem
  • General type of mail configuration: <– Internet Site
  • System mail name: <– domain nevünk (server1.otthon.local)
  • SSL certificate required <– Ok

Ha kész a telepítés be kell állítanunk, hogy a MySQL minden hálózati interfészen hallgasson

nano /etc/mysql/my.cnf

Keressük meg a következő sort:

bind-address           = 127.0.0.1

Majd rakjunk elé egy # jelet (kikommentezzük).

Indítsuk újra a MySQL szervert

/etc/init.d/mysql restart

Majd ellenőrizzük, hogy mindenhol figyel

netstat -tap | grep mysql

Ilyesmit kell látnunk:

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

A telepítés közben létrejöttek SSL tanúsítványok, azonban az ezekben a localhost domain név szerepel. Így ezeket ki kell törölni, majd létrehozni egy helyeset.

cd /etc/courier
rm -f /etc/courier/imapd.pem
rm -f /etc/courier/pop3d.pem

Majd módosítsuk az alábbi két fájlt úgy, hogy a CN=localhost sort írjuk át CN=server1.otthon.local (vagy ami a saját domain nevünk) sorra. Egyéb értékeket is módosíthatunk ha tudjuk mik azok.

nano /etc/courier/imapd.cnf

Majd a következő fájlban is ugyanezeket a módosításokat tegyük meg

nano /etc/courier/pop3d.cnf

Hozzuk létre a tanúsítványokat

mkimapdcert
mkpop3dcert

Majd indítsuk újra a Courier-IMAP-SSL és Courier-POP3-SSL szolgáltatásokat

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

Amavisd-new, SpamAssassin, és Clamav telepítése

aptitude 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

Apache2, PHP5, phpMyAdmin, FCGI, suExec, Pear, és mcrypt telepítése

aptitude 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

A Web server to reconfigure automatically kérdésre válasszuk az apache2 opciót.

Engedélyezzük az suexec, rewrite, ssl, actions, és include Apache modulokat

a2enmod suexec rewrite ssl actions include

Töröljük a phpMyAdminhoz tartozó /etc/phpmyadmin/htpasswd.setup fájlt a biztonság érdekében

rm -f /etc/phpmyadmin/htpasswd.setup

Majd nyissuk meg szerkesztésre az Apache konfigurációs fájlját:

nano /etc/phpmyadmin/apache.conf

és távolítsuk el a következő részt (töröljük ki)

       # Authorize for setup
       <Files setup.php>
           # For Apache 1.3 and 2.0
           <IfModule mod_auth.c>
               AuthType Basic
               AuthName "phpMyAdmin Setup"
               AuthUserFile /etc/phpmyadmin/htpasswd.setup
           </IfModule>
           # For Apache 2.2
           <IfModule mod_authn_file.c>
               AuthType Basic
               AuthName "phpMyAdmin Setup"
               AuthUserFile /etc/phpmyadmin/htpasswd.setup
           </IfModule>
           Require valid-user
       </Files>

Majd indítsuk újra az Apache kiszolgálót

/etc/init.d/apache2 restart

PureFTPd és kvóta telepítése

aptitude install pure-ftpd-common pure-ftpd-mysql quota quotatool

Szerkesszük a /etc/default/pure-ftpd-common fájlt

nano /etc/default/pure-ftpd-common

Majd a következő két sort keressük meg és módosítsuk az alább látható értékekre

STANDALONE_OR_INETD=standalone
...
VIRTUALCHROOT=true

Indítsuk újra a PureFTPd kiszolgálót

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

nyissuk meg szerkesztésre az /etc/fstab fájlt.

/etc/fstab

Itt keressük meg a / partíciónk csatolási sorát, majd adjuk a sor végére a ,usrquota,grpquota opciókat. Itt most a /dev/sda1 utáni sor lesz az.

# /etc/fstab: static file system information.
#
proc            /proc           proc    defaults        0       0
# /dev/sda1
UUID=e7f9e640-1254-462f-b314-6471ce83db4d /               ext3    relatime,errors=remount-ro,usrquota,grpquota 0       1
# /dev/sda5
UUID=32b41e4e-4d4a-4825-8922-27e8c6aeeb45 none            swap    sw              0       0
/dev/scd0       /media/cdrom0   udf,iso9660 user,noauto,exec,utf8 0       0

Kvóta engedélyezése:

touch /quota.user /quota.group
chmod 600 /quota.*
mount -o remount /
quotacheck -avugm
quotaon -avug

MyDNS telepítése

függőségek telepítése

aptitude install g++ libc6 gcc gawk make texinfo libmysqlclient15-dev

Töltsük le a MyDNS forrását, és telepítsük (sajnos nem elérhető deb csomagban Ubuntu alá)

cd /tmp
wget http://heanet.dl.sourceforge.net/sourceforge/mydns-ng/mydns-1.2.8.27.tar.gz
tar xvfz mydns-1.2.8.27.tar.gz
cd mydns-1.2.8
./configure
make
make install

Hozzunk létre egy indító szkriptet a program számára

nano /etc/init.d/mydns

A tartalma a következő legyen:

#! /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

Tegyük futtathatóvá, és adjuk hozzá a rendszerindító szkriptek közé

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

Vlogger és Webalizer telepítése

aptitude install vlogger webalizer

Jailkit telepítése

A Jailkitre azért van szükség, hogy be tudjuk zárni megadott helyre az SSH felhasználókat.

Ezt mindenképp az ISPConfig telepítése előtt kell telepítenünk, utólag már nem lehet!

aptitude install build-essential autoconf automake1.9 libtool flex bison

Töltsük le a forrását, és telepítsük

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*

fail2ban telepítése

Ez egy opcionális kiegészítő. Ha telepítjük, akkor az ISPConfig ki tudja tiltani azokat az IP címeket, ahonnét jelszópróbálkozások történnek.

aptitude install fail2ban

SquirrelMail webmail telepítése

aptitude install squirrelmail squirrelmail-locales

rakjunk be az apache által látott helyre egy linket

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

Majd állítsuk be

squirrelmail-configure

A megjelenő menünél nyomjunk egy D betűt, majd enter (Set pre-defined settings for specific IMAP servers opcióhoz).

A következő opciónál írjuk be, hogy: courier
majd enter, és ezután mikor kiírja, hogy Press any key to continue… nyomjunk le egy billentyűt.

A főmenüben nyomjunk S betűt a mentéshez, majd Q a kilépéshez.

Mostmár elérjük a SquirrelMail felületét a http://server1.otthon.local/webmail vagy http://192.168.1.100/webmail címen (természetesen ha otthon más domainünk vagy ip címünk van, akkor azon).

ISPConfig 3 telepítése

Töltsük le a legutolsó verziót és telepítsük azt.

cd /tmp
wget http://downloads.sourceforge.net/ispconfig/ISPConfig-3.0.1.1.tar.gz?use_mirror=
tar xvfz ISPConfig-*.tar.gz
cd ispconfig3_install/install/

Ha SVN-ből szeretnénk telepíteni:
Telepítsük az ahhoz szükséges programot

aptitude install subversion

Majd szedjük le az ISPConfigot

cd /tmp
svn export svn://svn.ispconfig.org/ispconfig3/trunk/
cd trunk/install

Telepítsük az ISPConfigot:

php -q install.php

Ilyet fogunk látni. Ahol ki van emelve, azt nekünk kell megadni.

——————————————————————————–
_____ ___________ _____ __ _
|_ _/ ___| ___ / __ / _(_)
| | `–.| |_/ / | / / ___ _ __ | |_ _ __ _
| | `–. __/ | | / _ | ‘_ | _| |/ _` |
_| |_/__/ / | | __/ (_) | | | | | | | (_| |
___/____/_| ____/___/|_| |_|_| |_|__, |
__/ |
|___/
——————————————————————————–

>> 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 []: <– MySQL root jelszó

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]:
<– HU, majd ENTER
State or Province Name (full name) [Some-State]: <– Megye neve
Locality Name (eg, city) []: <– Város neve
Organization Name (eg, company) [Internet Widgits Pty Ltd]: <– domain név
Organizational Unit Name (eg, section) []: <– ENTER
Common Name (eg, YOUR name) []: <– név
Email Address []: <– email cím
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
…done.
* Starting MySQL database server mysqld
…done.
* Checking for corrupt, not cleanly closed and upgrade needing tables.
* 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
LibClamAV Warning: ***********************************************************
LibClamAV Warning: *** This version of the ClamAV engine is outdated. ***
LibClamAV Warning: *** DON’T PANIC! Read http://www.clamav.net/support/faq ***
LibClamAV Warning: ***********************************************************
…done.
* Stopping Courier authentication services authdaemond
…done.
* Starting Courier authentication services authdaemond
…done.
* Stopping Courier IMAP server…
…done.
* Starting Courier IMAP server…
…done.
* Stopping Courier IMAP-SSL server…
…done.
* Starting Courier IMAP-SSL server…
…done.
* Stopping Courier POP3 server…
…done.
* Starting Courier POP3 server…
…done.
* Stopping Courier POP3-SSL server…
…done.
* Starting Courier POP3-SSL server…
…done.
* Restarting web server apache2
… waiting …done.
Restarting ftp server: Running: /usr/sbin/pure-ftpd-mysql-virtualchroot -l mysql:/etc/pure-ftpd/db/mysql.conf -l pam -E -u 1000 -O clf:/var/log/pure-ftpd/transfer.log -b -A -B
Installation completed.
root@server1:/tmp/ispconfig3_install/install#

Ezután már elérjük az ISPConfig admin felületét a következő címen: http://server1.otthon.local:8080/ vagy http://192.168.1.100:8080/ Tehát a 8080-as porton fog futni.

Bejelentkezéshez használjuk az admin felhasználónevet és admin jelszót.

Most már készen áll a rendszer a használatra.

Szerző charlie

Évek óta foglalkozom informatikával, azon belül elsősorban Linux szerverek üzemeltetésével. Saját vállalkozás keretében VPS szolgáltatás nyújtásával is foglalkozok.

Olvastad?

Linux

Friss funkciókkal érkezik a Linux 5.0 „Shy Crocodile”

Linus Torvalds nemrég megjelentette a Linux kernel 5.0 verzióját, melynek a Shy Crocodile, avagy a …

70 hozzászólás

  1. Na,sikerült megoldanom minden hibát,csak,az a bajom,hogy amiután létrehoztam az FTP usert,akkor nem enged be!Pure-FTPD-MySQL van fent!Azt írja,hogy nem jó e felhasználó!Kérlek segítsetek!

  2. És,a Mail-al is gond van:
    Amikor bemegyek a webmail-ba,és beírom a felhasználónevem,meg a jelszavamat,mindent jól adtam meg,de ezt írja ki:
    ERROR:
    ERROR: Connection dropped by IMAP server.

    Kérlek segítsetek ebben is :D:D

  3. Hát, talán az lesz a gond, hogy nem Intrepidre (8.10) telepítetted és annyiban eltérő, hogy pár dolog nem megy.

  4. Aha,sztem ez lehet a baj.

  5. Az FTP hiba megoldva!
    A Mail hiba maradt még.

  6. Minden hiba megoldva!

  7. Hello! Az ftp-vel van egy kis baj az ispconfig-ba hozzáadtam 1 ftp felhasználót be is sikerült lépni vele de az attribútum módosításnál a total commander a következő hibaüzenettel dobálózik:Nem cserélhető a távoli fájl attribútuma!

  8. Hello! Az ftp-vel van egy kis baj az ispconfig-ba hozzáadtam 1 ftp felhasználót be is sikerült lépni vele de az attribútum módosításnál a total commander a következő hibaüzenetet kapom:Nem cserélhető a távoli fájl attribútuma!

  9. Valaki igazán válaszolhatna

  10. Sziasztok.

    Nem nagyon értek a linuxhoz most szerteném kiprobálni és pont az ipsconfigal kesztem.Feltelepitem minden jó csak amikor fel akarok rá menni akkor ezt irja ki :

    XML feldolgozási hiba: nem definiált entitás
    Hely: jar:file:///usr/lib/firefox-3.6.18/chrome/toolkit.jar!/content/global/netError.xhtml
    60. sor, 12. oszlop: &loadError.label;
    ———–^

    nagyon nem értem mit ir. :S

Vélemény, hozzászólás?

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük

A weboldal használatának folytatásával Ön elfogadja a cookie-k használatát Adatkezelési tájékoztató és felhasználási feltételek

A süti beállítások ennél a honlapnál engedélyezett a legjobb felhasználói élmény érdekében. Amennyiben a beállítás változtatása nélkül kerül sor a honlap használatára, vagy az "Elfogadás" gombra történik kattintás, azzal a felhasználó elfogadja a sütik használatát.

Bezárás