GNU/Linux >> Znalost Linux >  >> Ubuntu

Nastavení ISPConfig Perfect Multiserver na Ubuntu 20.04 a Debian 10

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/hosts
127.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-allrouters

Jak 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/hostname

Bude obsahovat pouze část subdomény, v našem případě:

panel

Nakonec restartujte server, aby se změna uplatnila:

restart systemctl

Znovu se přihlaste a pomocí těchto příkazů zkontrolujte, zda je název hostitele správný:

název hostitele
název hostitele -f

Vý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.com

Nyní 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=system

Po 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!kafMwqxdtYs

Nezapomeň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 -p

Zadejte 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 tcp

Váš panel je nyní nastaven a připraven k použití.

V dalším kroku nainstalujeme webový server.


Ubuntu
  1. Perfect Server Automated ISPConfig 3 instalace na Debian 10 - 11 a Ubuntu 20.04

  2. Perfect Server Automated ISPConfig 3 instalace na Debian 10 - 11 a Ubuntu 20.04

  3. Nastavte Apache a Php pomocí mod_fcgid na Ubuntu/Debian

  1. Perfect Server Automated ISPConfig 3 instalace na Debian 10 - 11 a Ubuntu 20.04

  2. The Perfect Server – Ubuntu 15.04 (nginx, BIND, Dovecot a ISPConfig 3)

  3. Skript nastavení OpenVPN pro Debian a Ubuntu

  1. Nainstalujte Node.js v Ubuntu a Debianu

  2. Jak nainstalovat Python 3.7 na Ubuntu, Debian a LinuxMint

  3. Jak nastavit IP Failover s KeepAlived na Ubuntu a Debianu