よく使う Web サーバー関連コマンド 【Linux】

Linux

Web サーバーに関連する Linux コマンドについてまとめておきます。

なお、以下の環境を想定しています。
環境:レンタルサーバー(ConoHa VPS)、CentOS、Apache

背景

サーバー(VPS)をレンタルし、WordPress でウェブサイトを作っています。
サイトの運用にあたり、Web サーバーの知識が必要になってきます。
そこで、よく使うコマンドについてまとめておきます。

Webサーバー Apache 関連でよく使うコマンド

Web サーバーの起動

# systemctl start httpd

Web サーバーの停止

# systemctl stop httpd

Web サーバーの再起動

# systemctl restart httpd

使用しているポートの確認方法

# lsof -i -P

→ デフォルトでは、http 用に 80番、https 用に 443番を Listen する設定になっていると思います。

ポートのコンフィグ設定の表示

# httpd -S

Web サーバーの設定ファイルと内容

デフォルトの場合、Apache の設定ファイル httpd.conf は、以下のコマンドで編集できます。

# vi /etc/httpd/conf/httpd.conf

上記の httpd.conf を参照すると、以下が定義されています。

Listen 80
Web サーバーが参照するポート番号
ServerName XXXXXX.com:443
独自ドメインの設定 (https 設定後の例)
DocumentRoot “/var/www/html”
ドキュメントルートの設定

このパスが Web サーバー動作時の公開フォルダとなります。
Apache をインストールした直後では、ドキュメントルートのデフォルトは “/var/www/html” となっています。(最後の html はフォルダですが、スラッシュは不要です。)

セキュリティに関して

Web サイトを運用するにあたり、Apache のインストールと SSL 認証の設定をし、ホームページ、WordPress を順次稼働させました。https のホームページにアクセスしてもらう意図です。
ところが、ドメインを取得して公開10日もしないうちに、海外からサーバーの IP アドレスへの直接アクセス、http、WordPress などの PHP へのアクセスが続いています。

デフォルト設定のまま、Web サーバーを稼働させて、ホームページや WordPress を公開、放置しておくと、時間の問題(数撃ちゃ当たる方式)でパスワードが推測されたり、乗っ取られたりといった問題が起こりそうです。

いくつかセキュリティ上の設定を進めていますが、まずは上記の Listen 80 (デフォルト)を別番号に書き換え(※※)、http でのアクセスを拒否する設定としてみました。そうしたところ、怪しいアクセスはかなり減りました。
どうやら、ドメインを新規に開設すると、ドメインの公開情報を自動取得し、複数の PC から自動巡回で機械的にアクセスしてきているようです。
デフォルト設定のままにしていると、管理者のユーザ名や、PHP のデバッグ情報を抜き出す?、インジェクション攻撃?などしているようで、要注意です。

※ 追記 2020年9月  後日、WordPress に SiteGuard WP Plugin を入れて、管理者ログインの機械的なアタック(ブルートフォースアタック、総当たり攻撃)の対策をしました。プラグインの設定後、Listen 80 を無効化しました。
また、http, https へのインジェクション攻撃と思われるアクセスが続いていました。そこで、インジェクション攻撃があると、404 Not Found に飛ばすよう WordPress の php ファイルをカスタマイズしたところ、機械的なアクセスはかなり減りました。

まとめ

Web サーバーを運用する際によく使うコマンドについてまとめました。

Web サーバーやホームページの構築中は無防備になりやすく危ないです。
そこで、設定中は Web サーバーをこまめに停止して、不要なアクセスは拒否する設定をしておくなど、対策を入れていったほうがよさそうです。
他にも、Web サーバーの運用に関する手順などをまとめています。もし関心があるようでしたら、関連リンクなども参照してみてください。

関連リンク
・ Web サーバーの構築手順まとめ 【Linux】
・ 管理画面にログインできなくなったとき 【SiteGuard WP Plugin】
・ Linux のアクセスログを確認する 【Webサーバー】
・ アパッチ Apache とは何か
・ 
エラーコードのまとめ 【Webサーバー】

タイトルとURLをコピーしました