ISPConfig: Porovnání verzí
(→Předinstalace 2) |
(→Přednastavení) |
||
(Není zobrazeno 23 mezilehlých verzí od stejného uživatele.) | |||
Řádka 15: | Řádka 15: | ||
Tento skript neinstaluje ssl certifikat. Pokud by jsme jej chtěli, je nutné mít ISPConfig na verejne IP adrese a spustit z parametrem '''--interactive'''. | Tento skript neinstaluje ssl certifikat. Pokud by jsme jej chtěli, je nutné mít ISPConfig na verejne IP adrese a spustit z parametrem '''--interactive'''. | ||
+ | |||
+ | Dobrý návod rozděleného systému je též na https://www.howtoforge.com/installing-a-multiserver-setup-with-dedicated-web-email-dns-and-mysql-database-servers-on-debian-5.0-with-ispconfig-3 | ||
+ | == Multi instalace == | ||
+ | === Systém === | ||
+ | Chceme li mít nainstalovanou jen vlastní správu a následně jednotlivé služby na samostatných počítačích, začneme instalací řídícího serveru. Ten vpodstatě potřebuje jen věci pro sebe, to jest apache, mysql a vlastní ICPConfig. | ||
+ | Nejjednoduší je použít skript, který nainstaluje co je potřeba | ||
+ | wget -O - https://get.ispconfig.org | sh -s -- --interactive --no-mail --no-dns --no-roundcube --no-pma --no-quota --use-unbound --use-php=system --unattended-upgrades=autoclean,reboot | ||
+ | Po doinstalování se spustí spustí základní nastavení ISPConfig. | ||
+ | |||
+ | === Přednastavení === | ||
+ | Pokud instalujeme ISPConfig jen jako rídící jednotku, zvolime nasledující volby. Nutné je ale v předchozím instalačním skriptu přidat volby --interaktive | ||
+ | |||
+ | ''Select language (en,de) [en]:'' <-- Enter | ||
+ | |||
+ | ''Installation mode (standard,expert) [standard]:'' <-- expert | ||
+ | |||
+ | ''Full qualified hostname (FQDN) of the server, eg server2.domain.tld [web.example.tld]:'' <-- plný doménový název musí odpovidat realitě, Enter | ||
+ | |||
+ | ''MySQL server hostname [localhost]:'' <-- Enter | ||
+ | |||
+ | ''MySQL root username [root]:'' <-- Enter | ||
+ | |||
+ | ''MySQL root password []:'' <-- Vložte heslo MySQL pro uživatele root | ||
+ | |||
+ | ''MySQL database to create [dbispconfig]:'' <-- Enter | ||
+ | |||
+ | ''MySQL charset [utf8]:'' <-- Enter | ||
+ | |||
+ | |||
+ | The next two questions are about the internal ISPConfig database user and password. | ||
+ | |||
+ | It is recommended to accept the defaults which are 'ispconfig' as username and a random password. | ||
+ | |||
+ | If you use a different password, use only numbers and chars for the password. | ||
+ | |||
+ | |||
+ | ''ISPConfig mysql database username [ispconfig]:'' <-- Enter | ||
+ | |||
+ | ''ISPConfig mysql database password [81ea685fb35c9261aa390278f510150f]:'' <-- Enter, heslo si radci poznamenat | ||
+ | |||
+ | ''Shall this server join an existing ISPConfig multiserver setup (y,n) [n]:'' <-- Enter | ||
+ | |||
+ | ''Configure Mail (y,n) [y]:'' <-- n | ||
+ | |||
+ | ''Configure Jailkit (y,n) [y]:'' <-- n ? | ||
+ | |||
+ | ''Configure FTP Server (y,n) [y]:'' <-- n | ||
+ | |||
+ | ''Configure DNS Server (y,n) [y]:'' <-- n | ||
+ | |||
+ | ''Configure Apache Server (y,n) [y]:'' <-- n | ||
+ | |||
+ | ''Configure Firewall Server (y,n) [y]:'' <--y | ||
+ | |||
+ | ''Install ISPConfig Web-Interface (y,n) [y]:'' <--y | ||
+ | |||
+ | ''ISPConfig Port [8080]:'' <-- 8080 | ||
+ | |||
+ | ''Admin password [dc91f21d]:'' <-- zadame heso dele libosti pro pristup pres web | ||
== Instalace slave == | == Instalace slave == | ||
Řádka 31: | Řádka 90: | ||
==== Instal - skript ==== | ==== Instal - skript ==== | ||
Pokud sekundarní server má sloužit jen jako DNS server, je dobré zablokovat instalaci nepotrebných aplikaci. Můžeme opět použít skript, viz instalace, ale z dalsimi parametry: | Pokud sekundarní server má sloužit jen jako DNS server, je dobré zablokovat instalaci nepotrebných aplikaci. Můžeme opět použít skript, viz instalace, ale z dalsimi parametry: | ||
− | wget -O - https://get.ispconfig.org | sh -s -- --interactive --no-web --no-mail --use-php=system --unattended-upgrades=autoclean,reboot | + | wget -O - https://get.ispconfig.org | sh -s -- --interactive --no-web --no-mail --use-php=system --no-quota --unattended-upgrades=autoclean,reboot |
Po nainstalovaní potrebnych balíků budeme dale vyzváni k vlastnimu nastaveni ISPConfigu. Před spuštěním vlastní konfigurace se nám zobrazí heslo pro databázi. To budeme nasledne potrebovat při konfiguraci. | Po nainstalovaní potrebnych balíků budeme dale vyzváni k vlastnimu nastaveni ISPConfigu. Před spuštěním vlastní konfigurace se nám zobrazí heslo pro databázi. To budeme nasledne potrebovat při konfiguraci. | ||
Po vygenerování certifikáty bydeme dotázání na istalaci SSL. Pokud server není na veřejné IP, tak jen nenastavujeme. | Po vygenerování certifikáty bydeme dotázání na istalaci SSL. Pokud server není na veřejné IP, tak jen nenastavujeme. | ||
Řádka 39: | Řádka 98: | ||
==== Instal - ručně ==== | ==== Instal - ručně ==== | ||
Zde se nepoužije před predinstalační skrypt, ale jednotlive komponenty instalujeme ručně. | Zde se nepoužije před predinstalační skrypt, ale jednotlive komponenty instalujeme ručně. | ||
− | apt-get update && apt-get upgrade | + | apt-get update && apt-get -y upgrade |
+ | apt-get -y install ssh openssh-server nano vim-nox lsb-release apt-transport-https ca-certificates wget | ||
apt-get -y install ntp ntpdate | apt-get -y install ntp ntpdate | ||
− | apt-get -y install | + | apt-get -y install dbconfig-common openssl, sudo |
− | apt-get -y install | + | apt-get -y install mariadb-client mariadb-server |
− | apt-get -y install bind9 dnsutils | + | apt-get -y install php-cli php-mysql php5-mcrypt mcrypt |
+ | apt-get -y install bind9 dnsutils binutils | ||
Následně stáhneme vlastní ISPConfig a spustíme konfigurační skript | Následně stáhneme vlastní ISPConfig a spustíme konfigurační skript | ||
cd /tmp | cd /tmp |
Aktuální verze z 20. 6. 2021, 18:06
Obsah
Singl install
Pro nainstalovaní zakladni instalace se da pouzit autokonfiguracni skript. Originální popis nalezneme na https://www.howtoforge.com/ispconfig-autoinstall-debian-ubuntu/
Sumarizace:
- Přihlásit se jako root su -
- Spravně nastavit hostname a hosts (hostname zobrazi jen nazev serveru, hostname - f zobrazí celý doménovy název)
- Spustíme vlastni instalační skript:
wget -O - https://get.ispconfig.org | sh -s -- --help
Zobrazí jen nápovědu z možnostmi. Vlatní instalce pak muže vypadat:
wget -O - https://get.ispconfig.org | sh -s -- --use-ftp-ports=40110-40210 --unattended-upgrades=autoclean,reboot
Pokud probehne vše v pořádku, nakonci se zobrazí přístupová hesla ktere je nutne si ulozit. Například:
[INFO] Your ISPConfig admin password is: 5GvfSSSYsdfdYC [INFO] Your MySQL root password is: kkAkft82d!kafMwqxdtYs
Po uspešné instalaci je doporučeno jako první nastavit jeste firewal.Po přihlasení vybereme System → Firewall. Odkliknutím vytvořit se nám automaticky přednastaví potřebné porty. Stačí jen uložit.
Tento skript neinstaluje ssl certifikat. Pokud by jsme jej chtěli, je nutné mít ISPConfig na verejne IP adrese a spustit z parametrem --interactive.
Dobrý návod rozděleného systému je též na https://www.howtoforge.com/installing-a-multiserver-setup-with-dedicated-web-email-dns-and-mysql-database-servers-on-debian-5.0-with-ispconfig-3
Multi instalace
Systém
Chceme li mít nainstalovanou jen vlastní správu a následně jednotlivé služby na samostatných počítačích, začneme instalací řídícího serveru. Ten vpodstatě potřebuje jen věci pro sebe, to jest apache, mysql a vlastní ICPConfig. Nejjednoduší je použít skript, který nainstaluje co je potřeba
wget -O - https://get.ispconfig.org | sh -s -- --interactive --no-mail --no-dns --no-roundcube --no-pma --no-quota --use-unbound --use-php=system --unattended-upgrades=autoclean,reboot
Po doinstalování se spustí spustí základní nastavení ISPConfig.
Přednastavení
Pokud instalujeme ISPConfig jen jako rídící jednotku, zvolime nasledující volby. Nutné je ale v předchozím instalačním skriptu přidat volby --interaktive
Select language (en,de) [en]: <-- Enter
Installation mode (standard,expert) [standard]: <-- expert
Full qualified hostname (FQDN) of the server, eg server2.domain.tld [web.example.tld]: <-- plný doménový název musí odpovidat realitě, Enter
MySQL server hostname [localhost]: <-- Enter
MySQL root username [root]: <-- Enter
MySQL root password []: <-- Vložte heslo MySQL pro uživatele root
MySQL database to create [dbispconfig]: <-- Enter
MySQL charset [utf8]: <-- Enter
The next two questions are about the internal ISPConfig database user and password.
It is recommended to accept the defaults which are 'ispconfig' as username and a random password.
If you use a different password, use only numbers and chars for the password.
ISPConfig mysql database username [ispconfig]: <-- Enter
ISPConfig mysql database password [81ea685fb35c9261aa390278f510150f]: <-- Enter, heslo si radci poznamenat
Shall this server join an existing ISPConfig multiserver setup (y,n) [n]: <-- Enter
Configure Mail (y,n) [y]: <-- n
Configure Jailkit (y,n) [y]: <-- n ?
Configure FTP Server (y,n) [y]: <-- n
Configure DNS Server (y,n) [y]: <-- n
Configure Apache Server (y,n) [y]: <-- n
Configure Firewall Server (y,n) [y]: <--y
Install ISPConfig Web-Interface (y,n) [y]: <--y
ISPConfig Port [8080]: <-- 8080
Admin password [dc91f21d]: <-- zadame heso dele libosti pro pristup pres web
Instalace slave
Protože prislusne sekundarni servvery se musi připojit na lokalni databazi, je nutne povolit "naslouchání" databaze na vsech interface a nastavit pro jednotlive slave servery práva.
Nastavení MySQL aby naslouchalo na všech rozhraní docílíme zakomentovanim parametru bind-address = 127.0.0.1 v souboru /etc/mysql/my.cnf a následným restartem sluzby. V případě instalace dle predchozího postupu již je tato volba nastavena.
Následně vytvoříme pro MySQL uživatele:
CREATE USER 'root'@'192.168.0.106' IDENTIFIED BY 'myrootpassword'; GRANT ALL PRIVILEGES ON * . * TO 'root'@'192.168.0.106' IDENTIFIED BY 'myrootpassword' WITH GRANT OPTION MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ;
CREATE USER 'root'@'ns2.example.tld' IDENTIFIED BY 'myrootpassword'; GRANT ALL PRIVILEGES ON * . * TO 'root'@'ns2.example.tld' IDENTIFIED BY 'myrootpassword' WITH GRANT OPTION MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ;
Kde IP 192.168.0.106 musí odpovídat IP adrese sekundárního serveru a ns2.example.tld zase skutecnemu pojmenovani serveru. Připadně místo IP zadáme "%" ale z bezpečnostních důvodů se to nedoporučuje. Heslo je dobré změnit...
DNS
Instal - skript
Pokud sekundarní server má sloužit jen jako DNS server, je dobré zablokovat instalaci nepotrebných aplikaci. Můžeme opět použít skript, viz instalace, ale z dalsimi parametry:
wget -O - https://get.ispconfig.org | sh -s -- --interactive --no-web --no-mail --use-php=system --no-quota --unattended-upgrades=autoclean,reboot
Po nainstalovaní potrebnych balíků budeme dale vyzváni k vlastnimu nastaveni ISPConfigu. Před spuštěním vlastní konfigurace se nám zobrazí heslo pro databázi. To budeme nasledne potrebovat při konfiguraci. Po vygenerování certifikáty bydeme dotázání na istalaci SSL. Pokud server není na veřejné IP, tak jen nenastavujeme.
Při vlastni konfigyraci ISPConfigu je nutne vybrat volbu expert.
Instal - ručně
Zde se nepoužije před predinstalační skrypt, ale jednotlive komponenty instalujeme ručně.
apt-get update && apt-get -y upgrade apt-get -y install ssh openssh-server nano vim-nox lsb-release apt-transport-https ca-certificates wget apt-get -y install ntp ntpdate apt-get -y install dbconfig-common openssl, sudo apt-get -y install mariadb-client mariadb-server apt-get -y install php-cli php-mysql php5-mcrypt mcrypt apt-get -y install bind9 dnsutils binutils
Následně stáhneme vlastní ISPConfig a spustíme konfigurační skript
cd /tmp wget http://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gz tar xfz ISPConfig-3-stable.tar.gz cd ispconfig3_install/install/ php -q install.php
Poté se spustí průvodce základního nastavení ISPConfigu. V našem případě pak musíme použít expert.
....
Po dokoncení nastavení smažeme přebytečné adresáře
rm -f /var/www/ispconfig rm -rf /tmp/ispconfig3_install/install rm -f /tmp/ISPConfig-3-stable.tar.gz
Nastavení options
Vlastnosti DNS serveru se definují v souboru named.conf.options. Upravíme dle našich požadavků.
acl slapnet { # Nastavi seznam slapnet a priradi k nemu IP rozsahy 10.129.0.0/16; 176.74.154.0/25; }; options { directory "/var/cache/bind"; # Sdresar pro ukladani sekundarnich zaznamu query-source address * port *; # Definuje port a adresu pro komunikaci mezi DNS servery dnssec-enable yes; # Povoleni dnssec. Je nutne hlidat klice, viz https://www.isc.org/bind-keys dnssec-validation yes; dnssec-lookaside auto; auth-nxdomain no; # conform to RFC1035, jiz se neaplikuje listen-on-v6 { none; }; # Nastaveni poslechu na konkretnich rozhrani serveru listen-on { 127.0.0.1; 192.168.0.1; }; # none; | any; | 127.0.0.1; 192.168.0.1; allow-transfer { none; }; # Povolene sekundarni servery pro prenos zon (neautorizovane) allow-query { localhost; slapnet; }; # Povolene adresy, rozsahy pro DNS dotazy allow-recursion { localhost; slapnet; }; # Povolene adresy, rozsahy pro reverzni dotazy version "unknown"; # Prezentovani verze serveru, unknown - nezobrazuje se };
Poznamky
Přednastavená konfigurace ukládá nastavení zón do původního adresáře "/etc/bind". To může do budoucna vést k nepřehlednosti. Proto doporučuji vytvořit nový adresář a do něj nastavit ukládání nových zónových souborů. Také je problém z ukládáním sekundárních záznamů, což je řešitelné nastavením symlinku.
mkdir /etc/bind/zone chmod 770 /etc/bind/zone chown -R root:bind /etc/bind/zone ln -s /var/cache/bind /etc/bind/zone/slave
Následně v administraci ISPConf jdeme do Systém → Konfigurace serveru → vybereme server pro nastavení → DNS → BIND adresář se zónovými soubory → nastavíme /etc/bind/zone.