GNU/Linux >> Linux の 問題 >  >> Panels >> Panels

Ubuntu18.04にISPConfig3をインストールする方法

このチュートリアルでは、Ubuntu18.04を実行しているVPSにISPConfig3をセットアップしてインストールする方法を示します。

ISPConfigは、よく知られているオープンソースのWebホスティングコントロールパネルであり、Webブラウザを介してサービスを管理できます。 Apache仮想ホストまたはNginxサーバーブロックの追加、データベースの作成/編集/削除、cronジョブの構成、電子メールアカウントの作成などを簡単に行うことができます。これは有料のコントロールパネルの無料の代替手段です。このコントロールパネルを使用するためにお金をかける必要はありません。

前提条件:

  • Ubuntu 18.04 VPS
  • root権限でのSSHアクセス

ステップ1:SSH経由でログインし、システムを更新する

rootユーザーまたはsudo権限を持つユーザーとしてSSHを使用してUbuntu18.04VPSにログインします:

ssh root@IP_Address -p Port_number

IP_AddressとPort_numberをサーバーのそれぞれの値に置き換えます。

次のコマンドを使用して、サーバーに適切なUbuntuバージョンがインストールされているかどうかを確認できます。

lsb_release -a

次の出力が得られるはずです:

Distributor ID: Ubuntu
Description: Ubuntu 18.04.2 LTS
Release: 18.04
Codename: bionic

次に、次のコマンドを実行して、サーバーにインストールされているすべてのパッケージが利用可能な最新バージョンに更新されていることを確認します。

apt update && apt upgrade

このチュートリアルでは、サーバーのホスト名としてubuntu.mydomain.comを使用します。ホスト名はFQDN(完全修飾ドメイン名)である必要があります。メインドメインではなく、ホスト名としてサブドメインを使用することが重要です。サーバーのホスト名にサブドメインを使用しない場合、たとえばamavisで問題が発生します。 およびその他の電子メール関連プログラム。ホスト名を変更する方法の詳細をご覧ください。

ステップ2:Bashを再構成し、「apparmor」プログラムを停止します

ISPConfigのインストールを続行するには、ダッシュではなくbashをデフォルトのシステムシェルとして使用する必要があります。

dpkg-reconfigure dash
Use dash as the default system shell (/bin/sh)? No
systemctl stop apparmor
systemctl disable apparmor

サーバーですでにサービスが実行されているかどうかを確認します:

netstat -pltn

ステップ3:MariaDB、Postfix、Dovecotをインストールする

次のコマンドを実行して、MariaDB、Postfix、およびDovecotをインストールします。

apt install mariadb-server postfix postfix-mysql openssl dovecot-mysql dovecot-pop3d dovecot-sieve dovecot-lmtpd binutils dovecot-imapd

インストールプロセスでは、postfixについて2つの質問があります。システムのメール名としてホスト名を使用していることを確認してください。

General type of mail configuration: Internet Site
System mail name: ubuntu.mydomain.com

次に、/etc/postfix/master.cfを編集します お好みのテキストエディタを使用します。

基本的に、構成ファイルの数行のコメントを解除し、-o smtpd_client_restrictions=permit_sasl_authenticated,rejectを追加する必要があります。 提出セクションとsmtpdセクションの下。ファイルは次のようになります。

submission inet n - y - - smtpd
-o syslog_name=postfix/submission
-o smtpd_tls_security_level=encrypt
-o smtpd_sasl_auth_enable=yes
-o smtpd_client_restrictions=permit_sasl_authenticated,reject
# -o smtpd_reject_unlisted_recipient=no
# -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_authenticated,reject
# -o milter_macro_daemon_name=ORIGINATING

smtps inet n - y - - smtpd
-o syslog_name=postfix/smtps
-o smtpd_tls_wrappermode=yes
-o smtpd_sasl_auth_enable=yes
-o smtpd_client_restrictions=permit_sasl_authenticated,reject
# -o smtpd_reject_unlisted_recipient=no
# -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_authenticated,reject
# -o milter_macro_daemon_name=ORIGINATING

完了したら、ファイルを保存して終了し、Postfixを再起動します:

systemctl restart postfix

この時点で、MariaDBが実行されており、rootユーザーのパスワードを作成します。次のコマンドを実行して、rootパスワードを作成し、テストデータベースを削除し、匿名ユーザーを削除してから、権限を再読み込みします。

mysql_secure_installation

作成したら、このコマンドを呼び出してパスワードをテストできます。前のコマンドで設定したrootパスワードの入力を求められます:

# mysql -u root -p

ステップ4:Spamassassin、Clamav、Amavisdをインストールする-新規

次の行を実行して、Spamassassin、Clamav、Amavisd-new、およびこれらのプログラムが正しく機能するために必要ないくつかのパッケージをインストールします。

apt install spamassassin clamav clamav-daemon amavisd-new postgrey zip unzip bzip2 arj nomarch lzop cabextract libnet-ldap-perl libauthen-sasl-perl daemon libnet-ident-perl libnet-dns-perl libio-string-perl libio-socket-ssl-perl apt-listchanges

メモリ使用量を解放するために、spamassassinを停止できます。 ISPConfig 3はamavisdを使用します。amavisdはSpamassassinライブラリを内部的にロードするため、spamassassinを停止できます。

systemctl stop spamassassin
systemctl disable spamassassin
freshclam

以下に示すように「freshclam」コマンドを実行しているときにエラーメッセージが表示された場合は、無視できます。これは、freshclamがすでに実行されていることを意味します。

ERROR: /var/log/clamav/freshclam.log is locked by another process
ERROR: Problem with internal logger (UpdateLogFile = /var/log/clamav/freshclam.log).
systemctl start clamav-daemon

この記事の執筆時点で、amavisd-newにはUbuntu 18.04のバグがあり、パッチを適用する必要があります。これを修正するには、次のコマンドを実行します。

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

次のメッセージが表示されます。ただし、エラーメッセージが表示された場合は、amavisd-newにすでにパッチが適用されていることを意味します。

ステップ5:Apacheおよびその他のパッケージをインストールする

次のコマンドを実行して、ISPConfigに必要なパッケージをインストールします。これらの少なくともいくつかはすでにシステムにインストールされている可能性があります。

apt install 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-intl php7.2-pspell php7.2-recode php7.2-tidy php7.2-xmlrpc php7.2-xsl libapache2-mod-fcgid apache2-suexec-pristine php-pear mcrypt imagemagick libruby memcached php-memcache php-imagick libapache2-mod-python php-gettext php-apcu phpmyadmin mailman roundcube roundcube-core roundcube-mysql roundcube-plugins php-net-sieve tinymce getmail4 javascript-common libjs-jquery-mousewheel rkhunter binutils vlogger webalizer awstats geoip-database libclass-dbi-mysql-perl bind9 dnsutils haveged daemon libio-string-perl libio-socket-ssl-perl libnet-ident-perl quota quotatool libnet-dns-perl pure-ftpd-common pure-ftpd-mysql cabextract certbot

インストール中に、いくつかの基本的な質問に答える必要があります。 Webサーバーを選択するように求められた場合は、Apache2を選択します。
また、phpMyAdminのMySQLアプリケーションパスワードとRoundcubeのMySQLアプリケーションパスワードを入力するように求められます。選択した強力なパスワードを入力するか、空白のままにして、システムにランダムなパスワードを作成させることができます。理想的には、パスワードを作成して、パスワードが何であるかを知ることができるようにします。

ApacheとPHPの構成

必要なパッケージのインストールが完了したら、ソフトウェアを構成します。 Apacheから始めましょう。次のApacheおよびPHPモジュールを有効にします。

a2enmod rewrite ssl cgi include actions suexec dav_fs dav auth_digest alias
phpenmod mcrypt
systemctl restart apache2

また、Roundcube Webメールを構成して、Webメールログインフォームに入力されたサーバー名が表示されないようにする必要があります。

nano /etc/roundcube/config.inc.php

「default_host」の値を「localhost」に編集します

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

ファイルを保存して終了します。

pure-ftpdを構成する

ユーザーがファイルをアップロードおよびダウンロードできるように、Ubuntu VPSへのFTPアクセスをユーザーに提供する必要があるため、chroot環境を構成する必要があります。そうすれば、ユーザーはシステムの残りの部分にアクセスできなくなります。 /etc/default/pure-ftpd-commonを編集します ファイルを作成し、VIRTUALCHROOTの値をfalseからtrueに変更します。

nano /etc/default/pure-ftpd-common
VIRTUALCHROOT=true

ファイルを保存して終了し、サービスを再起動して変更を有効にします。

systemctl restart pure-ftpd-mysql

Mailmanの新しいリストを作成する

これで、Mailmanの新しいリストを作成できます。

newlist mailman

リストを実行する人の電子メールとパスワードを入力するように求められます。スクリプトは、/etc/aliasesに追加する必要のあるエイリアスの出力を提供します ファイル。

nano /etc/aliases

ファイルは次のようになります。

# Required aliases
postmaster: root
MAILER-DAEMON: postmaster

# Common aliases
abuse: postmaster
spam: postmaster

# Other aliases
clamav: root

mailman: "|/var/lib/mailman/mail/mailman post mailman"
mailman-admin: "|/var/lib/mailman/mail/mailman admin mailman"
mailman-bounces: "|/var/lib/mailman/mail/mailman bounces mailman"
mailman-confirm: "|/var/lib/mailman/mail/mailman confirm mailman"
mailman-join: "|/var/lib/mailman/mail/mailman join mailman"
mailman-leave: "|/var/lib/mailman/mail/mailman leave mailman"
mailman-owner: "|/var/lib/mailman/mail/mailman owner mailman"
mailman-request: "|/var/lib/mailman/mail/mailman request mailman"
mailman-subscribe: "|/var/lib/mailman/mail/mailman subscribe mailman"
mailman-unsubscribe: "|/var/lib/mailman/mail/mailman unsubscribe mailman"

ファイルを保存して閉じます。エイリアスデータベースを初期化し、サービスを再起動します。

newaliases
systemctl restart mailman

awstatscronを無効にする

nano /etc/cron.d/awstats

そのファイルのすべての行を、行の前に「#」を追加してコメント化する必要があります。次のようになります。

#MAILTO=root

#*/10 * * * * www-data [ -x /usr/share/awstats/tools/update.sh ] && /usr/share/awstats/tools/update.sh

# Generate static reports:
#10 03 * * * www-data [ -x /usr/share/awstats/tools/buildstatic.sh ] && /usr/share/awstats/tools/buildstatic.sh

ステップ6:Fail2Banをインストールする

この手順はスキップできますが、セキュリティ上の理由から、サーバーでFail2Banを実行することをお勧めします。これにより、SSHを介して何度もログインしようとするコンピューターのIPアドレスが一時的に禁止されます。次のコマンドを実行してインストールします:

apt install fail2ban -y

インストールしたら、好みのテキストエディタを使用して、Fail2Banの構成ファイルを編集します。

nano /etc/fail2ban/jail.local
[pure-ftpd]
enabled = true
port = ftp
filter = pure-ftpd
logpath = /var/log/syslog
maxretry = 3

[dovecot]
enabled = true
filter = dovecot
action = iptables-multiport[name=dovecot-pop3imap, port="pop3,pop3s,imap,imaps", protocol=tcp]
logpath = /var/log/mail.log
maxretry = 5

[postfix]
enabled = true
port = smtp
filter = postfix
logpath = /var/log/mail.log
maxretry = 3

ステップ7:Jailkitをインストールする

SSHユーザーをchrootする場合は、ISPConfigをインストールする前にJailkitをインストールする必要があります。

apt-get -y install build-essential 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
>

これで、次のコマンドを使用してJailkitをインストールできます。

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

ステップ8:ISPConfig3をインストールする

最後に、ISPConfigをインストールしましょう。最新のリリースをダウンロードし、次のコマンドを使用してインストールします。s:

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

質問に答えてインストールを完了してから、次のISPConfigホスティングコントロールパネルにアクセスします:http://yourIPAddress:8080

おめでとう!この時点で、http://yourIPAddress:8080でISPConfigにアクセスできるはずです。 。 ISPConfig、その機能および構成の詳細については、公式ドキュメントを確認してください。

CentOS3にISPConfig3をインストールする方法についてのチュートリアルを自由にチェックしてください。

もちろん、Ubuntu 18.04 VPSホスティングサービスを使用している場合は、Ubuntu18.04にISPConfigをインストールする方法を知る必要はありません。サポートチームにUbuntu18.04にISPConfigをインストールするよう依頼するだけです。これらは24時間年中無休で利用可能であり、Ubuntu18.04へのISPConfigのインストールを支援することができます。

PS 。 Ubuntu 18.04へのISPConfigのインストールに関するこのブログ投稿を楽しんでいる場合は、以下の共有ショートカットを使用してソーシャルネットワークで自由に共有するか、コメントセクションにコメントを残してください。ありがとうございます。


Panels
  1. Ubuntu14.04にATutorをインストールする方法

  2. Ubuntu16.04にTraqをインストールする方法

  3. Ubuntu16.04にPipをインストールする方法

  1. Ubuntu16.04にWildFlyをインストールする方法

  2. Ubuntu16.04にRをインストールする方法

  3. Ubuntu18.04にGoをインストールする方法

  1. Ubuntu18.04にWebminをインストールする方法

  2. Ubuntu10.04にPanda3Dをインストールする方法

  3. UbuntuにZabbixをインストールする方法