web-dev-qa-db-ja.com

実稼働LAMPサーバーを適切にセットアップして保護するにはどうすればよいですか?

このテーマに関する包括的な情報を見つけることは非常に困難です。 「apt-get install Apache2」のように簡単なインストールの実行方法に関する短いチュートリアル、または古いチュートリアルを見つけました。だから、Ubuntuコミュニティの仲間のメンバーから専門的な情報が得られることを望んでいました:D

システムのインストールを通じて、LAMP、SAMBA、およびSSHをインストールした通常のUbuntu Server 11.04を実行しました。しかし、仮想ホストの設定と、サーバーをWebに公開するのに十分なシステムの安全性を確保するのに問題があります。

私はやや従​​いました このチュートリアル ここまで。

/ etc/Apache2/sites-availableに3つのサイトがあります。これらはすべて異なるサイト名を除いて次のようになります。

<VirtualHost example.com>
   ServerAdmin webmaster@localhost
   ServerAlias www.edunder.se
   DocumentRoot /var/www/sites/example
   CustomLog /var/log/Apache2/www.example.com-access.log combined
</VirtualHost>

そして、コマンドa2ensiteでそれらを有効にしたので、/ etc/Apache2/sites-enabledにシンボリックリンクがあります

私の/ etc/hostsファイルには次の行があります。

127.0.0.1 localhost
127.0.1.1 Ubuntu.lan Ubuntu
127.0.0.1 localhost.localdomain localhost example.com www.example.com
127.0.0.1 localhost.localdomain localhost example2.com www.example2.com
127.0.0.1 localhost.localdomain localhost example3.com www.example3.com

そして、私はブラウザからそれらの1つにしかアクセスできません(テスト目的でサーバーにlynxがインストールされています)ので、私はそれらを設定していないと思います正しくアップ:)

安全で適切なセットアップを行うにはどうすればよいですか?私もMySQLを使用しており、SSHを安全にセットアップするには このチュートリアル で十分だと思います。私は自分のサーバーをセットアップするのが初めてなので(以前にXAMPPを実行しただけです)、Apacheの構成をよりよく理解するのを助けてください。また、ファイアウォールのセットアップ方法についてもアドバイスしてください:D

8
Niklas

IPベースではなく名前ベースの仮想ホスティングを使用する必要があることをApacheに伝える必要があります。したがって、以下を/etc/Apache2/Apache2.confに追加して定義します。

NameVirtualHost ip.address:port

そして、各仮想ホストはポートを定義する必要があります。

<VirtualHost example.com:80>
1
user8290

他のコンピューターを接続できるようにする場合は、パブリックIPも追加する必要があると思います。現時点では、ループバックのみが/ etc/hostsに記載されています。他のIPも含める必要があります。

0