超高速Webサーバー「LiteSpeed」管理画面
超高速Webサーバー「 LiteSpeed 」とは?
概要は以下の記事にまとめました。
日本語化
LiteSpeedは、Web管理画面があり、ブラウザーを使って管理ができる。
管理画面は日本語に翻訳されており、右上の言語選択から「English」を「日本語」に変更する。
ヘルプも日本語に翻訳されている。(あまり使わない機能は、英語のままの箇所もある)
操作方法は直感的で迷わない。➕️ボタンを押すと追加。🔍️アイコンで設定の表示。🗑️のアイコンでデリート。
安全な再起動
sudo systemctl restart lsws
のような再起動は、gracefulではないので、行わない方がよい。
sudo /usr/local/lsws/bin/lswsctrl condrestart
を行うか、管理画面を使って安全に再起動した方がよい。
管理画面の証明書の変更
- 左メニューから、
WebAdminの設定
→リスナー
- リスナー名:
adminListener
をクリック -
SSL
タブをクリック - 秘密鍵と証明書のファイルを変更
ログインユーザーの追加と削除
-
WebAdmin Settings
のGeneral
をクリック -
Users
タブをクリック - ➕️ を押して新しいユーザーを追加する
-
User Name
は推測しにくい名前にする(会社名や自分の名前は避ける) - パスワードは、大文字・小文字・数字・記号より、長さが大事。
管理画面のポート番号を変更
デフォルトのポート番号は不正アクセスの攻撃を受けやすいので、変更することをお勧めする。
今回はポート番号を7080
から10090
に変更する。ポート番号は大きいほど探知されにくい。(小さい番号から試してくるスクリプトが多いから)
管理画面を使って変更
-
WebAdmin Settings
のListeners
をクリック -
adminListener
をクリック - 📝を押してフォーム画面に移動
-
Port
を7080
から10090
に変更する - 💾を押して保存
設定ファイルを直接修正
- 設定ファイルを開く
sudo nano /usr/local/lsws/admin/conf/admin_config.conf
-
listener
セクションのaddress
のポート番号を新しいポート番号に変更するlistener Default { address *:10090 }
UFWで新しいポートのアクセスを許可する
UFWを使っていなければこの操作は要らないが、UFWを使うことを強くお勧めする。
sudo ufw allow 10090/tcp
できれば、アクセスできるIPアドレスを限定した方がよい。UFWの詳しい使い方は以下の記事を参照。
PHPのバージョンを7.4から8.3に変更する
LiteSpeedのPHPは、LSPHP(LiteSpeedPHP)といい、LiteSpeed専用のFast-CGI型のPHPで、LiteSpeedの起動時に、モジュールとして読み込まれる。デフォルトのLSPHPのバージョンは7.4で、さすがに古いと思う。これを8.3に変更する。
aptでリポジトリからビルド済みバイナリをインストールする
LiteSpeedの管理画面には、PHPを最新のソースコードからビルドする機能があるが、パッケージ管理システムを使ったインストールの方が便利だろう。以下は、apt
でインストールする方法である。
LSPHPのインストール
-
apt search lsphp83
で存在しているか確認する -
apt install lsphp83
でインストール
インストールしただけでは自動的に切り替わらない。LiteSpeed側の設定で、利用するPHPモジュールのバージョンを変更する必要がある。
簡単な方法
恒久的にバージョンを切り替えるならこちらでよい。
- サーバー設定 → 外部アプリ → lsphp → 編集ボタン
- コマンドの
lsphp74/bin/lsphp
をlsphp83/bin/lsphp
に変更し、💾ボタンを押して保存 - LiteSpeedを再起動する
プロっぽい方法
頻繁にバージョンを切り替える必要があるなら、こちらをお勧めする。
外部アプリケーションを追加
- サーバー設定 → 外部アプリ → ➕️を押す
-
タイプは、
LiteSpeed SAPI アプリ
を選択する - 名前:lsphp83
- アドレス:uds://tmp/lshttpd/lsphp.sock
- 最大接続数:100
- 環境:
PHP_LSAPI_CHILDREN=10 LSAPI_AVOID_FORK=200M
- 初期リクエストタイムアウト(秒) :60
- リトライタイムアウト(秒):0
- 永続的な接続:はい
- 応答バッファリング:いいえ
- 自動起動:CGIデーモンを通して
- コマンド:lsphp83/bin/lsphp
- バックログ:100
- インスタンス:1
- プロセスソフトリミット:1400
- プロセスハードリミット:1500
スクリプトハンドラの定義を変更
- サーバー設定 → スクリプトハンドラ → サフィックスが
php
を編集する - ハンドラ名を
lsphp83
に変更する
PHPの拡張モジュールを追加する
sudo apt install lsphp83-apcu
sudo systemctl status lsws
仮想ホストの設定方法
仮想ホストの設定方法については、長くなったので以下の記事へ分離した。
Discussion