Kako instalirati ISPConfig 3 na Ubuntu 18.04

U ovom vodiču ćemo vam pokazati kako postaviti i instalirati ISPConfig 3 na a VPS pokrenut Ubuntu 18.04.

ISPConfig je poznati open-source web hosting kontrolni panel koji nam omogućava da upravljamo uslugama putem web preglednika. Možemo lako dodati Apache virtual host ili Nginx server blokove, kreirati / urediti / obrisati baze podataka, konfigurirati cron poslove, kreirati e-mail račune i još mnogo toga. To je besplatna alternativa plaćenim kontrolnim panelima - ne morate da trošite novac da biste koristili ovu kontrolnu tablu.

Preduslovi:

Korak 1: Prijavite se preko SSH i ažurirajte sistem

Prijavite se na svoj Ubuntu 18.04 VPS sa SSH kao root korisnik, ili korisnik sa sudo privilegijama:

ssh [zaštićena e-poštom] _Address -p Port_number

Zamijenite IP_Address i Port_number njihovim odgovarajućim vrijednostima za vaš poslužitelj.

Možete provjeriti da li imate instaliranu ispravnu verziju Ubuntu na vašem serveru pomoću sljedeće naredbe:

lsb_release -a

Trebali biste dobiti ovaj izlaz:

ID distributera: Ubuntu Opis: Ubuntu 18.04.2 LTS Release: 18.04 Codename: bionic

Zatim pokrenite sljedeću naredbu kako biste bili sigurni da su svi instalirani paketi na poslužitelju ažurirani na najnoviju dostupnu verziju:

apt update && apt upgrade

U ovom vodiču ćemo koristiti ubuntu.mydomain.com kao ime hosta servera - ime hosta treba da bude FQDN (potpuno kvalifikovano ime domene). Važno je koristiti poddomenu kao ime hosta, a ne glavni domen. Ako ne koristite poddomenu za ime hosta poslužitelja, na primjer, imate problem amavis i drugi programi koji se odnose na slanje e-pošte. Molimo pogledajte ovaj članak je povezan ovdje da biste saznali više o tome kako promijeniti ime domene.

Korak 2: Ponovo konfigurišite Bash i zaustavite program 'apparmor'

Moramo koristiti bash kao zadanu sistemsku ljusku, a ne crtica, da nastavimo sa instalacijom ISPConfig-a.

dpkg-reconfigure crtica
Koristite crticu kao zadanu sistemsku ljusku (/ bin / sh)? Ne
systemctl stop apparmor systemctl onesposobiti apparmor

Provjerite da li su usluge na vašem poslužitelju već pokrenute:

netstat -pltn

Korak 3: Instalirajte MariaDB, Postfix i Dovecot

Pokrenite naredne naredbe da biste instalirali MariaDB, Postfix i Dovecot.

apt install mariadb-poslužitelj postfix postfix-mysql opensl dovecot-mysql dovecot-pop3d dovecot-sieve dovecot-lmtpd binutils dovecot-imapd

U procesu instalacije postavljat će vam se dva pitanja za postfix - provjerite koristite li ime hosta kao ime sistemske pošte.

Opšta vrsta konfiguracije pošte: Naziv pošte za sistem Internet stranice: ubuntu.mydomain.com

Zatim uredite /etc/postfix/master.cf pomoću željenog uređivača teksta.

U suštini, moramo da unesemo nekoliko linija u konfiguracionu datoteku i dodamo -o smtpd_client_restrictions = dozvolite_sasl_authenticated, odbacite pod odjeljcima podnošenja i smtpd. Datoteka bi trebala izgledati ovako:

podnošenje inet n - y - - smtpd -o syslog_name = postfix / podnošenje -o smtpd_tls_security_level = šifriranje -o smtpd_sasl_auth_enable = da -o smtpd_client_restrictions = permit_sasl_authenticated, odbaciti # -o smtpd_reject_unlisted_recipient = nema # -o smtpd_client_restrictions = $ mua_client_restrictions # -o smtpd_helo_restrictions = $ mua_helo_restrictions # -o smtpd_sender_restrictions = $ mua_sender_restrictions # -o smtpd_recipient_restrictions = # -o smtpd_relay_restrictions = dozvoli_sasl_authentication, odbaci # -o milter_macro_daemon_name_smt_tmt_tmp_tmp = im_pdf_name_name - sms_tmpd_name_name - sms_tmpd_name_name = sms - nt_pdf_name_name = sms-nt_pdf_name_name = sm_tk_tk_tk_sm_pdf_name = sm_t_tv_tv_d_pdf smtpd_sasl_auth_enable = da -o smtpd_client_restrictions = permit_sasl_authenticated, odbaciti # -o smtpd_reject_unlisted_recipient = nema # -o smtpd_client_restrictions = $ mua_client_restrictions # -o smtpd_helo_restrictions = $ mua_helo_restrictions # -o smtpd_sender_restrictions = $ mua_sender_restrictions # -o smtpd_recipient_restrictions = # -o smtpd_relay_restrictions = permit_sasl_auth enticirano, odbaciti # -o milter_macro_daemon_name = ORIGINATING

Kada završite, sačuvajte i izađite iz datoteke i ponovo pokrenite Postfix:

systemctl restart postfix

U ovom trenutku, MariaDB se pokreće i sada ćemo kreirati lozinku za root korisnika. Pokrenite sledeću naredbu za kreiranje root lozinke, uklonite test bazu podataka, uklonite anonimni korisnik i ponovo učitate privilegije.

mysql_secure_installation

Jednom kreiran, možete testirati lozinku pozivanjem ove naredbe. Bit ćete upitani za root lozinku koju ste postavili u prethodnoj naredbi:

# mysql -u root -p

Korak 4: Instalirajte Spamassassin, Clamav i Amavisd-new

Pokrenite sledeću liniju da biste instalirali Spamassassin, Clamav i Amavisd-new, kao i neke potrebne pakete da bi ovi programi ispravno funkcionisali.

apt instalacija spamassassin clamav clamav-daemon amavisd-novi postgrey zip unzip bzip2 arj nomarch lzop cabextract libnet-ldap-perl libauthen-sasl-perl daemon libnet-ident-perl libnet-dns-perl perl apt-listchanges

Da bismo oslobodili malo memorije, možemo zaustaviti spamassassin. ISPConfig 3 koristi amavisd, koji interno učitava Spamassassin biblioteke, tako da možemo zaustaviti spamassassin.

systemctl stop spamassassin systemctl onesposobiti spamassassin
freshclam

Ako vidite poruku o grešci kada pokrenete naredbu "freshclam" kao što je prikazano ispod, možete je ignorirati jer to znači da je freshclam već pokrenut:

GREŠKA: /var/log/clamav/freshclam.log je zaključan drugim procesom GREŠKA: Problem sa unutrašnjim zapisnikom (UpdateLogFile = /var/log/clamav/freshclam.log).
systemctl pokreće clamav-daemon

U vreme pisanja ovog članka, amavisd-new ima grešku u Ubuntu 18.04-u koja treba da se zakrpi. Da biste to popravili, pokrenite sljedeće naredbe:

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 {,. orig } zakrpa </tmp/ubuntu-amavisd-new-2.11.patch

Videćete sledeću poruku. Ali, ako vidite poruku o grešci, to znači da je amavisd-new već zakrpljen.

Korak 5: Instalirajte Apache i druge pakete

Izvedite sljedeću naredbu za instaliranje paketa koje zahtijeva ISPConfig. Verovatno je bar nekoliko njih već instalirano na vašem sistemu.

apt instalirati apache2 apache2-utils apache2-doc libapache2-mod-PHP php7.2 php7.2-common php7.2-CLI php7.2-mysql php7.2-sqlite3 php7.2-IMAP php7.2-gd php7.2-cgi php7.2-zip php7.2-mbstring php7.2-opcache php7.2-curl php7.2- php7.2-pspell php7.2-recode php7.2-tidy php7.2-xmlrpc php7.2-xsl libapache2-mod-fcgid phpmyadmin mailman roundcube roundcube -crosscube-mysql roundcube-plugins php-net-sito tinymce getmail2 javascript-common libjs-jquery-mousewheel rkhunter binutils vlogger webalizer awstats geoip-database perl libio-socket-ssl-perl libnet-ident-perl kvotna kvota libnet-dns-perl čista-ftpd-čista-ftpd-mysql cabextract certbot

Tokom instalacije, morate odgovoriti na neka osnovna pitanja. Ako se od vas zatraži da izaberete web server, izaberite Apache2.
Takođe, od vas će se tražiti da unesete lozinku za MySQL aplikaciju za phpMyAdmin i lozinku za MySQL aplikaciju za Roundcube. Možete da unesete jaku lozinku po svom izboru ili da je ostavite prazne da bi sistem kreirao slučajne lozinke za njih. Idealno bi bilo kreirati lozinku tako da možete znati koja je lozinka.

Konfigurišite Apache i PHP

Kada se završi instalacija potrebnih paketa, vreme je da konfigurišete softver. Počnimo sa Apacheom. Omogućite sljedeće modele Apache i PHP:

a2enmod rewrite ssl cgi uključuju akcije suexec dav_fs dav auth_digest alias phpenmod mcrypt
systemctl restart apache2

Takođe moramo da konfigurišemo Roundcube webmail da bi sprečili prikazivanje imena servera u obrascu za prijavu na webmail.

nano /etc/roundcube/config.inc.php

Uredite vrijednost 'default_host' na 'localhost'

$ config ['default_host'] = 'lokalno';

Sačuvajte datoteku, a zatim izađite.

Konfigurišite pure-ftpd

Budući da ćete morati korisnicima pružiti FTP pristup vašem Ubuntu VPS-u kako bi mogli učitati i preuzeti datoteke, potrebno je konfigurirati chroot okruženje. Na taj način korisnici neće imati pristup ostatku sistema. Edit the / etc / default / pure-ftpd-common file i promijenite vrijednost za VIRTUALCHROOT iz false u true.

nano / etc / default / pure-ftpd-uobičajeno
VIRTUALCHROOT = true

Sačuvajte datoteku i izađite, a zatim ponovo pokrenite servis kako bi promene stupile na snagu:

systemctl restart pure-ftpd-mysql

Kreirajte novu listu za Mailman

Sada možemo napraviti novu listu za Mailmana.

newlist mailman

Od vas će se tražiti da unesete e-poruku osobe koja vodi listu, kao i lozinku. Skripta će vam dati izlaz aliasa koji bi trebali biti dodani u / etc / aliases fajl.

nano / etc / aliases

Datoteka bi trebala biti slična sljedećem:

# Obavezni pseudonimi poštar: root MAILER-DAEMON: poštar # uobičajena zloupotreba aliasa: poštarska pošta neželjena pošta: poštar # ostali pseudonima clamav: root mailman: "| / var / lib / mailman / mail / poštar poštar" mailman-admin: "| var / lib / mailman / mail / mailman admin mailman "mailman-bounces:" | / var / lib / mailman / mail / poštar odskače mailman "mailman-potvrdi:" | / var / lib / mailman / mail / mailman potvrdi mailman " mailman-join: "| / var / lib / mailman / mail / mailman pridruži se poštar" mailman-dopust: "| / var / lib / mailman / mail / poštar napustiti poštar" poštar-vlasnik: "| / var / lib / poštar / mail / poštar vlasnik mailman "poštar-zahtjev:" | / var / lib / poštar / pošta / poštar zahtjev poštar "poštar-pretplata:" | / var / lib / poštar / pošta / poštar pretplati se poštar "poštar-odjavi pretplatu:" | / var / lib / mailman / mail / poštar odjaviti pretplatu na mailman "

Sačuvaj i zatvorite datoteku. Inicijalizirajte bazu podataka i ponovo pokrenite usluge.

newaliases systemctl ponovo pokrenuti poštar

Onemogući awstats cron

nano /etc/cron.d/awstats

Moramo komentirati sve linije u toj datoteci dodavanjem “#” ispred redaka, to bi trebalo biti ovako:

# MAILTO = root # * / 10 * * * * www-data [-x /usr/share/awstats/tools/update.sh] && /usr/share/awstats/tools/update.sh # Generiranje statičkih izvještaja: # 10 03 * * * www-data [-x /usr/share/awstats/tools/buildstatic.sh] && /usr/share/awstats/tools/buildstatic.sh

Korak 6: Instalirajte Fail2Ban

Možete preskočiti ovaj korak, ali iz sigurnosnih razloga se preporučuje da se Fail2Ban izvodi na vašem poslužitelju. Ovo privremeno zabranjuje IP adrese računara koji se pokušavaju prijaviti preko SSH previše puta. Pokrenite ovu naredbu da biste je instalirali:

apt install fail2ban -y

Jednom instaliran, koristite željeni uređivač teksta za uređivanje konfiguracijske datoteke za Fail2Ban.

nano /etc/fail2ban/jail.local
[pure-ftpd] omogućen = istinski port = ftp filter = pure-ftpd logpath = / var / log / syslog maxretry = 3 [dovecot] omogućen = istinski filter = dovecot akcija = iptables-multiport [ime = dovecot-pop3imap, port = "pop3, pop3s, imap, slike", protokol = tcp] logpath = /var/log/mail.log maxretry = 5 [postfix] omogućen = istinski port = smtp filter = postfix logpath = /var/log/mail.log maxretry = 3

Korak 7: Instalirajte Jailkit

Ako želite da hrootirate svoje SSH korisnike, morate instalirati Jailkit prije instaliranja ISPConfig-a.

apt-get -y instaliraj autoconf automake1.11 libtool flex bison debhelper
cd / tmp wget http://olivier.sessink.nl/jailkit/jailkit-2.20.tar.gz tar xvfz jailkit-2.20.tar.gz cd jailkit * echo 5> debian / compat ./debian/rules binary

Sada možemo instalirati Jailkit sa sljedećom naredbom:

cd .. dpkg -i jailkit_2.20-1 _ *. deb

Korak 8: Instalirajte ISPConfig 3

Konačno, instalirajmo ISPConfig. Preuzmite najnoviju verziju i instalirajte je pomoću sljedeće naredbe:

cd / tmp wget -O ispconfig.tar.gz https://git.ispconfig.org/ispconfig/ispconfig3/repository/archive.tar.gz?ref=stable-3.1 tar xfz ispconfig.tar.gz cd ispconfig3 * / install / php -q install.php

Odgovorite na pitanja kako biste dovršili instalaciju i zatim pristupite kontrolnom panelu hostinga ISPConfig na: http://yourIPAddress:8080

Čestitamo! U ovom trenutku, trebali biste moći pristupiti ISPConfig-u na http://yourIPAddress:8080 . Za više informacija o ISPConfig-u, njegovim karakteristikama i konfiguraciji, provjerite njihovu službenu dokumentaciju.

Original članak

Ostavite odgovor