Pandora: Documentation ja: Anexo Configurando SSHyFTP

From Pandora FMS Wiki
Jump to: navigation, search

Pandora FMS ドキュメント一覧に戻る

1 Pandora FMS へのデータ取り込みのための SSH 設定

Pandora FMS で標準の転送方法(tentacle)を使用できない場合があります。これは、Perl が無い Unix システム(ESX システムなど)を使用している場合で、古いシェルスクリプトのエージェントを使用する場合です。 この場合は、FTP または SSH を使用してファイルを転送することができます。

Pandora FMS は、SSH プロトコルを使用して、エージェントによって生成された XML データパッケージをサーバにコピーできます。 設定するには、次の手順を実行します。

ステップ 1. Pandora FMS サーバがインストールされているホストに "pandora" ユーザを作成します。このユーザーは SSH を介してデータを受信します。 Pandora FMS サーバがすでにインストールされている場合は、このユーザはすでに作成済です。 次のコマンドを使用して、このユーザに強力なパスワードを設定します。

 passwd pandora

ステップ 2. サーバ内で、パーミッション 750 およびユーザ pandora:root で/home/pandora/.ssh ディレクトリを作成します。

ステップ 3. SSH を使用する必要があるエージェントの各システムで、キーのペアを作成します。 これを行うには、Pandora FMS エージェントの実行に使用されるユーザで次のコマンドを実行します。

# ssh-keygen 

いくつかの質問が表示されます。Enter キーを押すだけで回答できます。 このユーザの公開/秘密鍵がシステムに作成されます。 次に、データの送信先である Pandora FMS サーバであるターゲットシステムにコピーします。

ステップ 4. 公開鍵を Pandora FMS サーバにコピーします。 作成された公開鍵をコピーするには、2つの方法があります。

手動で、公開鍵ファイルのコンテンツを、エージェントが存在するシステムから、Pandora FMS サーバの /home/pandora/.ssh/authorized_keys (pandora:root でパーミッションが 600 である必要があります) にコピーします。

エージェントがあるシステムで生成される公開鍵ファイルは、/root/.ssh/id_rsa.pub です。 このファイルには次のようなものが含まれます。

ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAzqyZwhAge5LvRgC8uSm3tWaFV9O6fHQek7PjxmbBUxTWfvNbbswbFsF0esD3COavziQAUl3rP8DC28vtdWHFRHq+RS8fmJbU/VpFpN597hGeLPCbDzr2WlMvctZwia7pP4tX9tJI7oyCvDxZ7ubUUi/bvY7tfgi7b1hJHYyWPa8ik3kGhPbcffbEX/PaWbZ6TM8aOxwcHSi/4mtjCdowRwdOJ4dQPkZp+aok3Wubm5dlZCNLOZJzd9+9haGtqNoAY/hkgSe2BKs+IcrOAf6A16yiOZE/GXuk2zsaQv1iL28rOxvJuY7S4/JUvAxySI7V6ySJSljg5iDesuWoRSRdGw== [email protected]

自動で行うには次のコマンドを実行します。

ssh-copy-id [email protected]_ip

"pandora" ユーザのパスワードを要求します。これが確認されると、次のようなメッセージが表示されます。

Now try logging into the machine, with "ssh '[email protected]_ip'", and check in:
  .ssh/authorized_keys
to make sure we haven't added extra keys that you weren't expecting.

エージェントのマシンから root ユーザで、Pandora FMS サーバの "pandora" ユーザへ自動接続が可能であることを確認します。それが機能しないと、エージェントは SSH を介してデータを送信できません。

この方法が、エージェントからデータを Pandora FMS サーバの /var/spool/pandora/data_in にコピーするのに使われます。

/var/spool/pandora/data_in ディレクトリがすでに存在し、ユーザ «pandora» に書き込み権限があることを確認してください。そうでない場合は機能しません。

最後に、エージェント設定を変更して、コピー方法を tentacle ではなく ssh に設定します。 これは /etc/pandora/pandora_agent.confファイルの transfer_mode 設定トークンで行います。

1.1 SSH サーバのセキュリティ強化

Pandora FMS は、特に sftp/ssh2(scp) を使用して、エージェントからサーバにデータファイルをコピーします。 このため、«pandora» ユーザを待ち受ける SSH2 サーバを備えた少なくとも 1つのデータサーバが必要です。 これは、厳密にセキュリティ保護する必要があるネットワークにとって重大なリスクになる可能性があります。 Open SSH2 は 非常に 安全ですが、コンピュータのセキュリティに関しては、絶対に安全なものはないため、"より安全" にするための対策を講じてください。

FTP を介したアクセスに制限を設定するのと同じように、SSH を介した特定のユーザのアクセスを禁止することも可能です。

それを行うするには、"pandora" ユーザの設定を変更します。 このユーザにはパスワードが必要です。 他のフォルダーへのアクセスを回避するために、ログインシェルを変更しホームディレクトリを変更します。

usermod -s /sbin/nologin -d /var/spool/pandora/data_in_pandora

Info.png

Debian システムでは、シェルは /usr/sbin/nologin です。

 


ユーザ設定を変更すると、SSH でのログインができなくなります。

2 FTP にてサーバがデータを受け取る設定

FTP 経由でデータを送信するクライアント設定は、送信するユーザとパスワードの指定で可能です。tentacle の代わりに FTP を介してコピーを実装するのは非常に簡単です。

FTP を使用してデータを送信するように Pandora FMS エージェントを設定するほか、Pandora FMS サーバに FTP サーバを設定し、ユーザ "pandora" (Pandora FMS エージェントで使用する)のパスワードを修正し、"pandora" ユーザに /var/spool/pandora/data_in 以下hえの書き込みアクセスを許可します。

ニーズに合わせて FTP サーバを設定します。このガイドでは vsftpd を使用します。

2.1 Vsftpd でのセキュリティ強化

Tentacle の代わりに FTP を使用することの短所は、FTP を介したデータ送信は安全ではないため、Pandora FMS サーバで FTP サーバを実行することが脆弱になります。 以下のセクションでは、サーバーの安全性を最小限にする方法について説明します。

安全上の理由で "pandora" ユーザの SSH 経由のログインを無効にするのと同様に、FTP 経由の安全なアクセス方法を設定する必要があります。簡単で安全な方法は、vsftpd の PAM ルールを作成することです。 次の内容の /etc/pam.d/ftp ファイルを作成します。

auth    required        pam_listfile.so item=user sense=deny file=/etc/ftpusers onerr=succeed
# Standard pam includes
@include common-account
@include common-session
@include common-auth
auth    required    pam_succeed_if.so quiet user ingroup pandora
auth    required    pam_succeed_if.so quiet shell = /sbin/nologin

Info.png

Debian システムでは、シェルのパスは /usr/sbin/nologin です。

 


vsftpd の設定ファイル(/etc/vsftpd.conf) で、pam_service_name トークンを探し、作成したファイル名を入力します。

pam_service_name=ftp

この設定により、pandora グループに属し、nologin のシェルを持つユーザのみが FTP 経由でPandora FMS にアクセスできます。 そのため、«pandora» ユーザを含むグループ «pandora» を作成する必要があります(存在しない場合)。

/etc/vsftpd.conf ファイルにて、いくつかの設定を調整するだけで、FTP 経由でログインするユーザの root へのアクセスを制限できます。 パラメータは次のとおりです。

chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.nochroot_list

一部のユーザを除外し、Chroot に制限することを避ける必要がある場合は、vsftpd.nochroot_list ファイルにそのユーザを含めます(1行に1ユーザー)。

セキュリティを強化するための他のオプションは次のとおりです。

dirlist_enable=NO
download_enable=NO
deny_file=authorized_keys
deny_file=.ssh
chroot_local_user=YES


Info.png

設定を変更した際は、それを反映するために vsftpd サービスを再起動する必要があります。

 


これらの設定により、ユーザはそのルートディレクトリ («pandora» ユーザの場合は /var/spool/pandora/data_in に限定されます)。 ユーザは FTP 転送を実行してファイルを送信できますが、ファイルの一覧は見ることができません。

FTP でユーザ «pandora» を使用してログインし、ディレクトリの移動とファイル一覧の取得を試してみてください。できない場合は、正しくセットアップができています。