Windows serverのSSHアクセス監視設定について
お世話になります。以下の設定でなにが問題かご指摘願います。
●やりたいこと
AgentlessのWindows serverのgドライブ生きチェック
●設定内容
監視対象のホスト(15.67.3.30)を登録し、アイテムに以下を登録
名前:ssh check
タイプ:SSHエージェント
キー:ssh.run[]
インターフェース:15.67.3.30 : 10050
認証方式:パスワード
ユーザー名:sitescopechk001
パスワード:mid.out-24
実行するスクリプト:g:
cd temp
●結果
アイテム画面でステータスが取得不可になり、情報にCannot connect to SSH server: cannot connect to [[15.67.3.30]:22]: [13] Permission denied
が出力される。
zabbix serverからssh sitescopechk001@15.67.3.30 で接続は問題ないのですが、どうしてPermission deniedとなるのでしょうか?
すいませんが、よろしくお願いします。
TNK - 投稿数: 4769
質問される際には、使用されているZabbixやOSの詳細なバージョン
をお教えください。
ご提示頂いている情報だけでの推測ですが、Zabbixサーバープロセ
スからSELinuxなどによって外部ネットワークへのアクセスが制限
されていたりしませんか?
tooshima0511 - 投稿数: 15
TNK様ありがとうございます。AWSを使っているのですが、おっしゃるとおりSELinux statusが有効でしたので、disabledにしました。
zabbix_server は 4.4.7、OSは Linux Server release 7.5 です。
同じ設定で、エラーメッセージが変わって、Cannot request a shell でステータスは取得不可となります。
まだ何が悪いのでしょうか。。
tooshima0511 - 投稿数: 15
Cannot request a shellのshellとは何を意味しているのでしょうか?
できれば標準のSSHチェックでやりたいのですが、外部チェックでssh sitescopechk001@15.67.3.30 で接続チェックする方法と同じことなのでしょうか?
TNK - 投稿数: 4769
SSHというのはSecure Shellのことで、リモートのサーバーや機器
を対話的にやり取りをして操作を行うためのものです。
対話的にというのは、Linux上のターミナル上でコマンドを入力し
て操作されていると思いますが、
1.コマンドが入力できる時にはプロンプトが表示される
2.そのプロンプトに対してコマンドを入力
3.入力されたコマンドを処理して結果を表示
1.に戻る
という繰り返してやり取りを行うことをいいます。
そのプロンプトを表示してコマンドを受け付けるものがshellです。
今手元にはWindows上にSSHでアクセスできる環境が無いので忘れて
しまいましたが、もしかしたら、SSHの応答がLinuxなどUNIX系のOS
上のシェルとは異なる応答を返していて、Zabbix側からはWindows
がコマンドを受け付けるプロンプトを出してこないと判断されてし
まっているのかもしれません。
そのような環境では、ZabbixのSSHの監視の機能を使用して監視す
ることができません。
外部スクリプトを使用して、スクリプトからexpectコマンドなどを
使用して対話的にWindowsにアクセスしてコマンドを実行するよう
にすることになると思います。
Windows以外でも、ネットワーク機器でも同様の問題が発生する場
合があるのですが、この場合も外部スクリプトを使用するなどの方
法を取ることが必要です。