私はすでにaskubuntuでこの質問をしましたが、1週間誰も答えてくれなかったので、おそらくここで誰かが答えを知っているでしょう(https://askubuntu.com/questions/462162/nagios-plugin-check-radius-missing-in-ubuntu-14-04)。
私は最近、Nagios サーバーを Ubuntu LTS 12.04.04 から 14.04 にアップデートしました。この移行はサポートされていないことは承知しています。
すべて正常に動作しますが、Radius-Check が失敗します... 理由がわかりました: 実行可能ファイル「check_radius」が /usr/lib/nagios/plugins にありません。アップグレード中にアンインストールされたようです。
理由、取り戻す方法、交換する方法を知っている人はいますか?
UDP プロトコルなのでポートチェックはできません。
/usr/lib/nagios/plugins の内容:
check_apt check_dns check_icmp check_log check_nt check_procs check_spop negate
check_breeze check_dummy check_ide_smart check_mailq check_ntp check_real check_ssh urlize
check_by_ssh check_file_age check_ifoperstatus check_mrtg check_ntp_peer check_rpc check_ssmtp utils.pm
check_clamd check_flexlm check_ifstatus check_mrtgtraf check_ntp_time check_rta_multi check_swap utils.sh
check_cluster check_fping check_imap check_mysql check_nwstat check_sensors check_tcp
check_dbi check_ftp check_ircd check_mysql_query check_oracle check_simap check_time
check_dhcp check_game check_jabber check_nagios check_overcr check_smb check_udp
check_dig check_host check_ldap check_nntp check_pgsql check_smb_shares.pl check_ups
check_disk check_hpjd check_ldaps check_nntps check_ping check_smtp check_users
check_disk_smb check_http check_load check_nrpe check_pop check_snmp check_wave
答え1
ここからダウンロードしてください: ナギオス交換
そこから他の多くのプラグインも入手できます。
nagios の設定によっては、nagios デーモン ユーザーに対してファイルを実行可能にする必要がある場合があります。
ご存知のとおり、これはバグのようです:
答え2
このスクリプトを使用しました
- 「https://gist.github.com/djjudas21/cd1e7bfee44fb879855d#file-check_radius_status-pl」
しかし、Nagiosではまだこのメッセージを受け取っています(不明 - RADIUSサーバーの状態を問い合わせることができませんでした)。スクリプトに示されているサンプル応答は異なります
-サンプル回答
受信した応答 ID 183、コード 2、長さ = 344
FreeRADIUS 合計アクセス要求数 = 517
FreeRADIUS 合計アクセス承認数 = 1047
-実際のサンプル応答
192.168.255.10:18121 から 0.0.0.0:0 への Access-Accept Id 162 を受信しました (長さ 344)
FreeRADIUS 合計アクセス要求数 = 3191
FreeRADIUS 合計アクセス承認数 = 353
そこで、Perl スクリプトを次のように変更したところ、正常に動作しました。私は Perl の専門家ではありませんが、私が行った変更は次のとおりです。
- 私の$return =
/bin/echo "Message-Authenticator = 0x00, FreeRADIUS-Statistics-Type = 7" | /usr/bin/radclient $ip:$port status $secret -x
;
..........
- 私の @lines = split /\n/, $return;
- 私の $message = shift(@lines);
- 私の $message1 = shift(@lines);
- 私の $message2 = shift(@lines);
- $message2 = shift(@行);
- if ($message2 && $message2 =~ m/^Access-Accept Id を受信しました/) {
.....
......
- if ($line =~ m/=/ && $line !~ m/^Access-Accept Id を受信しました/) {
リンクを作成するか、sites-available/statusをsites-enabledにコピーして、RADIUSサーバー上のステータスサイトをアクティブにすることを忘れないでください。
よろしくお願いします