Tento tutoriál vás provede instalací vlastního nastavení multiserveru ISPConfig 3 s vyhrazenými servery pro panel, web, DNS, poštu a webovou poštu. DNS i poštovní server budou mít zrcadlový server pro redundanci. Později můžete snadno přidat další servery určitého typu.
K nastavení serverů bude použit oficiální automatický instalační program ISPConfig. Jako operační systém bude použit Debian 10. Průvodce byl testován také s Ubuntu 20.04.2.
Více o automatické instalaci si můžete přečíst zde.
1. Předběžná poznámka
Toto budou hostitelé, které instalujeme:
hostitel FQDN IP
panel panel.example.com 10.0.64.12
web01 web01.example.com 10.0.64.13 m 0 x 10.0.64.13 m . 10.0.64.13 m . 10.0.64.13 m . 2 x 10.0.64.13. mx2.example.com 10.0.64.15
ns1 ns1.example.com 10.0.64.16
ns2 . . 0. . . . . . . 7. . . . . . . . . 7. . . . . . . 7. . . . . .>Budeme používat příklady názvů hostitelů, IP adres a rozsahů IP. Nezapomeňte je odpovídajícím způsobem změnit ve svých příkazech/konfiguracích.
Všechny servery jsou ve stejné privátní síti, ale mají svou vlastní veřejnou IP. Pokud vaše servery nemají sdílenou místní síť, použijte jejich veřejné adresy IPv4.
Před zahájením instalace serveru nastavte A a případný záznam AAAA, který ukazuje na veřejné IP adresa vašeho serveru. Pokud je například název hostitele panel.example.com a veřejná IP adresa je 11.22.33.44, měli byste nastavit záznam A pro panel.example.com směřující na 11.22.33.44. Každý server by měl mít svou veřejnou IP a název hostitele.
2. Instalace hlavního serveru
Přihlaste se jako root nebo spusťte
su -a stát se uživatelem root na vašem serveru, než budete pokračovat. DŮLEŽITÉ :Musíte použít 'su -' a ne pouze 'su', jinak je vaše proměnná PATH v Debianu nastavena špatně.
2.1 Konfigurace názvu hostitele a hostitelů
Název hostitele vašeho serveru by měla být subdoména jako „panel.example.com“. Nepoužívejte název domény bez části subdomény, jako je „example.com“, jako název hostitele, protože by to později způsobilo problémy s nastavením pošty. Nejprve byste měli zkontrolovat název hostitele v /etc/hosts a v případě potřeby jej změnit. Řádek by měl být:"IP adresa - mezera - celé jméno hostitele včetně domény - mezera - část subdomény". Pro náš název hostitele panel.example.com bude soubor vypadat takto (některé řádky se mohou lišit, mohou se lišit podle poskytovatele hostingu):
nano /etc/hosts127.0.0.1 localhost.localdomain localhost
# Tento řádek by měl být změněn na každém uzlu na správný název serveru:
127.0.1.1 panel.example.com panel
# Tyto řádky jsou stejné na každém uzlu:10.0.64.12 panel.example.com panel
10.0.64.13 web01.example.com web01
10.0.64.14 mx1.example.com mx1
10.0.64.15 mx2. .com mx2
10.0.64.16 ns1.example.com ns1
10.0.64.17 ns2.example.com ns2
10.0.64.18 webmail.example.com webmail# Následující řádky jsou vhodné pro IPv6 schopní hostitelé::1 localhost ip6-localhost ip6-loopbackff02::1 ip6-allnodesff02::2 ip6-allroutersJak můžete vidět, přidali jsme také názvy hostitelů našich ostatních serverů, aby mohly později komunikovat přes interní síť.
Poté upravte soubor /etc/hostname:
nano /etc/hostnameBude obsahovat pouze část subdomény, v našem případě:
panelNakonec restartujte server, aby se změna uplatnila:
restart systemctlZnovu se přihlaste a pomocí těchto příkazů zkontrolujte, zda je název hostitele správný:
název hostitele
název hostitele -fVýstup by měl být takto:
[e-mail chráněný]:~$ název hostitele
panel
[chráněný e-mailem]:~$ název hostitele -f
panel.example.comNyní můžeme spustit autoinstaller a nainstalovat všechny potřebné balíčky a ISPConfig:
wget -O - https://get.ispconfig.org | sh -s -- --no-mail --no-dns --use-php=systemPo nějaké době uvidíte:
VAROVÁNÍ! Tento skript překonfiguruje váš kompletní server!
Měl by být spuštěn na čerstvě nainstalovaném serveru a veškerá aktuální konfigurace, kterou jste provedli, bude s největší pravděpodobností ztracena!
Pokud chcete opravdu pokračovat, zadejte 'ano':Odpovězte „ano“ a stiskněte Enter. Nyní se spustí instalační program.
Po dokončení instalace vám zobrazí administrátorské heslo ISPConfig a heslo root MySQL takto:
[INFO] Vaše heslo administrátora ISPConfig je:5GvfSSSYsdfdYC
[INFO] Vaše kořenové heslo MySQL je:kkAkft82d!kafMwqxdtYsNezapomeňte si tyto informace zapsat spolu se serverem, pro který jsou určeny, protože je budete později potřebovat.
2.2 Nastavení vzdálených uživatelů MySQL pro naše podřízené servery
Přihlásíme se k MySQL, abychom umožnili ostatním serverům připojit se k databázi ISPConfig na tomto uzlu během instalace, a to přidáním kořenových uživatelských záznamů MySQL do hlavní databáze pro každý název hostitele a IP adresu podřízeného serveru.
Na terminálu spusťte
mysql -u root -pZadejte své heslo MySQL a poté spusťte následující příkazy:
VYTVOŘIT UŽIVATELE 'root'@'10.0.64.13' IDENTIFIKOVANÉ PODLE 'myrootpassword';
UDĚLEJTE VŠECHNA OPRÁVNĚNÍ NA * . * TO 'root'@'10.0.64.13' IDENTIFIKOVANÉ PODLE 'myrootpassword' S MOŽNOSTÍ UDĚLENÍ MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS> 0;VYTVOŘIT UŽIVATELE 'root'@'10.0.64.14' IDENTIFIKOVANÉ PODLE 'myrootpassword';
UDĚLEJTE VŠECHNA PRIVILEGIA NA * . * TO 'root'@'10.0.64.14' IDENTIFIKOVANÉ PODLE 'myrootpassword' S MOŽNOSTÍ UDĚLENÍ MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS> 0;VYTVOŘTE UŽIVATELE 'root'@'10.0.64.15' IDENTIFIKOVANÉ PODLE 'myrootpassword';
UDĚLEJTE VŠECHNA PRIVILEGIA NA * . * TO 'root'@'10.0.64.15' IDENTIFIKOVANÉ PODLE 'myrootpassword' S MOŽNOSTÍ UDĚLENÍ MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS> 0;VYTVOŘIT UŽIVATELE 'root'@'10.0.64.16' IDENTIFIKOVANÉ PODLE 'myrootpassword';
UDĚLEJTE VŠECHNA PRIVILEGIA NA * . * TO 'root'@'10.0.64.16' IDENTIFIKOVANÉ PODLE 'myrootpassword' S MOŽNOSTÍ UDĚLENÍ MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS> 0;VYTVOŘIT UŽIVATELE 'root'@'10.0.64.17' IDENTIFIKOVANÉ PODLE 'myrootpassword';
UDĚLEJTE VŠECHNA PRIVILEGIA NA * . * TO 'root'@'10.0.64.17' IDENTIFIKOVÁNO OD 'myrootpassword' S MOŽNOSTÍ UDĚLENÍ MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS> 0;VYTVOŘIT UŽIVATELE 'root'@'10.0.64.18' IDENTIFIKOVANÉ PODLE 'myrootpassword';
UDĚLEJTE VŠECHNA PRIVILEGIA NA * . * TO 'root'@'10.0.64.18' IDENTIFIKOVANÉ PODLE 'myrootpassword' S MOŽNOSTÍ UDĚLENÍ MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS> 0;VYTVOŘTE UŽIVATELE 'root'@'web01.example.com' IDENTIFIKOVANÉ PODLE 'myrootpassword';
UDĚLEJTE VŠECHNA PRIVILEGIA NA * . * DO 'root'@'web01.example.com' IDENTIFIKOVANÉ PODLE 'myrootpassword' S MOŽNOSTÍ UDĚLENÍ MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0;VYTVOŘTE UŽIVATELE 'root'@'mx1.example.com' IDENTIFIKOVANÉHO PODLEM 'myrootpassword';
UDĚLEJTE VŠECHNA PRIVILEGIÍ NA * . * DO 'root'@'mx1.example.com' IDENTIFIKOVANÉ PODLE 'myrootpassword' S MOŽNOSTÍ UDĚLENÍ MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0;VYTVOŘTE UŽIVATELE 'root'@'mx2.example.com' IDENTIFIKOVANÉHO PODLEM 'myrootpassword';
UDĚLEJTE VŠECHNA PRIVILEGIA NA * . * DO 'root'@'mx2.example.com' IDENTIFIKOVANÉ PODLE 'myrootpassword' S MOŽNOSTÍ UDĚLENÍ MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0;VYTVOŘTE UŽIVATELE 'root'@'ns1.example.com' IDENTIFIKOVANÉ PODLE 'myrootpassword';
UDĚLEJTE VŠECHNA PRIVILEGIU NA * . * DO 'root'@'ns1.example.com' IDENTIFIKOVANÉ PODLE 'myrootpassword' S MOŽNOSTÍ UDĚLENÍ MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0;VYTVOŘTE UŽIVATELE 'root'@'ns2.example.com' IDENTIFIKOVANÉHO PODLEM 'myrootpassword';
UDĚLEJTE VŠECHNA PRIVILEGIA NA * . * DO 'root'@'ns2.example.com' IDENTIFIKOVANÉ PODLE 'myrootpassword' S MOŽNOSTÍ UDĚLENÍ MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0;VYTVOŘTE UŽIVATELE 'root'@'webmail.example.com' IDENTIFIKOVANÉ PODLE 'myrootpassword';
UDĚLEJTE VŠECHNA PRIVILEGIA NA * . * DO 'root'@'webmail.example.com' IDENTIFIKOVANÉ PODLE 'myrootpassword' S MOŽNOSTÍ UDĚLENÍ MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0;Ve výše uvedených SQL příkazech nahraďte IP adresy (10.0.64.12 - 10.0.64.18) IP adresami vašich serverů, web01.example.com, mx1.example.com, mx2.example.com, ns1.example.com , ns2.example.com a webmail.example.com s názvy hostitelů vašich serverů a heslem myroot s požadovaným heslem root (je dobrým zvykem používat pro každého hostitele jiné heslo. Zapište si je, budete je potřebovat později při instalaci nebo aktualizaci vašich podřízených serverů).
Když to uděláte, můžete MySQL ukončit pomocí:
KONEC;Nyní se můžete přihlásit do ISPConfig na https://panel.example.com:8080 pomocí uživatelského jména admin a hesla, které vám ukázal instalační program.
2.3 Nastavení brány firewall
Poslední věcí, kterou musíte udělat, je nastavit náš firewall.
Přihlaste se do uživatelského rozhraní ISPConfig a přejděte na Systém -> Firewall. Poté klikněte na „Přidat nový záznam brány firewall“.
Pro panelový server musíme otevřít následující porty:
TCP:
22,80,443,8080,8081Žádné UDP porty nemusí být otevřeny přes uživatelské rozhraní.
Chystáme se také otevřít port 3306, který se používá pro MySQL, ale z bezpečnostních důvodů pouze z naší lokální sítě. Chcete-li tak učinit, spusťte následující příkaz z CLI poté, co se změna z panelu ISPConfig rozšíří (když zmizí červená tečka):
ufw umožňuje z 10.0.64.0/24 na libovolný port 3306 proto tcpVáš panel je nyní nastaven a připraven k použití.
V dalším kroku nainstalujeme webový server.
Jak vytvořit virtuální počítač Ubuntu v Azure Cloud Zachycování paketů pomocí Tcpdump a jejich analýza pomocí Wireshark na UbuntuUbuntu