GNU/Linux >> Linux の 問題 >  >> Ubuntu

完璧なサーバー-Ubuntu15.04(nginx、BIND、Dovecot、ISPConfig 3)

このチュートリアルでは、Nginx、PHP、MariaDB、Postfix、pure-ftpd、BIND、Dovecot、ISPConfig3を使用してUbuntu15.04(Vivid Vervet)サーバーをインストールする手順を示します。ISPConfig3は、インストール済みの構成を可能にするWebホスティングコントロールパネルです。 Webブラウザを介したサービス。この設定により、完全なホスティングサーバーに、Web、電子メール(スパムおよびウイルス対策フィルターを含む)、データベース、FTP、およびDNSサービスが提供されます。

1。予備的注意

このチュートリアルでは、ネットワーク構成にホスト名server1.example.comとIPアドレス192.168.1.100およびゲートウェイ192.168.1.1を使用します。これらの設定は異なる場合があるため、必要に応じて置き換える必要があります。先に進む前に、チュートリアルで説明されているように、Ubuntu15.04の基本的な最小限のインストールが必要です。

このチュートリアルの手順はrootユーザーとして実行する必要があるため、コマンドの前に「sudo」を追加しません。続行するか実行する前に、rootユーザーとしてサーバーにログインしてください:

 sudo su 

シェルに別のユーザーとしてログインしたときにrootになります。

ファイルを編集するコマンドはエディタ「nano」を使用します。これを任意のエディタに置き換えることができます。 Nanoは、シェル用の使いやすいファイルエディタです。 nanoを使用するのが好きで、まだインストールしていない場合は、次を実行します:

 apt-get install nano 

2。 Linuxインストールを更新する

/etc/apt/sources.listを編集します。コメントアウトするか、ファイルからインストールCDを削除し、ユニバースおよびマルチバースリポジトリが有効になっていることを確認します。次のようになります:

 nano /etc/apt/sources.list 


#deb cdrom:[Ubuntu-Server 15.04 _Vivid Vervet_-リリースamd64(20150422)] /vividmain制限付き

#deb cdrom:[Ubuntu-Server 15.04 _Vivid Vervet_-リリースamd64(20150422)] /vividmain制限付き

#アップグレード方法については、http://help.ubuntu.com/community/UpgradeNotesを参照してください
#新しいバージョンの配布。
debhttp://de.archive.ubuntu.com/ubuntu/ vivid mainstricted
deb-src http://de.archive.ubuntu.com/ubuntu/ vivid main limited

##
##ディストリビューションの最終リリース後に作成された主要なバグ修正アップデート。
debhttp://de.archive.ubuntu.com/ubuntu/ vivid-updatesメイン制限
deb-srchttp://de.archive.ubuntu.com/ubuntu/vivid-updatesメイン制限

## N.B.このリポジトリのソフトウェアは、Ubuntu
##チームによって完全にサポートされていません。また、ユニバースのソフトウェアは、Ubuntuセキュリティチームから
##レビューやアップデートを受け取らないことに注意してください。
deb http://de.archive.ubuntu.com/ubuntu/ vivid universe
deb-src http://de.archive.ubuntu.com/ubuntu/ vivid universe
deb http://de.archive.ubuntu.com/ubuntu/ vivid-updates universe
deb- src http://de.archive.ubuntu.com/ubuntu/ vivid-updates universe

## N.B.このリポジトリのソフトウェアは、Ubuntu
##チームによって完全にサポートされておらず、無料のライセンスが適用されていない可能性があります。
##ソフトウェアを使用する権利についてご満足ください。また、
##マルチバースのソフトウェアはUbuntu
##セキュリティチームからレビューやアップデートを受け取らないことに注意してください。
debhttp://de.archive.ubuntu.com/ ubuntu / vivid multiverse
deb-src http://de.archive.ubuntu.com/ubuntu/ vivid multiverse
deb http://de.archive.ubuntu.com/ubuntu/ vivid-updates multiverse
deb-src http://de.archive.ubuntu.com/ubuntu/ vivid-updates multiverse

## N.B.このリポジトリのソフトウェアは、メインリリースに含まれているものほど広範囲にテストされていない可能性があります。
##便利な機能を提供する可能性のある、一部のアプリケーションの新しいバージョンが含まれています。
# #また、バックポートのソフトウェアは、Ubuntuセキュリティチームからのレビューやアップデートを受け取らないことに注意してください。
deb http://de.archive.ubuntu.com/ubuntu/ vivid-backports主な制限付きユニバースマルチバース
deb-srchttp://de.archive.ubuntu.com/ubuntu/vivid-backports主な制限付きユニバースマルチバース

deb http://security.ubuntu.com / ubuntuvivid-securitymain制限付き
deb-srchttp://security.ubuntu.com/ubuntuvivid-securitymain制限付き
debhttp://security.ubuntu.com/ubuntu vivid-security universe
deb-src http://security.ubuntu.com/ubuntu vivid-security universe
deb http://security.ubuntu.com/ubuntu vivid-security multiverse

##次の2行のコメントを解除して、Canonicalの
#からソフトウェアを追加します。 #'partner'リポジトリ。
##このソフトウェアはUbuntuの一部ではありませんが、Canonicalと
##それぞれのベンダーによってUbuntuユーザーへのサービスとして提供されています。
#deb http: //archive.canonical.com/ubuntu鮮やかなパートナー
#deb-srchttp://archive.canonical.com/ubuntu鮮やかなパートナー

次に実行します

 apt-get update 

aptパッケージデータベースを更新するには

 apt-get upgrade 

最新のアップデートをインストールします(ある場合)。更新の一部として新しいカーネルがインストールされていることがわかった場合は、後でシステムを再起動する必要があります。

再起動

3。デフォルトのシェルを変更する

/ bin/shは/bin/ dashへのシンボリックリンクですが、/ bin/dashではなく/bin/bashが必要です。したがって、これを行います:

 dpkg-reconfigure dash 

デフォルトのシステムシェル(/ bin / sh)としてダッシュを使用しますか? <-いいえ

これを行わないと、ISPConfigのインストールが失敗します。

4。 AppArmorを無効にする

AppArmorは、拡張セキュリティを提供するセキュリティ拡張機能(SELinuxと同様)です。 13.10以降、デフォルトではインストールされません。インストールされているかどうかをクロスチェックします。私の意見では、安全なシステムを構成するためにそれを必要とせず、通常、利点よりも多くの問題を引き起こします(一部のサービスが期待どおりに機能しなかったため、1週間のトラブルシューティングを行った後、それを考えてください。すべてが問題ないことを確認してください。AppArmorだけが問題を引き起こしていました)。したがって、無効にします(後でISPConfigをインストールする場合は必須です)。

次のように無効にできます:

 service apparmor stop 
update-rc.d -f apparmor remove
apt-get remove apparmor apparmor-utils

5。システム時計を同期する

システムクロックをNTP( n )と同期することをお勧めします etwork t ime p rotocol)インターネット上のサーバー。実行するだけです

 apt-get install ntp ntpdate 

システム時刻は常に同期されます。

6。 Postfix、Dovecot、MariaDB、phpMyAdmin、rkhunter、binutilsをインストールします

Postfix、Dovecot、MariaDB(MySQLの代替として)、rkhunter、binutilsを1つのコマンドでインストールできます:

 apt-get install postfix postfix-mysql postfix-doc mariadb-client mariadb-server openssl getmail4 rkhunter binutils dovecot-imapd dovecot-pop3d dovecot-mysql dovecot-sieve sudo 

MariaDBは、元のMySQL開発者であるMontyWideniusによって開発されたMySQLデータベースサーバーのフォークです。インターネットで見つかったテストによると、MariaDBはMySQLよりも高速であり、開発はより速いペースで進んでいるため、ほとんどのLinuxディストリビューションはデフォルトの「MySQLalike」データベースサーバーとしてMySQLをMariaDBに置き換えました。 MariaDBよりもMySQLを使用する場合は、上記のコマンドの「mariadb-clientmariadb-server」を「mysql-clientmysql-server」に置き換えてください。

次の質問があります:

自己署名SSL証明書を作成しますか? <-はい
ホスト名:<-server1.example.com
メール構成の一般的なタイプ:<-インターネットサイト
システムメール名:<-server1.example.com

次に、PostfixでTLS / SSLと送信ポートを開きます:

 nano /etc/postfix/master.cf 

次のように送信セクションとsmtpsセクションのコメントを解除します-行-osmtpd_client_restrictions=permit_sasl_authenticatedを追加し、両方のセクションを拒否し、その後すべてコメントを残します:

 [...] subject inet n --- --- smtpd -o syslog_name =postfix / subject -o smtpd_tls_security_level =encode -o smtpd_sasl_auth_enable =yes  -o smtpd_client_restrictions =permit_sasl_authenticated、reject  #-o smtpd_reject_unlisted_recipient =なし#-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 =でpermit_sasl_authenticated、拒否#-o milter_macro_daemon_name =ORIGINATINGsmtpsのinetのn - - - - 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_ 

後でPostfixを再起動します:

サービスpostfixの再起動

MariaDB / MySQLは、ローカルホストだけでなく、すべてのインターフェイスでリッスンする必要があります。したがって、/ etc / mysql / mariadb.conf.d / mysqld.cnf(MariaDBの場合は/etc/mysql/my.cnf(MySQLの場合))を編集し、bind-address =127.0.0.1:

の行をコメントアウトします。

MariaDB

 nano /etc/mysql/mariadb.conf.d/mysqld.cnf 

次に、MariaDBでrootパスワードを設定します。実行:

 mysql_secure_installation 

次の質問があります:

 rootの現在のパスワードを入力します(noneの場合はEnter):<-Enterキーを押します
rootパスワードを設定しますか? [Y / n] <-y
新しいパスワード:<-ここに新しいMariaDBルートパスワードを入力します
新しいパスワードを再入力します:<-パスワードを繰り返します
匿名ユーザーを削除しますか? [Y / n] <-y
rootログインをリモートで禁止しますか? [Y / n] <-y
特権テーブルを今すぐリロードしますか? [Y / n] <-y

次に、次のコマンドを実行して、認証プラグインを無効にします。

 echo "update user set plugin ='' where User ='root';flushprivileges;" | mysql --defaults-file =/ etc / mysql / debian.cnf mysql 

PHPMyAdminからのパスワードベースの認証を許可します。

MySQL

 nano /etc/mysql/my.cnf 
 [...]#スキップネットワークの代わりに、デフォルトでは、より互換性があり、安全性が低くない#localhostでのみリッスンするようになりました。 bind-address =127.0.0.1 [...] 

次に、MariaDB / MySQLを再起動します:

 service mysql restart 

MariaDBとMySQLのsystemdサービス名は「mysql」であるため、restartコマンドはどちらも同じです。

次に、ネットワークが有効になっていることを確認します。実行:

 netstat -tap | grep mysql 

出力は次のようになります。

 [メール保護]:〜#netstat -tap | grep mysql 
tcp 0 0 *:mysql *:*リッスン23785 / mysqld
[メール保護]:〜#

7。 Amavisd-new、SpamAssassin、およびClamavをインストールします

amavisd-new、SpamAssassin、およびClamAVをインストールするには、

を実行します。
 apt-get install amavisd-new spamassassin clamav clamav-daemon zoo unzip bzip2 arj nomarch lzop cabextract apt-listchanges libnet-ldap-perllibauthen-sasl-perlclamav-docsデーモンlibio-string-perllibio-socket-ssl- perl libnet-ident-perl zip libnet-dns-perl 

ISPConfig 3のセットアップではamavisd-newを使用して、SpamAssassinフィルターライブラリを内部でロードするため、SpamAssassinを停止してRAMを解放できます。

 service spamassassin stop 
update-rc.d -f spamassassin remove

ClamAVアンチウイルスシグネチャを更新し、Clamdサービスを開始します。更新プロセスには時間がかかる場合があります。中断しないでください。

 freshclam 
service clamav-daemon start

Ubuntu
  1. 完璧なサーバー-Ubuntu14.10(nginx、BIND、Dovecot、ISPConfig 3)

  2. 完璧なサーバー-Ubuntu15.10(nginx、MySQL、PHP、Postfix、BIND、Dovecot、Pure-FTPD、ISPConfig 3)

  3. 完璧なサーバー-Apache、PHP、MySQL、PureFTPD、BIND、Postfix、Dovecot、ISPConfig3.1を搭載したUbuntu16.10(Yakkety Yak)

  1. 完璧なサーバー-Apache、PHP、MySQL、PureFTPD、BIND、Postfix、Dovecot、ISPConfig3.1を搭載したUbuntu17.04(Zesty Zapus)

  2. 完璧なサーバー-Apache、PHP、MySQL、PureFTPD、BIND、Postfix、Dovecot、ISPConfig3.1を搭載したUbuntu17.10(Artful Aardvark)

  3. 完璧なサーバー-Ubuntu16.04(Nginx、MySQL、PHP、Postfix、BIND、Dovecot、Pure-FTPD、ISPConfig 3.1)

  1. 完璧なサーバー-Ubuntu14.04(nginx、BIND、MySQL、PHP、Postfix、Dovecot、ISPConfig 3)

  2. 完璧なサーバー-Ubuntu18.04(Nginx、MySQL、PHP、Postfix、BIND、Dovecot、Pure-FTPD、ISPConfig 3.1)

  3. 完璧なサーバー-Apache、PHP、MariaDB、PureFTPD、BIND、Postfix、Dovecot、ISPConfig3.2を搭載したUbuntu20.04