Linuxのセキュリティ対策 サーバー編
(1)ソフトウェア管理
・OS(カーネル)のアップデート情報をチェックし最新のアップデートを必ず適用する
ディストリビューターからの情報をこまめにチェックし、アップデートする
・不要なソフトウェアをインストールしない
インストールの際のパッケージには最小構成(Minimal)を選ぶ
そこから必要なパッケージのみを個別にインストールするようにする
(2)ユーザー管理
・不要になったユーザーアカウントは削除する
使用されなくなったユーザーアカウントは「userdel」コマンドによって削除する
ユーザーアカウントの利用を再開する可能性がある場合は
とりあえず「passwd」コマンドでログインできないようにしておく
・パスワード漏えい対策に有効期限を設定する
パスワードは「chage」コマンドで有効期限を設定しておく
パスワードを定期的に変更することで不正アクセスを防止する
・ユーザーによる権限昇格を防止する
「pam_wheel.so」を設定し「su」コマンドを使用できるユーザーを制限する
root権限に昇格させると、どんな設定も変更できるので必ず制限する
さらに管理者権限の共有は絶対させない
(3)運用管理
・アクセス権を適切に設定する
ファイルやディレクトリには適切なパーミッション(アクセス権)を設定する
「chmod」コマンドによって「読み込み」「書き込み」「実行」の権限を設定しておく
ファイルを所有するユーザやグループについて、誰がどのような操作をするかを設定する
・不要なデーモンを起動させない
GUIのサーバ管理ツールを使わないなら
ランレベルを3に設定し、不要なデーモンを起動しないようにする
不必要なデーモンを起動させておくと、使用しないポートが開いたままの状態となる
・不要なSUIDを削除する
「find」コマンドを使用して、不要なSUIDが付与されているファイルがないかを確認し削除する
SUIDが設定されている実行ファイルは
誰が実行してもファイル所有者の権限で処理が実行される
・ログを正確に残す
ログファイルを保存しておく
ストレージ容量を圧迫するので、一定の量で別のディスクにバックアップする
NTPを使用してサーバの時刻を正確に維持しておく
(4)ネットワーク管理
・パケットフィルタリングを行う
iptablesなどでパケットフィルタリングを行う
パケットのヘッダに含まれるポートやIPアドレス情報、通信の方向などをチェックする チエックポリシーのチューニングも定期的に行う
・不要なポートを閉じる
「netstat」コマンドを実行し、現在開いているポート番号を確認して不要なポートを閉じる
・リモートアクセスで管理する場合はSSHを利用する
SSHは通信内容が暗号化されるため安全です
コメントを残す