【クラウドサーバー】su/sudoコマンドの制限でセキュリティ強化
su / sudoコマンドはroot権限を使うコマンドです。
全てのコマンドを実行できるようにする便利なコマンドですが、その反面、悪意あるユーザー(以下、クラッカー)に使われると、非常に危険なコマンドになります。
ここでは、その対策としてsu / sudoコマンドのセキュリティ強化について2つご紹介します。
なお、具体的な手順はさくらVPS(CentOS 7)になりますが、他のクラウドサーバーでも同じ観点でセキュリティ対策できることが多いので、都度読み替えてご覧ください。
-
suコマンドの制限
-
sudoコマンドの制限
1. suコマンドの制限
suコマンドは他のユーザーに切り替えるコマンドです。
他ユーザーにはrootユーザーも含まれるため、実行できるユーザーを制限します。
(1.1) 設定ファイルを開く
$ sudo vi /etc/pam.d/su
(1.2) 設定ファイルの編集
wheelグループに所属するユーザーのみ実行を許可するため、下記記述のコメントアウトを外します。
- #auth require pam_wheel.so use_id
+ auth require pam_wheel.so use_id
(1.3) 許可ユーザーの追加
wheelグループに実行を許可するユーザーを追加します。
$ usermod -G wheel ユーザー名
以上で設定完了です。
許可したユーザーのみsuコマンドを実行できるか確認してください。
2. sudoコマンドの制限
sudoコマンドは他のユーザーとして任意のコマンドを実行するコマンドです。
一般的にはrootユーザーとしてコマンドを実行する時に使われるコマンドになります。
(2.1) 設定ファイルを開く
$ visudo
(2.2) 設定ファイルの編集
sudoコマンドの実行を許可するユーザーまたはグループを記述します。
ここではwheelグループを追加するため、下記のように追記します。
%wheel ALL=(ALL:ALL) ALL
以上で設定完了です。
許可したユーザーのみsudoコマンドを実行できるか確認してください。
まとめ
su / sudoコマンドは便利な反面、悪意あるユーザーに使用されると危険なコマンドになります。
実行できるユーザーを制限してセキュリティを強化しましょう。