在Debian 10和Ubuntu 20.04上安裝Perfect Server Automated ISP Config 3

在Debian 10和Ubuntu 20.04上安裝Perfect Server Automated ISP Config 3

本教程介紹了如何使用ISPConfig自動安裝程序來安裝自己的ISPConfig3單服務器設置。該安裝程序遵循舊的《 Perfect Server》指南,但更具模塊化且易於遵循。如果您想為每個服務使用專用服務器來設置多服務器設置,請參閱《完美多服務器指南》。

本指南適用於Debian 10和Ubuntu 20.04。使用主機名server1.example.com。如有必要,請更換。

1.登錄到服務器

登錄或以root身份運行

su -

繼續之前,請成為服務器的root用戶。 重要的:必須同時使用“ su-”和“ su”。否則,Debian將錯誤地設置PATH變量。

2.配置主機名和主機

服務器的主機名必須是子域,例如“ server1.example.com”。 請勿使用沒有子域部分的域名作為主機名,例如“ example.com”。您稍後可能會遇到設置問題。首先,您需要檢查/ etc / hosts中的主機名,並在必要時進行更改。該行如下所示:“ IP地址空間完整的主機名,包括domain-space-subdomain部分”。對於主機名server1.example.com,文件如下所示(某些行可能有所不同,並且對於每個主機提供商,可能會有所不同):

nano /etc/hosts
127.0.0.1 localhost.localdomain   localhost# This line should be changed to the correct servername:127.0.1.1 server1.example.com server1
# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

然後編輯/ etc / hostname文件。

nano /etc/hostname

在這種情況下,僅包含子域部分。

server1

最後,重新啟動服務器以應用更改。

systemctl reboot

再次登錄並使用以下命令來驗證主機名是否正確。

hostnamehostname -f

輸出看起來像這樣:

[email protected]:~$ hostnameserver1[email protected]:~$ hostname -fserver1.example.com

您還需要在指向服務器的DNS提供程序中設置DNS記錄。您需要一個指向您的公共IP的子域的A(和/或AAAA)記錄。

3.運行自動安裝程序

現在,您可以運行自動安裝程序。基本設置包括以下軟件包(當然還有它們的依賴性):Apache2,PHP(版本5.6-8.0),MariaDB,Postfix,Dovecot,Rspamd,BIND,Jailkit,Roundcube,PHPMyAdmin,Mailman,Webalizer,AWStats,GoAccess。您可以通過將參數傳遞給安裝程序來輕鬆選擇不使用特定功能或安裝其他服務。您可以使用以下命令查看所有參數:

wget -O - https://get.ispconfig.org | sh -s -- --help

您現在可以使用其參數運行腳本。例如,如果您需要使用被動FTP +無人值守升級端口範圍的常規安裝,請運行以下命令:

wget -O - https://get.ispconfig.org | sh -s -- --use-ftp-ports=40110-40210 --unattended-upgrades

稍後,將顯示以下內容。

WARNING! This script will reconfigure your complete server!It should be run on a freshly installed server and all current configuration that you have done will most likely be lost!Type 'yes' if you really want to continue:

回答“是”,然後按Enter。安裝程序將啟動。

安裝程序完成後,您將看到ISPConfig管理員和MySQL root密碼,如下所示:

[INFO] Your ISPConfig admin password is: 5GvfSSSYsdfdYC[INFO] Your MySQL root password is: kkAkft82d!kafMwqxdtYs

確保記下此信息,以備日後使用。

4.防火牆設置

最後要做的是設置防火牆。

登錄到ISPConfig UI,然後[システム]->[ファイアウォール]去。下一個,[新しいファイアウォールレコードを追加]點擊。

在常規設置中,它看起來像這樣:

TCP:

20,21,22,80,443,40110:40210,110,143,465,587,993,995,53,8080,8081

UDP:

53

所有服務所需的端口是:

網絡:20、21、22、80、443和40110:40210(均不使用TCP,UDP)

電子郵件:110、143、465、587、993和995(均不包含TCP,UDP)

DNS:53(TCP和UDP)

面板:8080和8081(均不帶TCP,UDP)

現在,服務器已設置好並可以使用。您可以使用登錄 https://server1.example.com:8080

5.高級選項

自動安裝程序具有各種命令行選項,可用於微調您的設置。例如,您可以在Apache和Nginx Web服務器之間進行選擇,然後選擇要在系統上安裝的服務。命令行參數為:

Usage: ispc3-ai.sh [] [...]

This script automatically installs all needed packages for an ISPConfig 3 setup using the guidelines from the "Perfect Server Setup" howtos on www.howtoforge.com.

Possible arguments are:
    --help          Show this help page
    --debug         Enable verbose logging (logs each command with the exit code)
    --channel       Choose the channel to use for ISPConfig. --channel=<stable|dev>
                    "stable" is the latest ISPConfig release available on www.ispconfig.org
                    "dev" is the latest stable-branch from the ISPConfig git repository: https://git.ispconfig.org/ispconfig/ispconfig3/tree/stable-3.1
                    -> The dev channel might contain bugs and less-tested features and should only be used in production by very experienced users.
    --lang          Use language for ISPConfig installation. Specify with --lang=en|de (only en (English) and de (German) supported currently).
    --interactive   Don't install ISPConfig in non-interactive mode. This is needed if you want to use expert mode, e. g. to install a slave server that shall be integrated into an existing
                    multiserver setup.
    --use-nginx     Use nginx webserver instead of apache2
    --use-amavis    Use amavis instead of rspamd for mail filtering
    --use-unbound   Use unbound instead of bind9 for local resolving. Only allowed if --no-dns is set.
    --use-php       Use specific PHP versions, comma separated, instead of installing multiple PHP, e.g. --use-php=7.4,8.0 (5.6, 7.0, 7.1, 7.2, 7.3, 7.4 and 8.0 available).
                    --use-php=system disables the sury repository and just installs the system's default PHP version.
                    ommiting the argument (use all versions)
    --use-ftp-ports This option sets the passive port range for pure-ftpd. You have to specify the port range separated by hyphen, e. g. --use-ftp-ports=40110-40210.
                    If not provided the passive port range will not be configured.
    --use-certbot   Use Certbot instead of acme.sh for issuing Let's Encrypt certificates. Not adviced unless you are migrating from a old server that uses Certbot.
    --no-web        Do not use ISPConfig on this server to manage webserver setting and don't install nginx/apache or pureftpd. This will also prevent installing an ISPConfig UI and implies
                    --no-roundcube as well as --no-pma
    --no-mail       Do not use ISPConfig on this server to manage mailserver settings. This will install postfix for sending system mails, but not dovecot and not configure any settings for
                    ISPConfig mail. It implies --no-mailman.
    --no-dns        Do not use ISPConfig on this server to manage DNS entries. Bind will be installed for local DNS caching / resolving only.
    --no-local-dns  Do not install local DNS caching / resolving via bind.
    --no-firewall   Do not install ufw and tell ISPConfig to not manage firewall settings on this server.
    --no-roundcube  Do not install roundcube webmail.
    --roundcube     Install Roundcube even when --no-mail is used. Manual configuration of Roundcube config is needed.
    --no-pma        Do not install PHPMyAdmin on this server.
    --no-mailman    Do not install Mailman mailing list manager.
    --no-quota      Disable file system quota
    --no-ntp        Disable NTP setup
    --unattended-upgrades
                    Install UnattendedUpgrades. You can add extra arguments for automatic cleanup and automatic reboots when necessary with --unattended-upgrades=autoclean,reboot (or only
                    one of them).
    --i-know-what-i-am-doing
                    Prevent the autoinstaller to ask for confirmation before continuing to reconfigure the server.

例如,要使用Nginx而不是Apache來安裝安裝程序等“完美服務器”,請使用以下命令:

wget -O - https://get.ispconfig.org | sh -s -- --use-nginx --use-ftp-ports=40110-40210 --unattended-upgrades

或安裝沒有電子郵件和DNS服務的Nginx Web Server:

wget -O - https://get.ispconfig.org | sh -s -- --use-nginx --no-dns --no-mail --use-ftp-ports=40110-40210 --unattended-upgrades

6.敲定

設置現已完成。

您可以通過購買手冊來支持ISPConfig。 https://www.ispconfig.org/documentation/

下面的鏈接是一些有用的教程/指針,用於進一步的設置。

  • 電子郵件設置(rDNS,SPF,DKIM):https://www.howtoforge.com/how-to-install-an-email-server-with-ispconfig-on-debian-10/
  • Roundcube調整:https://www.howtoforge.com/community/threads/tweaking-the-roundcube-settings.86387/
  • 自動配置設置(電子郵件客戶端的自動配置): https://schaal-it.com/ispconfig-automail/
  • 改善PHPMyAdmin和rspamd界面的安全性:https://www.howtoforge.com/community/threads/improving-the-security-of-phpmyadmin-and-rspamd-ui.86544/
  • ISPConfig自動安裝程序代碼存儲庫和問題跟蹤系統: https://git.ispconfig.org/thom/ispconfig-autoinstaller

如有任何疑問,請在論壇中提問。

Source

Sidebar