超高速Webサーバー「LiteSpeed」管理画面

2024/11/11に公開

超高速Webサーバー「 LiteSpeed 」とは?

概要は以下の記事にまとめました。
https://zenn.dev/tomoakinagahara/articles/7c31d6d1fc828a

日本語化

LiteSpeedは、Web管理画面があり、ブラウザーを使って管理ができる。
管理画面は日本語に翻訳されており、右上の言語選択から「English」を「日本語」に変更する。
ヘルプも日本語に翻訳されている。(あまり使わない機能は、英語のままの箇所もある)

操作方法は直感的で迷わない。➕️ボタンを押すと追加。🔍️アイコンで設定の表示。🗑️のアイコンでデリート。

安全な再起動

sudo systemctl restart lswsのような再起動は、gracefulではないので、行わない方がよい。
sudo /usr/local/lsws/bin/lswsctrl condrestartを行うか、管理画面を使って安全に再起動した方がよい。

管理画面の証明書の変更

  1. 左メニューから、WebAdminの設定リスナー
  2. リスナー名:adminListenerをクリック
  3. SSLタブをクリック
  4. 秘密鍵と証明書のファイルを変更

ログインユーザーの追加と削除

  1. WebAdmin SettingsGeneral をクリック
  2. Users タブをクリック
  3. ➕️ を押して新しいユーザーを追加する
  4. User Name は推測しにくい名前にする(会社名や自分の名前は避ける)
  5. パスワードは、大文字・小文字・数字・記号より、長さが大事。

管理画面のポート番号を変更

デフォルトのポート番号は不正アクセスの攻撃を受けやすいので、変更することをお勧めする。
今回はポート番号を7080から10090に変更する。ポート番号は大きいほど探知されにくい。(小さい番号から試してくるスクリプトが多いから)

管理画面を使って変更

  1. WebAdmin SettingsListeners をクリック
  2. adminListener をクリック
  3. 📝を押してフォーム画面に移動
  4. Port7080から10090に変更する
  5. 💾を押して保存

設定ファイルを直接修正

  1. 設定ファイルを開く
    sudo nano /usr/local/lsws/admin/conf/admin_config.conf
    
  2. listenerセクションのaddressのポート番号を新しいポート番号に変更する
    listener Default {
        address *:10090
    }
    

UFWで新しいポートのアクセスを許可する

UFWを使っていなければこの操作は要らないが、UFWを使うことを強くお勧めする。

sudo ufw allow 10090/tcp

できれば、アクセスできるIPアドレスを限定した方がよい。UFWの詳しい使い方は以下の記事を参照。
https://zenn.dev/tomoakinagahara/articles/3ef0f6ab777af5

PHPのバージョンを7.4から8.3に変更する

LiteSpeedのPHPは、LSPHP(LiteSpeedPHP)といい、LiteSpeed専用のFast-CGI型のPHPで、LiteSpeedの起動時に、モジュールとして読み込まれる。デフォルトのLSPHPのバージョンは7.4で、さすがに古いと思う。これを8.3に変更する。

aptでリポジトリからビルド済みバイナリをインストールする

LiteSpeedの管理画面には、PHPを最新のソースコードからビルドする機能があるが、パッケージ管理システムを使ったインストールの方が便利だろう。以下は、aptでインストールする方法である。

LSPHPのインストール

  1. apt search lsphp83 で存在しているか確認する
  2. apt install lsphp83 でインストール

インストールしただけでは自動的に切り替わらない。LiteSpeed側の設定で、利用するPHPモジュールのバージョンを変更する必要がある。

簡単な方法

恒久的にバージョンを切り替えるならこちらでよい。

  1. サーバー設定 → 外部アプリ → lsphp → 編集ボタン
  2. コマンドのlsphp74/bin/lsphplsphp83/bin/lsphpに変更し、💾ボタンを押して保存
  3. LiteSpeedを再起動する

プロっぽい方法

頻繁にバージョンを切り替える必要があるなら、こちらをお勧めする。

外部アプリケーションを追加

  1. サーバー設定 → 外部アプリ → ➕️を押す
  2. タイプは、LiteSpeed SAPI アプリ を選択する
  3. 名前:lsphp83
  4. アドレス:uds://tmp/lshttpd/lsphp.sock
  5. 最大接続数:100
  6. 環境:
    PHP_LSAPI_CHILDREN=10
    LSAPI_AVOID_FORK=200M
    
  7. 初期リクエストタイムアウト(秒) :60
  8. リトライタイムアウト(秒):0
  9. 永続的な接続:はい
  10. 応答バッファリング:いいえ
  11. 自動起動:CGIデーモンを通して
  12. コマンド:lsphp83/bin/lsphp
  13. バックログ:100
  14. インスタンス:1
  15. プロセスソフトリミット:1400
  16. プロセスハードリミット:1500

スクリプトハンドラの定義を変更

  1. サーバー設定 → スクリプトハンドラ → サフィックスがphpを編集する
  2. ハンドラ名をlsphp83に変更する

PHPの拡張モジュールを追加する

  1. sudo apt install lsphp83-apcu
  2. sudo systemctl status lsws

仮想ホストの設定方法

仮想ホストの設定方法については、長くなったので以下の記事へ分離した。
https://zenn.dev/tomoakinagahara/articles/569c09a9cfcab0

Discussion