CentOS 7にApacheをインストールする方法
CentOS 7サーバーにApache 2.4をインストールする方法を説明します。安定したウェブサーバーを構築するための前提条件と手順を解説します。
サーバーを保護するときに簡単に近道を取ることができますが、攻撃者がサーバーのいずれかにrootアクセス権を取得した場合、データが失われる危険があります。単純なインストールでも、事前にサーバーを保護する必要があります。サーバーの保護は幅広いトピックであり、サーバーで実行されているOSとアプリケーションによって異なります。
このチュートリアルでは、CentOS 6でのApacheの保護に焦点を当てています。インストール後に、特権の昇格や特権不足の攻撃から身を守るために実行できる手順がいくつかあります。
さっそく始めましょう。
もちろん、ApacheまたはPHPをインストールしていない場合は、ここでインストールする必要があります。rootユーザーとしてこのコマンドを実行するか、sudoを使用します。
yum install httpd php
Apacheがインストールされたので、さあ、それを保護し始めましょう。まず、所有者以外のユーザーが他のユーザーのディレクトリを表示できないようにする必要があります。すべてのホームディレクトリを700にchmodして、ホームディレクトリのそれぞれの所有者だけが自分のファイルを表示できるようにします。このコマンドをrootとして実行するか、sudoを使用します。
chmod 700 /home
chmod 700 /home/*
chmod 700 /home/*/*
ワイルドカードを使用することにより、現在ホームディレクトリにあるすべてのファイルをカバーしています。
Apacheにパッチを適用する前に、まず、パッチが適用されたパッケージを含むリポジトリをインストールする必要があります。root(またはsudo)として以下のコマンドを実行します。
yum install epel-release
yum install httpd-itk
「apache2-mpm-itk」を使用すると、仮想ホストに基づいてPHPを実行するユーザーを指定できます。新しい構成オプションが追加さAssignUserId virtualhost-user virtualhost-user-group
れ、特定のユーザーアカウントでユーザーコードを実行するようApache / PHPに指示できます。
このサーバーを共有している場合は、Apacheの仮想ホストをすでに作成していると思います。その場合は、手順4にスキップできます。
以下のテンプレートに従って、Apacheで仮想ホストを作成できます。
NameVirtualHost mytest.website
<VirtualHost mytest.website>
DocumentRoot /home/vhost-user/public_html
ServerName mytest.website
</VirtualHost>
お気に入りのテキストエディターを開いて/etc/httpd/conf.d/example-virtualhost.conf
、上記のコンテンツを追加します。nanoを使用するためのコマンドは次のとおりです。
nano /etc/httpd/conf.d/example-virtualhost.conf
ここで設定を説明しましょう。「NameVirtualHost」を指定すると、実際には、1つのIPで複数のドメインをホストしていることをWebサーバーに通知します。さて、この例ではmytest.website
、サンプルドメインとして使用しました。それをあなたのもの、またはあなたが選んだドメインに変更してください。DocumentRoot
コンテンツがどこにあるかをApacheに伝えます。ServerName
ApacheにWebサイトのドメインを伝えるために使用するディレクティブです。そして最後の1つのタグ</VirtualHost>
は、仮想ホスト構成の終わりであることをApacheに伝えます。
前述のように、サーバーのセキュリティ保護には、Apache / PHPを各仮想ホストの個別のユーザーとして実行することが含まれます。パッチを適用した後、Apacheにこれを実行するように指示するのは簡単です。実行する必要があるのは追加することだけです。
AssignUserId vhost-user vhost-user-group
...あなたの構成に。このオプションを追加した後の仮想ホストの例は次のとおりです。
NameVirtualHost mytest.website
<VirtualHost mytest.website>
DocumentRoot /home/vhost-user/public_html
ServerName mytest.website
AssignUserId vhost-user vhost-user-group
</VirtualHost>
魔法はで始まる行にありAssignUserId
ます。このオプションでは、Apache / PHPに次のユーザー/グループとして実行するように指示しています。
この手順は非常に簡単です。rootユーザーとして次のコマンドを実行して、Apacheの構成ファイルを開くだけです。
nano /etc/httpd/conf/httpd.conf
「ServerTokens」を見つけ、その後のオプションを「ProductOnly」に変更します。これは、Apacheに「Apache / 2.2」などの代わりに「Apache」であることだけを明らかにするように指示します。
サーバーを保護したので、Apacheサーバーを再起動する必要があります。これを行うには、次のコマンドをrootまたはsudoで実行します。
service httpd restart
これらは、サーバーを保護するために実行できるいくつかの手順にすぎません。繰り返しになりますが、サーバーでWebサイトをホストしているのが信頼できる人物である場合でも、保護することを計画する必要があります。上記のシナリオでは、ユーザーアカウントが侵害されても、攻撃者はサーバー全体にアクセスすることはできません。
CentOS 7サーバーにApache 2.4をインストールする方法を説明します。安定したウェブサーバーを構築するための前提条件と手順を解説します。
CentOS 7にSeafileサーバーをインストールする方法。Seafile(コミュニティバージョン)は、ownCloudに似た無料のオープンソースファイル同期および共有ソリューションです。
CentOS 7にGraylogサーバーをインストールし、ログ管理を行う方法を学びます。
CentOS 7サーバーにApache 2.4をインストールする方法を説明します。安定したウェブサーバーを構築するための前提条件と手順を解説します。
FreeBSD 11.1におけるBlacklistdのインストール方法について詳しく解説します。この方法を通じて、強力なセキュリティ対策を実装できます。
サーバーマネージャーを使用して、Windows Serverの管理が向上します。セキュリティリスクを軽減し、効率的な管理を実現します。
CentOS 7にSeafileサーバーをインストールする方法。Seafile(コミュニティバージョン)は、ownCloudに似た無料のオープンソースファイル同期および共有ソリューションです。
Snortは無料のネットワーク侵入検知システムです。最新の方法で、SnortをDebianにインストールし、設定する手順を紹介します。ネットワークのセキュリティを強化しましょう。
CentOS 7にGraylogサーバーをインストールし、ログ管理を行う方法を学びます。
WindowsサーバーでWebサイトを実行している場合、電子メールも受信できるようにするためにhMailServerを使用する方法を解説します。
FiveMサーバーをUbuntu 19.04にインストールするための詳細なガイド。必要条件からインストール、起動、トラブルシューティングまで、すべてのステップを含みます。
Debian 10にWebDAVをデプロイする方法を学び、WsgiDAVとSSL証明書で安全な接続を実現しましょう。
ヘルスケアにおけるAIは、過去数十年から大きな飛躍を遂げました。したがって、ヘルスケアにおけるAIの未来は、日々成長を続けています。