2026年10月4日 / 投稿

DebianとVirtualminで構成したVPSの不要サービスを停止する

2026年10月4日、Debian 13とVirtualminで構成したVPSを点検し、現在の用途に必要のないサービスを停止しました。Web、DNS、メール、VPN、監視の機能を維持しながら、印刷・機器探索・Wi-Fi関連のサービスを整理する作業です。

まずは動いているサービスと用途を確認する

Virtualminの管理画面だけで判断せず、実際に稼働しているサービス、待ち受けポート、自動起動の設定、ログを確認しました。CPUやメモリ、ディスク容量には余裕があり、今回は負荷対策として何でも止めるのではなく、サーバーの役割と照らし合わせて対象を選びました。

点検したVPSには無線インターフェースがなく、印刷機能やLAN内の自動機器探索も今回の運用では使っていません。そこで、次の4サービスを停止対象にしました。

停止したサービス

cups:印刷を管理するサービスです。VPSでプリンターを利用していないため停止しました。

cups-browsed:ネットワーク上のプリンターを探索するサービスです。印刷サービスと併せて停止しました。

avahi-daemon:mDNSを使って同じネットワーク内の機器やサービスを探索します。今回のVPSでは、この自動探索を使わないため停止しました。

wpa_supplicant:Wi-Fiなどの認証を扱うサービスです。今回の環境では無線接続を使用せず、有線やVPNの通信にもこのサービスを必要としていないため停止しました。

この判断は、今回確認したVPSの用途に基づきます。別の環境では印刷、機器探索、無線や有線の認証に使われている場合があるため、サービス名だけで一律に不要と決めないようにします。

停止だけでなく、再び起動する経路も整理する

systemdでは、サービスを停止しても、再起動時の設定や関連するソケット・パス監視をきっかけに再び起動することがあります。今回も、印刷と機器探索のサービスには関連する起動用ユニットがありました。

そのため、自動起動を無効にしたうえで、対象のサービスと関連ユニットをマスクし、停止状態を確認しました。マスクは、そのユニットが手動操作や依存関係から起動されることも防ぐ設定です。パッケージの削除は行っていません。

関連して停止・マスクしたのは、cups.socket、cups.path、avahi-daemon.socketです。最初の停止処理ではCUPS関連のジョブがキャンセルされたため、起動経路をマスクしてからソケット・パス・サービスの順に停止し、最終状態まで確認しました。

停止後の確認

4サービスと関連ユニットがすべてinactive(停止中)、masked(起動を禁止した状態)になっていることを確認しました。印刷サービスとmDNSの待ち受けもなくなっています。

その後、Nginx、BIND、Postfix、Dovecot、Webmin、Zabbix agent 2が引き続き稼働していることを確認しました。WireGuardのインターフェースと監視サーバーへの経路を確認し、VPN経由でZabbixの受信ポートへ接続できることも確かめています。

これはサービスの稼働状態と監視通信の確認です。メールの実送受信や全Webサイトの機能試験まで行ったわけではありません。また、サーバーの再起動は行っていないため、起動抑止については設定状態で確認しています。

確認に使ったコマンドの例

次の例は状態確認用です。停止済みの環境に変更を加えるコマンドではありません。

systemctl show cups.service cups-browsed.service avahi-daemon.service wpa_supplicant.service \
  cups.socket cups.path avahi-daemon.socket \
  -p Id -p ActiveState -p UnitFileState

systemctl is-active nginx named postfix dovecot webmin zabbix-agent2

必要になったら戻せる状態にしておく

サービスを再利用する際は、対象と関連ユニットのマスクを解除し、必要な自動起動と稼働状態を戻します。今回のようにパッケージを残しておけば、設定を見直して再利用できます。ただし、停止した全サービスをまとめて戻すのではなく、新しく必要になった機能に合わせて判断します。

今回は、点検で挙がったほかの設定やサービスには手を加えず、選んだ4サービスとその起動経路だけを変更しました。作業前後の状態を確認することで、役割を維持しながらVPSの構成を少し整理できました。