プレビュー版
このガイドはプレビュー版です。内容は今後変わることがあります。
リモートスキャンで登録する#
使う方法だけ読む
スキャナを入れた1台のサーバ(スキャナサーバ)から、SSH で同じネットワーク内のほかのサーバに入り、代わりにスキャンする方法です。スキャンされる側のサーバには、スキャナを入れる必要がありません。
リモートスキャンの仕組み#
flowchart LR
S["スキャナサーバ<br>(ローカルスキャン済みの1台)"] -->|SSH| T1["対象サーバ1"]
S -->|SSH| T2["対象サーバ2"]
S -->|SSH| T3["対象サーバ3"]
S -->|"結果をまとめて送信"| F["FutureVuls"]
くわしい仕組み(読まなくても手順は進められます)
「リモート」は、インターネット越しに FutureVuls から遠隔でスキャンするという意味ではありません。お客様の管理サーバから、社内ネットワークのサーバをスキャンします。
対象のサーバは FutureVuls に1台ずつ登録され、台数分が課金の対象になります。
用意するもの#
| 用意するもの | 内容 |
|---|---|
| スキャナサーバ1台 | ローカルスキャンの手順でスキャナを入れたサーバ。対象のサーバと同じネットワークにあること |
| SSH の公開鍵認証でログインできるユーザ | 対象のサーバにログインするユーザ名、秘密鍵、公開鍵。パスワード認証には対応していません |
| 対象のサーバ側の準備(Linux) | 依存パッケージのインストールと /etc/sudoers の設定。手順はリモートスキャンを参照します |
対象が Windows のサーバでもスキャンできます(管理者ユーザを推奨)。その場合は、次の点も準備します。
- 対象の各 Windows に SSH の設定が必要です。設定ファイルにも SSH の接続情報を書きます。
- 対象の Windows が Windows Update に接続できない場合は、cab ファイル方式を使います。cab ファイル(wsusscn2.cab、約800MB)を、対象の Windows が読める場所に置きます(各サーバに置くか、ファイルサーバにまとめます。まとめる方式には、Linux のスキャナ v0.24.9 以上が必要です)。詳しくはリモートスキャンとブログ記事をご覧ください。
手順#
1. 秘密鍵を置き、手動で SSH できることを確かめる#
秘密鍵の所有者を vuls-saas ユーザにし、権限を 600 にします。そのうえで、vuls-saas ユーザとして対象のサーバに一度ログインします。
# スキャナサーバで root として実行
cp target.pem /home/vuls-saas/.ssh/
chown vuls-saas:vuls-saas /home/vuls-saas/.ssh/target.pem
chmod 600 /home/vuls-saas/.ssh/target.pem
# vuls-saas ユーザで対象サーバに一度ログインする
su - vuls-saas
ssh -i ~/.ssh/target.pem ec2-user@192.168.0.100
exit
手動で一度ログインしておく理由
手動で一度ログインするのは、初回接続時のホスト確認(fingerprint)を記録するためです。これをしないと、自動スキャンのときに接続が止まります。
2. 設定ファイルに対象のサーバを追記する#
スキャナサーバの /opt/vuls-saas/config.toml に、対象のサーバを1台につき1ブロック追加します。[servers.xxx] の xxx が FutureVuls 上のサーバ名になります。
[default]
port = "22"
keyPath = "/home/vuls-saas/.ssh/target.pem"
scanMode = ["fast-root"]
[servers]
[servers.localhost] # インストーラが自動で設定(スキャナサーバ自身)
host = "localhost"
port = "local"
[servers.web01] # 対象サーバ1台ごとに1ブロック追加
user = "ec2-user"
host = "192.168.0.100"
| 設定項目 | 内容 |
|---|---|
| user | SSH でログインするユーザ名 |
| host | IP アドレス、または名前解決できるホスト名 |
| port | SSH のポート。共通なら [default] に書きます |
| keyPath | 秘密鍵の場所。共通なら [default] に書きます |
範囲でまとめて登録したいときは、host = "192.168.0.0/28" のように CIDR で書けます。ただし、失敗する IP アドレスが1つでもあると、スキャンは途中で止まります。
CIDR の範囲には、すでにリモートスキャンで登録したサーバを含めないでください。含めると UUID が新しく上書きされ、FutureVuls では別のサーバとして扱われます。上書きされた場合は、設定ファイル(/opt/vuls-saas/config.toml)を直接編集して元の UUID に戻します。元の UUID は、「サーバ・製品」タブのサーバ詳細で確認できます(CIDR レンジ指定リモートスキャンの注意点)。
UUID は初回のスキャンのときに自動で発行されます。自分で書く場合は、ほかのサーバと重複させないでください。
3. スキャンを実行して確認する#
sudo -H -u vuls-saas /opt/vuls-saas/vuls-saas.sh
設定ファイルに書いたサーバが、サーバ一覧に1行ずつ追加されれば完了です。以後は毎日自動でスキャンされます。
よくあるつまずき#
| 表示・症状 | 原因と対処 |
|---|---|
Permission denied (publickey) |
鍵の所有者と権限(600)、user の綴りを確認します |
Host key verification failed |
手順1の手動 SSH ログインをやり直します |
sudo: a password is required |
対象のサーバの /etc/sudoers の設定を確認します |
| 画面に出ない | /opt/vuls-saas/report.log に送信のエラーがないか(プロキシなど)を確認します |
接続や sudo の問題は /opt/vuls-saas/scan.log、送信の問題は /opt/vuls-saas/report.log に記録されます。
つまずいたとき#
うまくいかないときは、つまずいたとき(よくある質問)をご覧ください。
それでも解決しない場合は、お問い合わせ窓口からご連絡ください。設定ファイル(鍵やパスワードは除く)、エラーメッセージ、scan.log を添えていただくと、調査が早くなります。
さらに詳しく知りたいとき#
次に読むページ#
登録が終わったら、設定② サーバ・製品を登録するの「初期範囲のサーバをすべて登録したら」で確認します。