CentOS 6 で SNMP を使い、監視サーバーから状態を取得するための基本を確認します。SNMP は監視に便利ですが、特に SNMPv2c の community 名は暗号化されないため、秘密情報として過信せず、ネットワーク制御と合わせて扱います。
SNMP で確認する範囲
snmpdが起動しているか- UDP 161 をどこで待ち受けているか
- community 名と公開範囲
- 監視サーバーの送信元制御
- 取得できる OID の範囲
- ログとファイアウォール
SNMP は広く公開するものではありません。監視用ネットワークや送信元制限で守る設計が基本です。community 名だけで守る考え方は弱いです。
パッケージとサービス確認
yum install net-snmp net-snmp-utils
chkconfig snmpd on
service snmpd start
service snmpd status
netstat -lunp | grep :161snmpd.conf の基本例
com2sec readonly 192.168.1.100 public
group MyROGroup v2c readonly
view all included .1 80
access MyROGroup "" any noauth exact all none none
syslocation ServerRoom
syscontact admin@example.localこの例では、監視サーバー 192.168.1.100 からの SNMPv2c 参照だけを許可しています。実運用では community 名を変更するだけでなく、iptables やネットワーク側で送信元を絞ります。
取得確認
snmpwalk -v2c -c public localhost sysName.0
snmpwalk -v2c -c public localhost system
snmpwalk -v2c -c public 192.168.1.10 ifDescrローカルでは取れるが監視サーバーから取れない場合、snmpd.conf の送信元制限、iptables、経路、待ち受けアドレスを確認します。
SNMPv2c の扱い
SNMPv2c は認証・暗号化が弱いため、community 名をパスワードのように扱っても限界があります。読み取り専用の識別子として扱い、実際の防御はネットワーク到達性と公開範囲で行う方が現実的です。
- 読み取り専用にする
- 監視サーバーの送信元 IP を限定する
- 管理ネットワーク外へ出さない
- 不要な OID を広く公開しない
まとめ
CentOS 6 の SNMP 設定では、snmpd.conf、community、公開範囲、監視サーバーからの到達性を分けて確認します。SNMPv2c は便利ですが、community 名だけに依存せず、ネットワーク設計で守ることが重要です。
関連する記事
- CentOS 6 サーバー管理ガイド
CentOS 6 系の記事を役割別に確認できるハブページです。 - CentOS 6 rsyslog ログサーバー構築
監視と合わせてログ基盤も確認します。 - CentOS 6 NTP 時刻同期設定
監視データの時刻を揃える前提です。
参考書籍
参考書籍
参考書籍
ストーリーで覚える Linux CLI 入門
CentOS 6 のような古い Linux サーバー記事を読み直す時にも、コマンドライン操作の考え方を確認しやすい参考書籍です。
Amazon で見るこのリンクは Amazon アソシエイトリンクです。
CentOS 6 SNMP 設定 – snmpd.conf と監視公開範囲の基本

