System Security Checkerの紹介
機能
System Security Checkerは、顧客が作成したサーバのOSとApacheのセキュリティ設定を点検し、セキュリティの観点から適切な値に設定できるよう案内します。
特徴
KISAのセキュリティ設定ガイドとNAVERのセキュリティ設定ポリシーに基づき、利便性と安全性を共に高められる項目を中心に選別して点検します。 それぞれの項目は、セキュリティ上重要な設定を点検し、脆弱な場合には正しく設定できるようにガイドを提供します。
期待効果
System Security Checkerを通じてセキュリティ設定を点検し、ガイドにしたがって設定を修正するとサーバのセキュリティ向上が期待できます。 例えば、ユーザーのパスワードの長さを8文字以上、最大有効期間を90日以下に設定すると、外部攻撃者の総当たり攻撃によるサーバへの侵入を未然に防ぐことができます。 このように、比較的簡単な設定をいくつか行うだけで、サーバのセキュリティを向上させ、サービスをより安全にできます。
ご使用の前に
Q. System Security Checkerとは何ですか?
- System Security Checkerは、顧客のVMで起動するエージェントを提供します。 顧客が希望するサーバまたは特定時点にエージェントをダウンロードして、直接点検を行う方式のシステムです。
- System Security Checkerは、顧客が作成したサーバのセキュリティ設定を点検します。 基本設定をセキュリティの観点から適切な値に設定できるように案内します。
Q. サーバを点検するにはどのような権限が必要ですか?
- サーバを点検するには管理者(root)権限が必要です。 一部の重要なシステムファイルを確認するには、管理者権限が必要です。必ず管理者権限でエージェントを実行してください。
Q. System Security Checkerの点検範囲について教えてください。
- 顧客が利用するサーバのOS(Windows、Linux)
- 顧客が活用するWAS(Apache、Tomcat、Nginx)の設定
Q. System Security Checkerはどのように使用しますか?
次の手順にしたがって点検を行ってください。
コンソールアクセスと利用申請:NAVERクラウドコンソールにアクセスし、[Security > Security Checker > System Security Checker]メニューで「利用申請」をクリックしてから規約に同意および申請
- 点検するVMにターミナルからアクセス:アクセスガイドにしたがってターミナルからサーバに直接アクセス
- エージェントのダウンロード:点検に必要なエージェントを直接ダウンロード
- エージェントの実行:エージェントを実行すると、サーバのセキュリティ設定が自動的に点検
- 結果確認:NAVERクラウドコンソールにアクセスし、[Security > Security Checker > System Security Checker]メニューで点検結果を確認
Q. 点検時間はどのくらいかかりますか?
- 一般的に最大5秒を超えることはありません。
- 点検が正常に終了しない場合は、60秒を超えると強制終了するように設計されています。 強制終了の判断基準は基本的に60秒で、-t(--timeout)オプションから秒単位で設定できます。
Q. 一度点検してから再実行したのですが、エージェントが実行できません。
- 5分(300秒)以内に同じ対象に対する点検を繰り返すと、次のようなエラーメッセージが表示されます。
- Project Execution Time Interval (linux) : 5 min (over 300 seconds)
- しばらく待って、5分が過ぎてから再度点検してください。
Q. 利用を解約したら、過去の点検履歴が表示されなくなりました。
利用申請以降の点検結果のみ表示されるように設計されています。 過去の点検履歴の閲覧を継続して希望する場合は、利用の解約を慎重に判断してください。
点検方法
Linux点検方法
ステップ1. コンソールアクセスと利用申請
NAVERクラウドコンソールにアクセス:https://console.ncloud.com
左のメニューエリアで「System Security Checker」商品メニューをクリック
左のメニューに商品名が表示されない場合、以下のように「All Product」で該当する商品名の左にある星印をクリックしてブックマークに追加
「利用申請」をクリック
ステップ2. 点検するVMにアクセス
- Linuxサーバアクセスガイド
- 現在は、Linux 64 bit OSのみサポートしています。 (今後、32bitもサポート予定)
ステップ3. エージェントのダウンロード
VMで実行されるエージェントをダウンロード
# wget http://ossc.ncloud.com:10080/download/ncp_secuagent.tar.gz
ステップ4. エージェントの実行
root権限で点検を行う必要があります。
エージェントの圧縮解除
# tar xvzf ncp_secuagent.tar.gz ncp_secuagent
エージェントの実行
# ./ncp_secuagent [Project : linux] => Success Apacheを点検する場合、以下のようにオプションを追加 # ./ncp_secuagent -p apache Tomcatを点検する場合、以下のようにオプションを追加 # ./ncp_secuagent -p tomcat Nginxを点検する場合、以下のようにオプションを追加 # ./ncp_secuagent -p nginx
- 結果にSuccessと表示されると、点検が正常に終了します
使用できるオプション
- -h [ --help ] ヘルプを表示
- -v [ --version ] エージェントのバージョンを表示
- -d [ --debug ] デバッグのためのメッセージを表示
- -t [ --timeout ] arg (default : 60 sec), 1秒単位で設定でき、timeout時間内に点検が終了しない場合は強制終了
- -p [ --project ] arg (finance, apache, tomcat, nginx) - Apache、Tomcat、またはNginxのセキュリティ設定を点検
- finance:金融保安院の電子金融基盤施設を基準としたLinux OSのセキュリティ設定点検をサポート
ステップ5. 結果確認
NAVERクラウドコンソールの[Security > Security Checker > System Security Checker]メニューで点検結果を確認
Reportで点検結果がBadの項目のみを閲覧する場合
「詳細結果と処置」で赤いボックスで表示された部分の「点検結果」を「Bad」に指定して、検索ボタンをクリック
画面下の「Report」ボタンをクリックすると、「Bad」項目のみReportに表示される。
危険度が「Critical」の項目のみを閲覧する場合
- 「詳細結果と処置」で「危険度」を「Critical」に指定して、検索ボタンをクリック
- 画面下の「Report」ボタンをクリックすると、危険度が「Critical」の項目のみReportに表示される。
ステップ6. 詳細レポート
- 「レポート」ボタンをクリックして詳細レポートを確認
詳細レポートには、全体点検項目だけでなく、ステップ5のように特定条件を満たす項目のみも表示できる。
Windowsの点検方法
ステップ1. コンソールアクセスと利用申請
- NAVERクラウドコンソールにアクセス:https://console.ncloud.com
- 左のメニューエリアで「System Security Checker」商品メニューをクリック
- 「利用申請」をクリック
ステップ2. 点検するVMにアクセス
- 現在は、Windows 64 bit OSのみサポートしています。 (今後、32bitもサポート予定)
ステップ3. エージェントのダウンロード
- VMで実行されるエージェントをダウンロード
インターネットブラウザで下記のURLにアクセスしてダウンロード
# http://ossc.ncloud.com:10080/download/ncp_secuagent.zip
圧縮解除
ステップ4. エージェントの実行
- ncp_secuagentファイルのあるディレクトリで「Shift + マウス右クリック」
ポップアップメニューで「ここでコマンドウィンドウを開く(W)」をクリック
エージェントの実行
cmd> ncp_secuagent.exe [project : windows] => Success
以下のようなメッセージが表示されると、点検が正常に終了した状態
[project : windows] => Success
使用できるオプション
- -h [ --help ] ヘルプを表示
- -v [ --version ] エージェントのバージョンを表示
- -d [ --debug ] デバッグのためのメッセージを表示
- -t [ --timeout ] arg (default : 60 sec), 1秒単位で設定でき、timeout時間内に点検が終了しない場合は強制終了
ステップ5. 結果確認
- NAVERクラウドコンソールの[Security > Security Checker > System Security Checker]メニューで点検結果を確認
本商品は、グローバルリージョンサービスとしても提供されています。
Troubleshooting
1. ERROR (update doesn't running)
症状:サーバ点検時に次のようなエラーメッセージが表示されます。
root@hostname ~]# ./ncp_secuagent [Project : linux] => Fail => [stdout]: ERROR(update doesn't running) : cmd(yum install perl-libwww-perl) not work.
原因
- System Security Checkerは、サーバのセキュリティを点検するためにperl関連パッケージを必ずインストールする必要があります。
- yumコマンドでパッケージのインストールに失敗した場合、上のようなエラーが発生します。
- 点検が正常に行われなかったため、このような場合には課金されません。
解決方法
rpmdbエラーの場合(Error: rpmdb open failed)
# yum list | grep perl-libwww-perl error: rpmdb: BDB0113 Thread/process 14277/139717220628288 failed: BDB1507 Thread died in Berkeley DB library error: db5 error(-30973) from dbenv->failchk: BDB0087 DB_RUNRECOVERY: Fatal error, run database recovery error: cannot open Packages index using db5 - (-30973) error: cannot open Packages database in /var/lib/rpm CRITICAL:yum.main: Error: rpmdb open failed
- yum listコマンドで確認し、「rpmdb open failed」と表示された場合はrpmdbを初期化すると解決できます。
rpmdbの初期化方法
# rm -f /var/lib/rpm/__db* # rpm -vv --rebuilddb
2. サーバの「CentOS-Base.repo」ファイルが変更された場合
- 症状:System Security Checkerを実行した後、「/etc/yum.repos.d/CentOS-Base.repo」ファイルが変更された
- 原因
- System Security Checkerは、サーバのセキュリティを点検するためにperl関連パッケージを必ずインストールする必要があります。
- Secure Zoneや外部とのアクセスが遮断されているネットワークの場合、インターネットにアクセスできないため、基本的に設定されたリポジトリからパッケージをダウンロードできません。
- 設定の点検中には、ncloudの内部に別途構築したリポジトリからパッケージをダウンロードするために、CentOS-Base.repoファイルを一時的に修正します。
- 一時的に修正したファイルは、点検終了後に元の状態に復元されますが、異常終了などの理由で復元されずに変更された状態のまま残ることもあります。
- 解決方法
- バックアップファイルを利用して、以下のように復元できます。
mv -f /etc/yum.repos.d/CentOS-Base.repo_backup /etc/yum.repos.d/CentOS-Base.repo
- バックアップファイルを利用して、以下のように復元できます。