Linuxで telnet , ssh でリモートにログインし作業したログを残す方法。
tee コマンドでできる。
# man tee
tee - 標準入力から読んだ内容を標準出力とファイルとに書き出す
使い方。
ssh or telnet IPアドレス | tee ログファイル名
リモート端末がいないので、自分に ssh でテスト。
適当にコマンドを実行し、ログアウト。
[root@arizona ~]# ssh 127.1 | tee ssh.logs
root@127.1's password:
Last login: Tue Jun 30 01:03:45 2009 from localhost
[root@arizona ~]# echo hello
hello
[root@arizona ~]# ls
anaconda-ks.cfg libpcap-1.0.0 rpmbuild ssldump-0.9b3
install.log queryfile-example-100thousand source ダウンロード
install.log.syslog rpm_packages ssh.logs
[root@arizona ~]# pwd
/root
[root@arizona ~]# whoami
root
[root@arizona ~]# exit
logout
[root@arizona ~]#
ファイルをチェック。
コマンドログがファイルに記録された。。ナイス!
[root@arizona ~]# cat ssh.logs
Last login: Tue Jun 30 01:03:45 2009 from localhost
[root@arizona ~]# echo hello
hello
[root@arizona ~]# ls
anaconda-ks.cfg libpcap-1.0.0 rpmbuild ssldump-0.9b3
install.log queryfile-example-100thousand source ダウンロード
install.log.syslog rpm_packages ssh.logs
[root@arizona ~]# pwd
/root
[root@arizona ~]# whoami
root
[root@arizona ~]# exit
logout
[root@arizona ~]#
cheers!
Monitoring DNS traffic via munin
OS: Fedora 11
unbound はソースからインストール
unbound 1.3.0
munin はyum でインストール
munin-node が daemon。
# yum install -y munin-node.noarch munin.noarch
munin の設定ファイル。
/etc/munin
munin-node.conf munin.conf
プラグイン
# ls /etc/munin/plugins/
cpu forks iostat netstat processes swap
df if_err_eth0 irqstats ntp_offset sendmail_mailqueue vmstat
df_inode if_eth0 load open_files sendmail_mailstats
entropy interrupts memory open_inodes sendmail_mailtraffic
これらはシンボリックリンクがはってある。
# ls -l /etc/munin/plugins/cpu
lrwxrwxrwx 1 root root 28 2009-06-28 00:52 /etc/munin/plugins/cpu -> /usr/share/munin/plugins/cpu
unbound の下記ページを参照。
http://www.unbound.net/documentation/howto_statistics.html
# cp unbound_munin_ /usr/local/etc/unbound/
シンボリックリンクをはる。
# ln -s /usr/local/etc/unbound/unbound_munin_ /etc/munin/plugins/unbound_munin_hits
unbound.conf の編集
statistics-interval: 0
statistics-cumulative: no
muninの設定
追加
# cat /etc/munin/plugin-conf.d/munin-node
[unbound*]
user root
ファイルを作成
# cat /etc/munin/plugin-conf.d/unbound
[unbound*]
user root
env.statefile /var/lib/munin/plugin-state/unbound-state
env.unbound_conf /usr/local/etc/unbound/unbound.conf
env.unbound_control /usr/local/sbin/unbound-control
env.spoof_warn 1000
env.spoof_crit 100000
# unbound-control reload
ok
munin-node を起動
# /etc/init.d/munin-node start
Starting Munin Node: [ OK ]
http:://127.1:4949でアクセスできる。
# less /etc/munin/munin-node.conf
# Which address to bind to;
host *
# host 127.0.0.1
# And which port
port 4949
# netstat -an | grep 4949
tcp 0 0 0.0.0.0:4949 0.0.0.0:* LISTEN
/var/log/munin/munin-node.log
[1245340683] unbound-control[3504:0] error: Could not open /etc/unbound/unbound.conf: Permission denied
telnet してみると応答がある。
munin-node がオープンするポートは telnet 待ち受けポートであって、httpではない
気がしてきた。
# telnet 127.1 4949
Trying 127.0.0.1...
Connected to 127.1.
Escape character is '^]'.
# munin node at arizona.localdomain
help
# Unknown command. Try list, nodes, config, fetch, version or quit
list
open_inodes sendmail_mailtraffic if_err_eth0 entropy irqstats sendmail_mailstats if_eth0 processes unbound_munin_hits df netstat interrupts swap load ntp_offset sendmail_mailqueue cpu df_inode open_files forks iostat memory vmstat
Connection closed by foreign host.
#
nboundのグラフができとらんなー。
# pwd
/var/www/html/munin/localhost
# ls *unbound*
unboundのpluginファイルがいけないのかなー。
localhost-unbound_munin_hits.html
/etc/munin/plugins/unbound_munin_hits: line 163: /var/lib/munin/plugin-state: Is a directory
Plugin "unbound_munin_hits" exited with status 256. --error retrieving data from unbound server
これが原因か。。
# less -N /etc/munin/plugins/unbound_munin_hits
25 # env.statefile /usr/local/var/munin/plugin-state/unbound-state
編集。ディレクトリをmuninとあわせる。
# vi /etc/munin/plugins/unbound_munin_hits
[unbound*]
user root
# env.statefile /usr/local/var/munin/plugin-state/unbound-state
env.statefile /var/lib/munin/plugin-state/unbound-state
env.unbound_conf /usr/local/etc/unbound/unbound.conf
env.unbound_control /usr/local/sbin/unbound-control
env.spoof_warn 1000
env.spoof_crit 100000
# touch /var/lib/munin/plugin-state/unbound-state
munin再起動
# /etc/init.d/munin-node restart
まだエラーが出る。
/etc/munin/plugins/unbound_munin_hits: line 164: /var/lib/munin/plugin-state: Is a directory
これが原因か。。state= のやつ。
# egrep plugin-state /etc/munin/plugins/unbound_munin_hits
# env.statefile /usr/local/var/munin/plugin-state/unbound-state
# env.statefile /usr/local/var/munin/plugin-state/unbound-state
env.statefile /var/lib/munin/plugin-state/unbound-state
state=${statefile:-/usr/local/var/munin/plugin-state/unbound-state}
修正。
# egrep plugin-state /etc/munin/plugins/unbound_munin_hits
# env.statefile /usr/local/var/munin/plugin-state/unbound-state
# env.statefile /usr/local/var/munin/plugin-state/unbound-state
env.statefile /var/lib/munin/plugin-state/unbound-state
#state=${statefile:-/usr/local/var/munin/plugin-state/unbound-state}
state=${statefile:-/var/lib/munin/plugin-state/unbound-state}
再起動
こいつかー。
# /etc/init.d/munin-node restart
# cat /etc/munin/plugin-conf.d/unbound
[unbound*]
user root
#env.statefile /var/lib/munin/plugin-state/ ← これ
#env.statefile /var/lib/munin/plugin-state/unbound-state ←修正
env.unbound_conf /usr/local/etc/unbound/unbound.conf
env.unbound_control /usr/local/sbin/unbound-control
env.spoof_warn 1000
env.spoof_crit 100000
# /etc/init.d/munin-node restart
うまくいったっぽい。
# egrep unbound /var/log/munin/munin-node.log
#
ファイルができたー。
# pwd
/var/www/html/munin/localhost
# ls *unbound*
localhost-unbound_munin_hits-day.png localhost-unbound_munin_hits-year.png
localhost-unbound_munin_hits-month.png localhost-unbound_munin_hits.html
localhost-unbound_munin_hits-week.png
情報は cron で定期的に収集している。
# cat /etc/cron.d/munin
#
# cron-jobs for munin
#
MAILTO=root
*/5 * * * * munin test -x /usr/bin/munin-cron && /usr/bin/munin-cron
14 10 * * * munin test -x /usr/share/munin/munin-limits && /usr/share/munin/munin-limits --force --contact nagios --contact old-nagios
unboundの情報も収集できてるみたい。
# head -10 /var/lib/munin/plugin-state/unbound-state
thread0.num.queries=4701
thread0.num.cachehits=3032
thread0.num.cachemiss=1669
thread0.num.recursivereplies=1538
thread0.requestlist.avg=62.441
thread0.requestlist.max=119
thread0.requestlist.overwritten=0
thread0.requestlist.exceeded=0
thread0.requestlist.current.all=112
muninのhtmlのログに warning がでてるなー。
# egrep -i unbound /var/log/munin/munin-html.log
Jun 28 01:20:23 - Warning: Unknown option "error" in "localhost;localhost:unbound_munin_hits.error".
Jun 28 01:20:23 - processing service: unbound_munin_hits
とりあえず画像ファイルのサイズが増えてるのでいいや。
# ls -lh *unbound*
-rw-r--r-- 1 munin munin 22K 2009-06-28 02:10 localhost-unbound_munin_hits-day.png
-rw-r--r-- 1 munin munin 21K 2009-06-28 02:00 localhost-unbound_munin_hits-month.png
-rw-r--r-- 1 munin munin 21K 2009-06-28 02:00 localhost-unbound_munin_hits-week.png
-rw-r--r-- 1 munin munin 21K 2009-06-28 02:00 localhost-unbound_munin_hits-year.png
-rw-r--r-- 1 munin munin 5.6K 2009-06-28 02:10 localhost-unbound_munin_hits.html
長いみちのりだー。凡ミスだらけだっただけど。。
ファイルを直にみるのではなく、80番ポートでみたい場合は httpd を起動。
# /etc/init.d/httpd start
httpd を起動中: [ OK ]
統計グラフを増やそう。
973 ln -s /usr/local/etc/unbound/unbound_munin_ /etc/munin/plugins/unbound_munin_queue
974 ln -s /usr/local/etc/unbound/unbound_munin_ /etc/munin/plugins/unbound_munin_memory
975 ln -s /usr/local/etc/unbound/unbound_munin_ /etc/munin/plugins/unbound_munin_by_type
976 ln -s /usr/local/etc/unbound/unbound_munin_ /etc/munin/plugins/unbound_munin_by_class
977 ln -s /usr/local/etc/unbound/unbound_munin_ /etc/munin/plugins/unbound_munin_by_opcode
978 ln -s /usr/local/etc/unbound/unbound_munin_ /etc/munin/plugins/unbound_munin_by_rcode
979 ln -s /usr/local/etc/unbound/unbound_munin_ /etc/munin/plugins/unbound_munin_by_flags
980 ln -s /usr/local/etc/unbound/unbound_munin_ /etc/munin/plugins/unbound_munin_by_histgram
グラフが増えた。ナイス。
# ls *unbound*.html
localhost-unbound_munin_by_class.html localhost-unbound_munin_by_type.html
localhost-unbound_munin_by_flags.html localhost-unbound_munin_hits.html
localhost-unbound_munin_by_opcode.html localhost-unbound_munin_memory.html
localhost-unbound_munin_by_rcode.html localhost-unbound_munin_queue.html
出来上がったグラフはこんな感じ。
unbound + munin すごいぞ。。キャッシュヒット率、qps , スプーフィングパケット などなどグラフでかんしできる。
BINDよりunboundの統計情報めっちゃ充実してるので、表示できるグラフも豊富だー。
unbound以外でもpluginがあればいろいろ監視できるので、muninすばらしい。
MRTG や cacti より楽だ。
get things done!
unbound はソースからインストール
unbound 1.3.0
munin はyum でインストール
munin-node が daemon。
# yum install -y munin-node.noarch munin.noarch
munin の設定ファイル。
/etc/munin
munin-node.conf munin.conf
プラグイン
# ls /etc/munin/plugins/
cpu forks iostat netstat processes swap
df if_err_eth0 irqstats ntp_offset sendmail_mailqueue vmstat
df_inode if_eth0 load open_files sendmail_mailstats
entropy interrupts memory open_inodes sendmail_mailtraffic
これらはシンボリックリンクがはってある。
# ls -l /etc/munin/plugins/cpu
lrwxrwxrwx 1 root root 28 2009-06-28 00:52 /etc/munin/plugins/cpu -> /usr/share/munin/plugins/cpu
unbound の下記ページを参照。
http://www.unbound.net/documentation/howto_statistics.html
Statistics with Munin
unboundのプラグインはuboundのソースに含まれている。( contrib ディレクトリ下 )# cp unbound_munin_ /usr/local/etc/unbound/
シンボリックリンクをはる。
# ln -s /usr/local/etc/unbound/unbound_munin_ /etc/munin/plugins/unbound_munin_hits
unbound.conf の編集
statistics-interval: 0
statistics-cumulative: no
muninの設定
追加
# cat /etc/munin/plugin-conf.d/munin-node
[unbound*]
user root
ファイルを作成
# cat /etc/munin/plugin-conf.d/unbound
[unbound*]
user root
env.statefile /var/lib/munin/plugin-state/unbound-state
env.unbound_conf /usr/local/etc/unbound/unbound.conf
env.unbound_control /usr/local/sbin/unbound-control
env.spoof_warn 1000
env.spoof_crit 100000
# unbound-control reload
ok
munin-node を起動
# /etc/init.d/munin-node start
Starting Munin Node: [ OK ]
http:://127.1:4949でアクセスできる。
# less /etc/munin/munin-node.conf
# Which address to bind to;
host *
# host 127.0.0.1
# And which port
port 4949
# netstat -an | grep 4949
tcp 0 0 0.0.0.0:4949 0.0.0.0:* LISTEN
ブラウザでアクセスしてもグラフが表示されない。。
# Unknown command. Try list, nodes, config, fetch, version or quit
# Unknown command. Try list, nodes, config, fetch, version or quit
# Unknown command. Try list, nodes, config, fetch, version or quit
muninのログにunbound.conf のパーミッションdenyのログがでてるなー。/var/log/munin/munin-node.log
[1245340683] unbound-control[3504:0] error: Could not open /etc/unbound/unbound.conf: Permission denied
telnet してみると応答がある。
munin-node がオープンするポートは telnet 待ち受けポートであって、httpではない
気がしてきた。
# telnet 127.1 4949
Trying 127.0.0.1...
Connected to 127.1.
Escape character is '^]'.
# munin node at arizona.localdomain
help
# Unknown command. Try list, nodes, config, fetch, version or quit
list
open_inodes sendmail_mailtraffic if_err_eth0 entropy irqstats sendmail_mailstats if_eth0 processes unbound_munin_hits df netstat interrupts swap load ntp_offset sendmail_mailqueue cpu df_inode open_files forks iostat memory vmstat
Connection closed by foreign host.
#
nboundのグラフができとらんなー。
# pwd
/var/www/html/munin/localhost
# ls *unbound*
unboundのpluginファイルがいけないのかなー。
localhost-unbound_munin_hits.html
/etc/munin/plugins/unbound_munin_hits: line 163: /var/lib/munin/plugin-state: Is a directory
Plugin "unbound_munin_hits" exited with status 256. --error retrieving data from unbound server
これが原因か。。
# less -N /etc/munin/plugins/unbound_munin_hits
25 # env.statefile /usr/local/var/munin/plugin-state/unbound-state
編集。ディレクトリをmuninとあわせる。
# vi /etc/munin/plugins/unbound_munin_hits
[unbound*]
user root
# env.statefile /usr/local/var/munin/plugin-state/unbound-state
env.statefile /var/lib/munin/plugin-state/unbound-state
env.unbound_conf /usr/local/etc/unbound/unbound.conf
env.unbound_control /usr/local/sbin/unbound-control
env.spoof_warn 1000
env.spoof_crit 100000
# touch /var/lib/munin/plugin-state/unbound-state
munin再起動
# /etc/init.d/munin-node restart
まだエラーが出る。
/etc/munin/plugins/unbound_munin_hits: line 164: /var/lib/munin/plugin-state: Is a directory
これが原因か。。state= のやつ。
# egrep plugin-state /etc/munin/plugins/unbound_munin_hits
# env.statefile /usr/local/var/munin/plugin-state/unbound-state
# env.statefile /usr/local/var/munin/plugin-state/unbound-state
env.statefile /var/lib/munin/plugin-state/unbound-state
state=${statefile:-/usr/local/var/munin/plugin-state/unbound-state}
修正。
# egrep plugin-state /etc/munin/plugins/unbound_munin_hits
# env.statefile /usr/local/var/munin/plugin-state/unbound-state
# env.statefile /usr/local/var/munin/plugin-state/unbound-state
env.statefile /var/lib/munin/plugin-state/unbound-state
#state=${statefile:-/usr/local/var/munin/plugin-state/unbound-state}
state=${statefile:-/var/lib/munin/plugin-state/unbound-state}
再起動
こいつかー。
# /etc/init.d/munin-node restart
# cat /etc/munin/plugin-conf.d/unbound
[unbound*]
user root
#env.statefile /var/lib/munin/plugin-state/ ← これ
#env.statefile /var/lib/munin/plugin-state/unbound-state ←修正
env.unbound_conf /usr/local/etc/unbound/unbound.conf
env.unbound_control /usr/local/sbin/unbound-control
env.spoof_warn 1000
env.spoof_crit 100000
# /etc/init.d/munin-node restart
うまくいったっぽい。
# egrep unbound /var/log/munin/munin-node.log
#
ファイルができたー。
# pwd
/var/www/html/munin/localhost
# ls *unbound*
localhost-unbound_munin_hits-day.png localhost-unbound_munin_hits-year.png
localhost-unbound_munin_hits-month.png localhost-unbound_munin_hits.html
localhost-unbound_munin_hits-week.png
情報は cron で定期的に収集している。
# cat /etc/cron.d/munin
#
# cron-jobs for munin
#
MAILTO=root
*/5 * * * * munin test -x /usr/bin/munin-cron && /usr/bin/munin-cron
14 10 * * * munin test -x /usr/share/munin/munin-limits && /usr/share/munin/munin-limits --force --contact nagios --contact old-nagios
unboundの情報も収集できてるみたい。
# head -10 /var/lib/munin/plugin-state/unbound-state
thread0.num.queries=4701
thread0.num.cachehits=3032
thread0.num.cachemiss=1669
thread0.num.recursivereplies=1538
thread0.requestlist.avg=62.441
thread0.requestlist.max=119
thread0.requestlist.overwritten=0
thread0.requestlist.exceeded=0
thread0.requestlist.current.all=112
muninのhtmlのログに warning がでてるなー。
# egrep -i unbound /var/log/munin/munin-html.log
Jun 28 01:20:23 - Warning: Unknown option "error" in "localhost;localhost:unbound_munin_hits.error".
Jun 28 01:20:23 - processing service: unbound_munin_hits
とりあえず画像ファイルのサイズが増えてるのでいいや。
# ls -lh *unbound*
-rw-r--r-- 1 munin munin 22K 2009-06-28 02:10 localhost-unbound_munin_hits-day.png
-rw-r--r-- 1 munin munin 21K 2009-06-28 02:00 localhost-unbound_munin_hits-month.png
-rw-r--r-- 1 munin munin 21K 2009-06-28 02:00 localhost-unbound_munin_hits-week.png
-rw-r--r-- 1 munin munin 21K 2009-06-28 02:00 localhost-unbound_munin_hits-year.png
-rw-r--r-- 1 munin munin 5.6K 2009-06-28 02:10 localhost-unbound_munin_hits.html
長いみちのりだー。凡ミスだらけだっただけど。。
ファイルを直にみるのではなく、80番ポートでみたい場合は httpd を起動。
# /etc/init.d/httpd start
httpd を起動中: [ OK ]
統計グラフを増やそう。
973 ln -s /usr/local/etc/unbound/unbound_munin_ /etc/munin/plugins/unbound_munin_queue
974 ln -s /usr/local/etc/unbound/unbound_munin_ /etc/munin/plugins/unbound_munin_memory
975 ln -s /usr/local/etc/unbound/unbound_munin_ /etc/munin/plugins/unbound_munin_by_type
976 ln -s /usr/local/etc/unbound/unbound_munin_ /etc/munin/plugins/unbound_munin_by_class
977 ln -s /usr/local/etc/unbound/unbound_munin_ /etc/munin/plugins/unbound_munin_by_opcode
978 ln -s /usr/local/etc/unbound/unbound_munin_ /etc/munin/plugins/unbound_munin_by_rcode
979 ln -s /usr/local/etc/unbound/unbound_munin_ /etc/munin/plugins/unbound_munin_by_flags
980 ln -s /usr/local/etc/unbound/unbound_munin_ /etc/munin/plugins/unbound_munin_by_histgram
グラフが増えた。ナイス。
# ls *unbound*.html
localhost-unbound_munin_by_class.html localhost-unbound_munin_by_type.html
localhost-unbound_munin_by_flags.html localhost-unbound_munin_hits.html
localhost-unbound_munin_by_opcode.html localhost-unbound_munin_memory.html
localhost-unbound_munin_by_rcode.html localhost-unbound_munin_queue.html
出来上がったグラフはこんな感じ。
unbound + munin すごいぞ。。キャッシュヒット率、qps , スプーフィングパケット などなどグラフでかんしできる。
BINDよりunboundの統計情報めっちゃ充実してるので、表示できるグラフも豊富だー。
unbound以外でもpluginがあればいろいろ監視できるので、muninすばらしい。
MRTG や cacti より楽だ。
get things done!
Unbound 1.3.0 has been released on June 11th 2009
ということで、ソースからインストールしてみました。
インストールは簡単。
731 tar xzvf unbound-latest.tar.gz
732 cd unbound-1.3.0/
734 ./configure
735 make
736 make install
737 date
738 history
リモートコントロールできるように、unbound.conf の修正 and unbound-control-setup
を実行。( BIND の rndc コマンドみたいなもの )
- unbound.conf
control-enable: yes
# unbound-control-setup
setup in directory /usr/local/etc/unbound
generating unbound_server.key
Generating RSA private key, 1024 bit long modulus
...........................................++++++
.....................++++++
e is 65537 (0x10001)
generating unbound_control.key
Generating RSA private key, 1024 bit long modulus
.++++++
.++++++
e is 65537 (0x10001)
create unbound_server.pem (self signed certificate)
create unbound_control.pem (signed client certificate)
Signature ok
subject=/CN=unbound-control
Getting CA Private Key
Setup success. Certificates created. Enable in unbound.conf file to use
#
さて起動
# unbound-control start
起動しとらん。
# unbound-control status
[1245941094] unbound-control[22024:0] debug: address 127.0.0.1 port 953
[1245941094] unbound-control[22024:0] error: connect: Connection refused
unbound is stopped
ログを確認。
パーミッションがいけなさそう。
arizona unbound: [22022:0] error: Error for server-cert-file: /usr/local/etc/unbound/unbound_server.pem
arizona unbound: [22022:0] error: Error in SSL_CTX use_certificate_file crypto error:0200100D:system library:fopen:Permission denied
arizona unbound: [22022:0] error: and additionally crypto error:20074002:BIO routines:FILE_CTRL:system lib
arizona unbound: [22022:0] error: and additionally crypto error:140AD002:SSL routines:SSL_CTX_use_certificate_file:system lib
arizona unbound: [22022:0] fatal error: Could not initialize main thread
# ls -l /usr/local/etc/unbound/unbound_server.pem
-rw-r----- 1 root root /usr/local/etc/unbound/unbound_server.pem
ユーザ unbound , グループ unbound で起動するから所有者をかえればいいのかな。
unbound ユーザ/グループは存在する
# egrep unbound /etc/passwd /etc/group
/etc/passwd:unbound:x:489:482:Unbound DNS resolver:/etc/unbound:/sbin/nologin
/etc/group:unbound:x:482:
server.key , server.pem の所有者を変更
# chown unbound.unbound /usr/local/etc/unbound/unbound_server.pem
# chown unbound.unbound /usr/local/etc/unbound/unbound_server.key
再度起動。
# unbound-control start
Okay.
# unbound-control status
version: 1.3.0
verbosity: 1
threads: 1
modules: 2 [ validator iterator ]
uptime: 3 seconds
unbound (pid 22051) is running...
2. 権威サーバに問い合わせ中のクエリを表示できる
とは?
man unbound-control をみるとこんな説明が。
dump_requestlist
Show what is worked on. Prints all queries that the server is
currently working on. Prints the time that users have been
waiting. For internal requests, no time is printed. And then
prints out the module status.
コマンドを実行しても何も表示されない。
説明を見ると処理中のクエリの表示だから、
なにかクエリを流していないとダメなのかな。。
# unbound-control dump_requestlist
thread #0
# type cl name seconds module status
負荷ツールをインストール。
# yum install -y dnsperf.i586
dnsperf って Nominum社が開発したみたい。
Nominumって商用DNSサーバを開発しているところみたい。
高パフォーマンス、セキュアらしい。みたい。
キャッシュサーバのパフォーマンス測定方法の資料とか、
マニュアルがあるなー。なかなかしっかりしてるっぽい。
あとで(いつ?)で読むとして。
# rpm -ql dnsperf
/usr/bin/dnsperf
/usr/bin/queryparse
/usr/bin/resperf
/usr/bin/resperf-report
/usr/share/doc/dnsperf-1.0.1.0/doc/caching-dns-performance.pdf
/usr/share/doc/dnsperf-1.0.1.0/doc/dnsperf.pdf
/usr/share/doc/dnsperf-1.0.1.0/doc/resperf.pdf
/usr/share/doc/dnsperf-1.0.1.0/queryfile-example-100thousand.bz2
サンプルクエリのリストがあるぞ。
# less /usr/share/doc/dnsperf-1.0.1.0/queryfile-example-100thousand.bz2 | head -5
messenger.yahoo.com. A
beta.sip.yahoo.com. A
stun.voice.yahoo.com. A
relay.voice.yahoo.com. A
storybook.com. A
このクエリリストでかる~く負荷を流しているときに、
unbound-control dump_requestlist してみよう。。
クエリリスト、10万行もある。。すごいなー。
# wc -l queryfile-example-100thousand
100000 queryfile-example-100thousand
では、負荷をかけてみましょう。
# dnsperf -s 127.1 -d queryfile-example-100thousand
おっ、表示された。
時間もでてきた。
時間が表示されるのと、そうでないのがある。
表示されないのは、internal requests らしい。
internal requests って何だ??
時間が表示されないクエリを grep で調べると、クエリリスト内に存在しない。
名前解決するために、ネームサーバとか内部的に名前解決する必要のあるクエリが
internal requestsっぽい。
# egrep -i "ns.penteres.it" queryfile-example-100thousand
#
# unbound-control dump_requestlist
thread #0
# type cl name seconds module status
0 A IN ns.penteres.it. - iterator wait for 62.48.42.65
1 A IN dns.interbusiness.it. - iterator wait for 217.169.119.68
2 A IN ns1.sdt.net. - iterator wait for 194.88.168.12
3 A IN ns1.mbit.ro. - iterator wait for 86.104.232.4
4 A IN ns1.x-battle.com. - iterator wait for 74.94.117.221
12 A IN netadm2-ext.gtrep.gatech.edu. - iterator wait for 128.193.4.20
13 A IN 109.41.128.66.PPPoE.dynamic.telesat.net.co. 74.640424 iterator wait for 190.97.204.93
14 A IN atlas.sk. 74.395150 iterator wait for 62.168.117.131
15 A IN media.fimnetwork.com. 74.920760 iterator wait for 63.215.73.21
負荷を止めた直後の dump。
# unbound-control dump_requestlist
thread #0
# type cl name seconds module status
0 A IN ns.bdc.ntta.com. - iterator wait for 206.14.130.66
1 A IN ns.anfro.ro. - iterator wait for 89.35.178.10
9 A IN voltar2.im.gte.com. - iterator wait for 205.153.203.2
10 A IN cybersec.cs.uwp.edu. - iterator wait for 131.210.42.3
11 A IN lame26564.lame-delegation.org. - iterator wait for 205.177.28.149
12 PTR IN 1.102.253.62.in-addr.arpa. 183.060530 iterator wait for 62.253.102.77
負荷止めて、1分後でも表示されるなー。
内部的に回答まってる?
# unbound-control dump_requestlist | head -5
thread #0
# type cl name seconds module status
0 A IN ns.bdc.ntta.com. - iterator wait for 206.14.130.66
1 A IN ns.anfro.ro. - iterator wait for 89.35.178.10
2 A IN ns1.cellnetwork.no. - iterator wait for 85.19.184.11
やっぱり、応答ないのかなー。
# dig @127.1 ns.bdc.ntta.com.
; <<>> DiG 9.6.1rc1-RedHat-9.6.1-0.4.rc1.fc11 <<>> @127.1 ns.bdc.ntta.com.
; (1 server found)
;; global options: +cmd
;; connection timed out; no servers could be reached
お、timed out だ。dump_requestlist から、
応答しない可能性の高いクエリが確認できそう。
wait for の他に、 wants ってコメントもあるぞ。
# unbound-control dump_requestlist
thread #0
# type cl name seconds module status
0 A IN lame26564.lame-delegation.org. - iterator wait for 63.217.31.66
1 PTR IN 1.199.17.12.in-addr.arpa. 657.920996 iterator wants A IN lame26564.lame-delegation.org.
2 PTR IN 100.17.170.159.in-addr.arpa. 494.986305 iterator wait for 195.14.18.43
lame-delegation.org って、なんだ。やっぱ lame ?
あ、やっと消えた。
# unbound-control
dump_requestlist
thread #0
# type cl name seconds module status
#
何はともあれ、名前解決に時間がかかっているクエリ、できないクエリが
このコマンドで確認できそうだ。ナイス!!
すごいぞ、unbound ! 。BIND より統計情報が充実している。
パフォーマンスもいい(らしい)
オライリーあたりから、unbound本でればいいのに。
勝手に章を作ると、
1. unbound とは
2. インストール、起動
3. unbound.conf
4. unbound-control [start|stop|stats|dump_cache] などなど
5. セキュアなキャッシュサーバ ( validator , DNSSEC , use-caps-for-id etc )
6. munin or cacti でDNSトラフィックをモニター
7. パフォーマンス
8. misc
とかって感じ? 。あとログについて。
BIND本は確かバッタだから、unbound は、なんだろー。
unboundはキャッシュ専用なので、BIND本より薄くなりそうだ。。
BIND本、メタボ気味だし。。sendmail本より、はるかにやせてるけど。
unboundの詳しいマニュアルが提供されることを期待!
OS: Fedora 11
5ヶ月ぶりくらいのリリースだ。
主な追加機能:
1. Windows 32bit版のリリース ( source )
2. 権威サーバに問い合わせ中のクエリを表示できる
3. 権威サーバに問い合わせ中のクエリを破棄できる
5ヶ月ぶりくらいのリリースだ。
主な追加機能:
1. Windows 32bit版のリリース ( source )
2. 権威サーバに問い合わせ中のクエリを表示できる
3. 権威サーバに問い合わせ中のクエリを破棄できる
かな。
インストールは簡単。
731 tar xzvf unbound-latest.tar.gz
732 cd unbound-1.3.0/
734 ./configure
735 make
736 make install
737 date
738 history
リモートコントロールできるように、unbound.conf の修正 and unbound-control-setup
を実行。( BIND の rndc コマンドみたいなもの )
- unbound.conf
control-enable: yes
# unbound-control-setup
setup in directory /usr/local/etc/unbound
generating unbound_server.key
Generating RSA private key, 1024 bit long modulus
...........................................++++++
.....................++++++
e is 65537 (0x10001)
generating unbound_control.key
Generating RSA private key, 1024 bit long modulus
.++++++
.++++++
e is 65537 (0x10001)
create unbound_server.pem (self signed certificate)
create unbound_control.pem (signed client certificate)
Signature ok
subject=/CN=unbound-control
Getting CA Private Key
Setup success. Certificates created. Enable in unbound.conf file to use
#
さて起動
# unbound-control start
起動しとらん。
# unbound-control status
[1245941094] unbound-control[22024:0] debug: address 127.0.0.1 port 953
[1245941094] unbound-control[22024:0] error: connect: Connection refused
unbound is stopped
ログを確認。
パーミッションがいけなさそう。
arizona unbound: [22022:0] error: Error for server-cert-file: /usr/local/etc/unbound/unbound_server.pem
arizona unbound: [22022:0] error: Error in SSL_CTX use_certificate_file crypto error:0200100D:system library:fopen:Permission denied
arizona unbound: [22022:0] error: and additionally crypto error:20074002:BIO routines:FILE_CTRL:system lib
arizona unbound: [22022:0] error: and additionally crypto error:140AD002:SSL routines:SSL_CTX_use_certificate_file:system lib
arizona unbound: [22022:0] fatal error: Could not initialize main thread
# ls -l /usr/local/etc/unbound/unbound_server.pem
-rw-r----- 1 root root /usr/local/etc/unbound/unbound_server.pem
ユーザ unbound , グループ unbound で起動するから所有者をかえればいいのかな。
unbound ユーザ/グループは存在する
# egrep unbound /etc/passwd /etc/group
/etc/passwd:unbound:x:489:482:Unbound DNS resolver:/etc/unbound:/sbin/nologin
/etc/group:unbound:x:482:
server.key , server.pem の所有者を変更
# chown unbound.unbound /usr/local/etc/unbound/unbound_server.pem
# chown unbound.unbound /usr/local/etc/unbound/unbound_server.key
再度起動。
# unbound-control start
Okay.
# unbound-control status
version: 1.3.0
verbosity: 1
threads: 1
modules: 2 [ validator iterator ]
uptime: 3 seconds
unbound (pid 22051) is running...
2. 権威サーバに問い合わせ中のクエリを表示できる
とは?
man unbound-control をみるとこんな説明が。
dump_requestlist
Show what is worked on. Prints all queries that the server is
currently working on. Prints the time that users have been
waiting. For internal requests, no time is printed. And then
prints out the module status.
コマンドを実行しても何も表示されない。
説明を見ると処理中のクエリの表示だから、
なにかクエリを流していないとダメなのかな。。
# unbound-control dump_requestlist
thread #0
# type cl name seconds module status
負荷ツールをインストール。
# yum install -y dnsperf.i586
dnsperf って Nominum社が開発したみたい。
Nominumって商用DNSサーバを開発しているところみたい。
高パフォーマンス、セキュアらしい。みたい。
キャッシュサーバのパフォーマンス測定方法の資料とか、
マニュアルがあるなー。なかなかしっかりしてるっぽい。
あとで(いつ?)で読むとして。
# rpm -ql dnsperf
/usr/bin/dnsperf
/usr/bin/queryparse
/usr/bin/resperf
/usr/bin/resperf-report
/usr/share/doc/dnsperf-1.0.1.0/doc/caching-dns-performance.pdf
/usr/share/doc/dnsperf-1.0.1.0/doc/dnsperf.pdf
/usr/share/doc/dnsperf-1.0.1.0/doc/resperf.pdf
/usr/share/doc/dnsperf-1.0.1.0/queryfile-example-100thousand.bz2
サンプルクエリのリストがあるぞ。
# less /usr/share/doc/dnsperf-1.0.1.0/queryfile-example-100thousand.bz2 | head -5
messenger.yahoo.com. A
beta.sip.yahoo.com. A
stun.voice.yahoo.com. A
relay.voice.yahoo.com. A
storybook.com. A
このクエリリストでかる~く負荷を流しているときに、
unbound-control dump_requestlist してみよう。。
クエリリスト、10万行もある。。すごいなー。
# wc -l queryfile-example-100thousand
100000 queryfile-example-100thousand
では、負荷をかけてみましょう。
# dnsperf -s 127.1 -d queryfile-example-100thousand
おっ、表示された。
時間もでてきた。
時間が表示されるのと、そうでないのがある。
表示されないのは、internal requests らしい。
internal requests って何だ??
時間が表示されないクエリを grep で調べると、クエリリスト内に存在しない。
名前解決するために、ネームサーバとか内部的に名前解決する必要のあるクエリが
internal requestsっぽい。
# egrep -i "ns.penteres.it" queryfile-example-100thousand
#
# unbound-control dump_requestlist
thread #0
# type cl name seconds module status
0 A IN ns.penteres.it. - iterator wait for 62.48.42.65
1 A IN dns.interbusiness.it. - iterator wait for 217.169.119.68
2 A IN ns1.sdt.net. - iterator wait for 194.88.168.12
3 A IN ns1.mbit.ro. - iterator wait for 86.104.232.4
4 A IN ns1.x-battle.com. - iterator wait for 74.94.117.221
12 A IN netadm2-ext.gtrep.gatech.edu. - iterator wait for 128.193.4.20
13 A IN 109.41.128.66.PPPoE.dynamic.telesat.net.co. 74.640424 iterator wait for 190.97.204.93
14 A IN atlas.sk. 74.395150 iterator wait for 62.168.117.131
15 A IN media.fimnetwork.com. 74.920760 iterator wait for 63.215.73.21
負荷を止めた直後の dump。
# unbound-control dump_requestlist
thread #0
# type cl name seconds module status
0 A IN ns.bdc.ntta.com. - iterator wait for 206.14.130.66
1 A IN ns.anfro.ro. - iterator wait for 89.35.178.10
9 A IN voltar2.im.gte.com. - iterator wait for 205.153.203.2
10 A IN cybersec.cs.uwp.edu. - iterator wait for 131.210.42.3
11 A IN lame26564.lame-delegation.org. - iterator wait for 205.177.28.149
12 PTR IN 1.102.253.62.in-addr.arpa. 183.060530 iterator wait for 62.253.102.77
負荷止めて、1分後でも表示されるなー。
内部的に回答まってる?
# unbound-control dump_requestlist | head -5
thread #0
# type cl name seconds module status
0 A IN ns.bdc.ntta.com. - iterator wait for 206.14.130.66
1 A IN ns.anfro.ro. - iterator wait for 89.35.178.10
2 A IN ns1.cellnetwork.no. - iterator wait for 85.19.184.11
やっぱり、応答ないのかなー。
# dig @127.1 ns.bdc.ntta.com.
; <<>> DiG 9.6.1rc1-RedHat-9.6.1-0.4.rc1.fc11 <<>> @127.1 ns.bdc.ntta.com.
; (1 server found)
;; global options: +cmd
;; connection timed out; no servers could be reached
お、timed out だ。dump_requestlist から、
応答しない可能性の高いクエリが確認できそう。
wait for の他に、 wants ってコメントもあるぞ。
# unbound-control dump_requestlist
thread #0
# type cl name seconds module status
0 A IN lame26564.lame-delegation.org. - iterator wait for 63.217.31.66
1 PTR IN 1.199.17.12.in-addr.arpa. 657.920996 iterator wants A IN lame26564.lame-delegation.org.
2 PTR IN 100.17.170.159.in-addr.arpa. 494.986305 iterator wait for 195.14.18.43
lame-delegation.org って、なんだ。やっぱ lame ?
あ、やっと消えた。
# unbound-control
dump_requestlist
thread #0
# type cl name seconds module status
#
何はともあれ、名前解決に時間がかかっているクエリ、できないクエリが
このコマンドで確認できそうだ。ナイス!!
すごいぞ、unbound ! 。BIND より統計情報が充実している。
パフォーマンスもいい(らしい)
オライリーあたりから、unbound本でればいいのに。
勝手に章を作ると、
1. unbound とは
2. インストール、起動
3. unbound.conf
4. unbound-control [start|stop|stats|dump_cache] などなど
5. セキュアなキャッシュサーバ ( validator , DNSSEC , use-caps-for-id etc )
6. munin or cacti でDNSトラフィックをモニター
7. パフォーマンス
8. misc
とかって感じ? 。あとログについて。
BIND本は確かバッタだから、unbound は、なんだろー。
unboundはキャッシュ専用なので、BIND本より薄くなりそうだ。。
BIND本、メタボ気味だし。。sendmail本より、はるかにやせてるけど。
unboundの詳しいマニュアルが提供されることを期待!
Linux top コマンド Cpu(s) から コアごとに表示
最近だとマルチコアがあたりまえ(?)になってきましたねー。
各コアごとのリソースをみたい場合は、top コマンド中に 1 を入力。
保存は W 。.toprc に保存される
Cpu(s): 14.1%us, 3.2%sy, 0.0%ni, 81.9%id, 0.7%wa, 0.1%hi, 0.0%si, 0.0%st
Mem: 4122380k total, 553380k used, 3569000k free, 20968k buffers
Swap: 8191992k total, 0k used, 8191992k free, 229960k cached
1 を押すと、Cpu(s) が Cpu0 , Cpu1 となる。
Cpu0 : 12.2%us, 2.6%sy, 0.0%ni, 85.1%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu1 : 11.8%us, 2.9%sy, 0.0%ni, 85.4%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 4122380k total, 554728k used, 3567652k free, 21020k buffers
Swap: 8191992k total, 0k used, 8191992k free, 230860k cached
W で保存
Cpu0 : 25.1%us, 3.6%sy, 0.0%ni, 71.3%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu1 : 21.0%us, 7.3%sy, 0.0%ni, 71.7%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 4122380k total, 555836k used, 3566544k free, 21076k buffers
Swap: 8191992k total, 0k used, 8191992k free, 230856k cached
Wrote configuration to '/root/.toprc' ← これ
各コアごとのリソースをみたい場合は、top コマンド中に 1 を入力。
保存は W 。.toprc に保存される
Cpu(s): 14.1%us, 3.2%sy, 0.0%ni, 81.9%id, 0.7%wa, 0.1%hi, 0.0%si, 0.0%st
Mem: 4122380k total, 553380k used, 3569000k free, 20968k buffers
Swap: 8191992k total, 0k used, 8191992k free, 229960k cached
1 を押すと、Cpu(s) が Cpu0 , Cpu1 となる。
Cpu0 : 12.2%us, 2.6%sy, 0.0%ni, 85.1%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu1 : 11.8%us, 2.9%sy, 0.0%ni, 85.4%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 4122380k total, 554728k used, 3567652k free, 21020k buffers
Swap: 8191992k total, 0k used, 8191992k free, 230860k cached
W で保存
Cpu0 : 25.1%us, 3.6%sy, 0.0%ni, 71.3%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu1 : 21.0%us, 7.3%sy, 0.0%ni, 71.7%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 4122380k total, 555836k used, 3566544k free, 21076k buffers
Swap: 8191992k total, 0k used, 8191992k free, 230856k cached
Wrote configuration to '/root/.toprc' ← これ
SELinux 無効方法 Fedora 11
なにかとめんどいので、無効だー。
# cat /etc/sysconfig/selinux
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - SELinux is fully disabled.
SELINUX=disabled ← disabled にする
# SELINUXTYPE= type of policy in use. Possible values are:
# targeted - Only targeted network daemons are protected.
# strict - Full SELinux protection.
SELINUXTYPE=targeted
んでリブート。
# dmesg | grep -i selinux
SELinux: Initializing.
SELinux: Starting in permissive mode
SELinux: Registering netfilter hooks
SELinux: Disabled at runtime.
SELinux: Unregistering netfilter hooks
done!
# cat /etc/sysconfig/selinux
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - SELinux is fully disabled.
SELINUX=disabled ← disabled にする
# SELINUXTYPE= type of policy in use. Possible values are:
# targeted - Only targeted network daemons are protected.
# strict - Full SELinux protection.
SELINUXTYPE=targeted
んでリブート。
# dmesg | grep -i selinux
SELinux: Initializing.
SELinux: Starting in permissive mode
SELinux: Registering netfilter hooks
SELinux: Disabled at runtime.
SELinux: Unregistering netfilter hooks
done!
Unbound: Monitoring DNS traffics with munin
OS: Fedora 11
munin というツールを unbound のページで知ったのでちょっとさわってみました。
munin は mrtg , cacti みたく 統計情報などを収集、グラフ化してくれるツール。
では、インストール。
# yum install -y munin.noarch munin-node.noarch unbound-munin.i586
munin 本体。gui で閲覧できる
# rpm -ql munin.noarch
/etc/cron.d/munin
/etc/logrotate.d/munin
/etc/munin
/etc/munin/munin.conf
/etc/munin/templates
/etc/munin/templates/definitions.html
/etc/munin/templates/logo.png
/etc/munin/templates/munin-comparison-day.tmpl
/etc/munin/templates/munin-comparison-month.tmpl
/etc/munin/templates/munin-comparison-week.tmpl
/etc/munin/templates/munin-comparison-year.tmpl
/etc/munin/templates/munin-domainview.tmpl
/etc/munin/templates/munin-nodeview.tmpl
/etc/munin/templates/munin-overview.tmpl
/etc/munin/templates/munin-serviceview.tmpl
/etc/munin/templates/style.css
/usr/bin/munin-cron
/usr/bin/munindoc
/usr/lib/perl5/vendor_perl/5.10.0/Munin
/usr/lib/perl5/vendor_perl/5.10.0/Munin.pm
/usr/share/doc/munin-1.2.6
/usr/share/doc/munin-1.2.6/COPYING
/usr/share/doc/munin-1.2.6/ChangeLog
/usr/share/doc/munin-1.2.6/README-apache-cgi
/usr/share/doc/munin-1.2.6/README.api
/usr/share/doc/munin-1.2.6/README.plugins
/usr/share/doc/munin-1.2.6/munin-doc.html
/usr/share/doc/munin-1.2.6/munin-faq.html
/usr/share/man/man5/munin.conf.5.gz
/usr/share/man/man8/munin-cron.8.gz
/usr/share/man/man8/munin-graph.8.gz
/usr/share/man/man8/munin-html.8.gz
/usr/share/man/man8/munin-limits.8.gz
/usr/share/man/man8/munin-update.8.gz
/usr/share/munin
/usr/share/munin/VeraMono.ttf
/usr/share/munin/munin-graph
/usr/share/munin/munin-html
/usr/share/munin/munin-limits
/usr/share/munin/munin-update
/var/lib/munin
/var/log/munin
/var/run/munin
/var/www/html/munin
/var/www/html/munin/cgi
/var/www/html/munin/cgi/munin-cgi-graph
/var/www/html/munin/style.css
munin のプラグイン。たくさんあるなー。
# rpm -ql munin-node.noarch
/etc/logrotate.d/munin-node
/etc/munin
/etc/munin/munin-node.conf
/etc/munin/plugin-conf.d
/etc/munin/plugin-conf.d/hddtemp_smartctl
/etc/munin/plugin-conf.d/munin-node
/etc/munin/plugin-conf.d/nf_conntrack
/etc/munin/plugin-conf.d/postfix
/etc/munin/plugin-conf.d/sendmail
/etc/munin/plugins
/etc/rc.d/init.d/munin-node
/usr/lib/perl5/vendor_perl/5.10.0/Munin/Plugin.pm
/usr/sbin/munin-node
/usr/sbin/munin-node-configure
/usr/sbin/munin-node-configure-snmp
/usr/sbin/munin-run
/usr/share/doc/munin-1.2.6
/usr/share/doc/munin-1.2.6/COPYING
/usr/share/doc/munin-1.2.6/ChangeLog
/usr/share/doc/munin-1.2.6/README-apache-cgi
/usr/share/doc/munin-1.2.6/README.api
/usr/share/doc/munin-1.2.6/README.plugins
/usr/share/doc/munin-1.2.6/munin-doc.html
/usr/share/doc/munin-1.2.6/munin-faq.html
/usr/share/man/man5/munin-node.conf.5.gz
/usr/share/man/man8/munin-node-configure-snmp.8.gz
/usr/share/man/man8/munin-node-configure.8.gz
/usr/share/man/man8/munin-node.8.gz
/usr/share/man/man8/munin-run.8.gz
/usr/share/munin
/usr/share/munin/plugins
/usr/share/munin/plugins/acpi
/usr/share/munin/plugins/amavis
/usr/share/munin/plugins/apache_accesses
/usr/share/munin/plugins/apache_processes
/usr/share/munin/plugins/apache_volume
/usr/share/munin/plugins/apc_envunit_
/usr/share/munin/plugins/apc_nis
/usr/share/munin/plugins/apt
/usr/share/munin/plugins/apt_all
/usr/share/munin/plugins/bind9
/usr/share/munin/plugins/bind9_rndc
/usr/share/munin/plugins/courier_
/usr/share/munin/plugins/courier_mta_mailqueue
/usr/share/munin/plugins/courier_mta_mailstats
/usr/share/munin/plugins/courier_mta_mailvolume
/usr/share/munin/plugins/cps_
/usr/share/munin/plugins/cpu
/usr/share/munin/plugins/cupsys_pages
/usr/share/munin/plugins/df
/usr/share/munin/plugins/df_abs
/usr/share/munin/plugins/df_inode
/usr/share/munin/plugins/dhcpd3
/usr/share/munin/plugins/entropy
/usr/share/munin/plugins/exim_mailqueue
/usr/share/munin/plugins/exim_mailqueue_alt
/usr/share/munin/plugins/exim_mailstats
/usr/share/munin/plugins/files_
/usr/share/munin/plugins/foldingathome
/usr/share/munin/plugins/foldingathome_rank
/usr/share/munin/plugins/foldingathome_wu
/usr/share/munin/plugins/forks
/usr/share/munin/plugins/fw_conntrack
/usr/share/munin/plugins/fw_forwarded_local
/usr/share/munin/plugins/fw_packets
/usr/share/munin/plugins/hddtemp
/usr/share/munin/plugins/hddtemp2
/usr/share/munin/plugins/hddtemp_smartctl
/usr/share/munin/plugins/hddtempd
/usr/share/munin/plugins/i2c
/usr/share/munin/plugins/i2c_fan
/usr/share/munin/plugins/if_
/usr/share/munin/plugins/if_err_
/usr/share/munin/plugins/interrupts
/usr/share/munin/plugins/iostat
/usr/share/munin/plugins/iostat_ios
/usr/share/munin/plugins/ip_
/usr/share/munin/plugins/ipac-ng
/usr/share/munin/plugins/ircu
/usr/share/munin/plugins/irqstats
/usr/share/munin/plugins/load
/usr/share/munin/plugins/loggrep
/usr/share/munin/plugins/mailman
/usr/share/munin/plugins/mailscanner
/usr/share/munin/plugins/mbmon_
/usr/share/munin/plugins/memory
/usr/share/munin/plugins/mhttping
/usr/share/munin/plugins/multips
/usr/share/munin/plugins/munin_graph
/usr/share/munin/plugins/munin_update
/usr/share/munin/plugins/mysql_bytes
/usr/share/munin/plugins/mysql_isam_space_
/usr/share/munin/plugins/mysql_queries
/usr/share/munin/plugins/mysql_slowqueries
/usr/share/munin/plugins/mysql_threads
/usr/share/munin/plugins/named
/usr/share/munin/plugins/netopia
/usr/share/munin/plugins/netstat
/usr/share/munin/plugins/nfs_client
/usr/share/munin/plugins/nfsd
/usr/share/munin/plugins/ntp_
/usr/share/munin/plugins/ntp_offset
/usr/share/munin/plugins/ntp_states
/usr/share/munin/plugins/nut_misc
/usr/share/munin/plugins/nut_volts
/usr/share/munin/plugins/open_files
/usr/share/munin/plugins/open_inodes
/usr/share/munin/plugins/perdition
/usr/share/munin/plugins/ping_
/usr/share/munin/plugins/plugin.sh
/usr/share/munin/plugins/plugins.history
/usr/share/munin/plugins/pm3users_
/usr/share/munin/plugins/pop_stats
/usr/share/munin/plugins/port_
/usr/share/munin/plugins/postfix_mailqueue
/usr/share/munin/plugins/postfix_mailstats
/usr/share/munin/plugins/postfix_mailvolume
/usr/share/munin/plugins/processes
/usr/share/munin/plugins/ps_
/usr/share/munin/plugins/psu_
/usr/share/munin/plugins/samba
/usr/share/munin/plugins/sendmail_mailqueue
/usr/share/munin/plugins/sendmail_mailstats
/usr/share/munin/plugins/sendmail_mailtraffic
/usr/share/munin/plugins/sensors_
/usr/share/munin/plugins/smart_
/usr/share/munin/plugins/snmp__df
/usr/share/munin/plugins/snmp__fc_if_
/usr/share/munin/plugins/snmp__fc_if_err_
/usr/share/munin/plugins/snmp__if_
/usr/share/munin/plugins/snmp__if_err_
/usr/share/munin/plugins/snmp__load
/usr/share/munin/plugins/snmp__processes
/usr/share/munin/plugins/snmp__sensors_fsc_bx_fan
/usr/share/munin/plugins/snmp__sensors_fsc_bx_temp
/usr/share/munin/plugins/snmp__sensors_fsc_fan
/usr/share/munin/plugins/snmp__sensors_fsc_temp
/usr/share/munin/plugins/snmp__sensors_mbm_fan
/usr/share/munin/plugins/snmp__sensors_mbm_temp
/usr/share/munin/plugins/snmp__sensors_mbm_volt
/usr/share/munin/plugins/snmp__users
/usr/share/munin/plugins/spamstats
/usr/share/munin/plugins/squid_cache
/usr/share/munin/plugins/squid_icp
/usr/share/munin/plugins/squid_requests
/usr/share/munin/plugins/squid_traffic
/usr/share/munin/plugins/surfboard
/usr/share/munin/plugins/swap
/usr/share/munin/plugins/uptime
/usr/share/munin/plugins/users
/usr/share/munin/plugins/vlan_
/usr/share/munin/plugins/vlan_inetuse_
/usr/share/munin/plugins/vlan_linkuse_
/usr/share/munin/plugins/vmstat
/var/lib/munin
/var/lib/munin/plugin-state
/var/log/munin
unbound 用 munin プラグイン。
パッケージがない場合は、unbound のソースに含まれているので、
それを使用しましょう。
# rpm -ql unbound-munin.i586/etc/munin/plugin-conf.d/unbound
/usr/share/munin/plugins/unbound
/usr/share/munin/plugins/unbound_munin_by_class
/usr/share/munin/plugins/unbound_munin_by_flags
/usr/share/munin/plugins/unbound_munin_by_opcode
/usr/share/munin/plugins/unbound_munin_by_rcode
/usr/share/munin/plugins/unbound_munin_by_type
/usr/share/munin/plugins/unbound_munin_histogram
/usr/share/munin/plugins/unbound_munin_hits
/usr/share/munin/plugins/unbound_munin_memory
/usr/share/munin/plugins/unbound_munin_queue
plugin は下記のディレクトリにある。
# pwd
/etc/munin/plugins
シンボリックリンクになっている。
# ls -lh | head -5
合計 0
lrwxrwxrwx. 1 root root 28 2009-06-19 00:45 cpu -> /usr/share/munin/plugins/cpu
lrwxrwxrwx. 1 root root 27 2009-06-19 00:45 df -> /usr/share/munin/plugins/df
lrwxrwxrwx. 1 root root 33 2009-06-19 00:45 df_inode -> /usr/share/munin/plugins/df_inode
lrwxrwxrwx. 1 root root 32 2009-06-19 00:45 entropy -> /usr/share/munin/plugins/entropy
unbound 用 plugins のシンボリックリンクを/etc/munin/plugins 下に作成。
# pwd
/etc/munin/plugins
# ln -s /usr/share/munin/plugins/unbound unbound
# ls -l unbound
lrwxrwxrwx. 1 root root 32 2009-06-19 00:55 unbound -> /usr/share/munin/plugins/unbound
unbound.conf を修正
unbound.conf
# print statistics to the log (for every thread) every N seconds.
# Set to "" or 0 to disable. Default is disabled.
# Needed for munin plugin
statistics-interval: 0
# enable cumulative statistics, without clearing them after printing.
# Needed for munin plugin
statistics-cumulative: no
# enable extended statistics (query types, answer codes, status)
# printed from unbound-control. default off, because of speed.
# Needed for munin plugin
extended-statistics: yes
では munin を起動。
怒られたけど起動したからいいやー。
# /etc/init.d/munin-node start
Starting Munin Node: Can't exec "hostname": 許可がありません at /usr/sbin/munin-node line 240, line 43.
Use of uninitialized value $hostname in scalar chomp at /usr/sbin/munin-node line 241, line 43.
Use of uninitialized value $hostname in substitution (s///) at /usr/sbin/munin-node line 242, line 43.
[ OK ]
# /etc/init.d/munin-node status
munin-node (pid 3488) を実行中...
デフォルトでは、4949 番ポートをオープンする。
tcp 4949 をオープンしているプロセスID
# fuser -n tcp 4949
4949/tcp: 3488
PID 3488 は munin
# ps aux | grep 3488
root 3488 0.0 0.1 12160 5900 ? Ss 00:58 0:00 /usr/sbin/munin-node
# egrep -i 4949 /etc/munin/munin-node.conf
# telnetting to localhost, port 4949
port 4949
やっぱ、起動時のさっきのエラーを直そう。
# egrep "^host_name" /etc/munin/munin-node.conf
host_name arizona.localdomain
リロード。
# /etc/init.d/munin-node reload
Stopping Munin Node agents: [ OK ]
Starting Munin Node:
では、ブラウザで 4949 ポートへアクセス。
あら、timeout になった。
iptabes の許可リストをみると 4949 が許可されていない。
# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT udp -- anywhere anywhere udp dpt:domain
ACCEPT tcp -- anywhere anywhere tcp dpt:domain
ACCEPT udp -- anywhere anywhere udp dpt:bootps
ACCEPT tcp -- anywhere anywhere tcp dpt:bootps
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
ACCEPT icmp -- anywhere anywhere
ACCEPT all -- anywhere anywhere
ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:ssh
REJECT all -- anywhere anywhere reject-with icmp-host-prohibited
iptables コマンド忘れちゃったので、GUI で許可。
iptables -L をチェック。
OK
# iptables -L | grep munin
ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:munin
ではアクセス。
うーん timeout になるなー。
Connection timed out.
timeout at /usr/sbin/munin-node line 520, line 10.
SELinux がはじいているみたい。
/var/log/messages。SELinux わからん。。
SELinux is preventing unbound-control (munin_t) "search" named_conf_t. For complete SELinux messages. run sealert -l 2211f67c-6dbd-4b2e-9272-c8d444797822
SELinux is preventing find (munin_t) "read" mqueue_spool_t. For complete SELinux messages. run sealert -l 6f0e0d34-a4af-4bfe-9141-c6cd8ba6e42f
SELinux is preventing find (munin_t) "read" mqueue_spool_t. For complete SELinux messages. run sealert -l 926631d5-c01f-49d1-93ae-186deccf8a95
GUIから SELinux 許可にしたけどまだ絵エラーでるなー。
SELinux denied access requested by unbound-control. It is not expected that this access is required by unbound-control and this access may signal an intrusion attempt. It is also possible that the specific version or configuration of the application is causing it to require additional access.
disabled にしたのになー。
# egrep disable /etc/selinux/config
# disabled - SELinux is fully disabled.
SELINUX=disabled
SELinux の遮断ログはなくなったけど,munin のログに timeout がまだでるなー。
/var/log/munin/munin-node.log
Connection timed out.
timeout at /usr/sbin/munin-node line 520, line 10.
うーんよくわからん。。
munin というツールを unbound のページで知ったのでちょっとさわってみました。
munin は mrtg , cacti みたく 統計情報などを収集、グラフ化してくれるツール。
では、インストール。
# yum install -y munin.noarch munin-node.noarch unbound-munin.i586
munin 本体。gui で閲覧できる
# rpm -ql munin.noarch
/etc/cron.d/munin
/etc/logrotate.d/munin
/etc/munin
/etc/munin/munin.conf
/etc/munin/templates
/etc/munin/templates/definitions.html
/etc/munin/templates/logo.png
/etc/munin/templates/munin-comparison-day.tmpl
/etc/munin/templates/munin-comparison-month.tmpl
/etc/munin/templates/munin-comparison-week.tmpl
/etc/munin/templates/munin-comparison-year.tmpl
/etc/munin/templates/munin-domainview.tmpl
/etc/munin/templates/munin-nodeview.tmpl
/etc/munin/templates/munin-overview.tmpl
/etc/munin/templates/munin-serviceview.tmpl
/etc/munin/templates/style.css
/usr/bin/munin-cron
/usr/bin/munindoc
/usr/lib/perl5/vendor_perl/5.10.0/Munin
/usr/lib/perl5/vendor_perl/5.10.0/Munin.pm
/usr/share/doc/munin-1.2.6
/usr/share/doc/munin-1.2.6/COPYING
/usr/share/doc/munin-1.2.6/ChangeLog
/usr/share/doc/munin-1.2.6/README-apache-cgi
/usr/share/doc/munin-1.2.6/README.api
/usr/share/doc/munin-1.2.6/README.plugins
/usr/share/doc/munin-1.2.6/munin-doc.html
/usr/share/doc/munin-1.2.6/munin-faq.html
/usr/share/man/man5/munin.conf.5.gz
/usr/share/man/man8/munin-cron.8.gz
/usr/share/man/man8/munin-graph.8.gz
/usr/share/man/man8/munin-html.8.gz
/usr/share/man/man8/munin-limits.8.gz
/usr/share/man/man8/munin-update.8.gz
/usr/share/munin
/usr/share/munin/VeraMono.ttf
/usr/share/munin/munin-graph
/usr/share/munin/munin-html
/usr/share/munin/munin-limits
/usr/share/munin/munin-update
/var/lib/munin
/var/log/munin
/var/run/munin
/var/www/html/munin
/var/www/html/munin/cgi
/var/www/html/munin/cgi/munin-cgi-graph
/var/www/html/munin/style.css
munin のプラグイン。たくさんあるなー。
# rpm -ql munin-node.noarch
/etc/logrotate.d/munin-node
/etc/munin
/etc/munin/munin-node.conf
/etc/munin/plugin-conf.d
/etc/munin/plugin-conf.d/hddtemp_smartctl
/etc/munin/plugin-conf.d/munin-node
/etc/munin/plugin-conf.d/nf_conntrack
/etc/munin/plugin-conf.d/postfix
/etc/munin/plugin-conf.d/sendmail
/etc/munin/plugins
/etc/rc.d/init.d/munin-node
/usr/lib/perl5/vendor_perl/5.10.0/Munin/Plugin.pm
/usr/sbin/munin-node
/usr/sbin/munin-node-configure
/usr/sbin/munin-node-configure-snmp
/usr/sbin/munin-run
/usr/share/doc/munin-1.2.6
/usr/share/doc/munin-1.2.6/COPYING
/usr/share/doc/munin-1.2.6/ChangeLog
/usr/share/doc/munin-1.2.6/README-apache-cgi
/usr/share/doc/munin-1.2.6/README.api
/usr/share/doc/munin-1.2.6/README.plugins
/usr/share/doc/munin-1.2.6/munin-doc.html
/usr/share/doc/munin-1.2.6/munin-faq.html
/usr/share/man/man5/munin-node.conf.5.gz
/usr/share/man/man8/munin-node-configure-snmp.8.gz
/usr/share/man/man8/munin-node-configure.8.gz
/usr/share/man/man8/munin-node.8.gz
/usr/share/man/man8/munin-run.8.gz
/usr/share/munin
/usr/share/munin/plugins
/usr/share/munin/plugins/acpi
/usr/share/munin/plugins/amavis
/usr/share/munin/plugins/apache_accesses
/usr/share/munin/plugins/apache_processes
/usr/share/munin/plugins/apache_volume
/usr/share/munin/plugins/apc_envunit_
/usr/share/munin/plugins/apc_nis
/usr/share/munin/plugins/apt
/usr/share/munin/plugins/apt_all
/usr/share/munin/plugins/bind9
/usr/share/munin/plugins/bind9_rndc
/usr/share/munin/plugins/courier_
/usr/share/munin/plugins/courier_mta_mailqueue
/usr/share/munin/plugins/courier_mta_mailstats
/usr/share/munin/plugins/courier_mta_mailvolume
/usr/share/munin/plugins/cps_
/usr/share/munin/plugins/cpu
/usr/share/munin/plugins/cupsys_pages
/usr/share/munin/plugins/df
/usr/share/munin/plugins/df_abs
/usr/share/munin/plugins/df_inode
/usr/share/munin/plugins/dhcpd3
/usr/share/munin/plugins/entropy
/usr/share/munin/plugins/exim_mailqueue
/usr/share/munin/plugins/exim_mailqueue_alt
/usr/share/munin/plugins/exim_mailstats
/usr/share/munin/plugins/files_
/usr/share/munin/plugins/foldingathome
/usr/share/munin/plugins/foldingathome_rank
/usr/share/munin/plugins/foldingathome_wu
/usr/share/munin/plugins/forks
/usr/share/munin/plugins/fw_conntrack
/usr/share/munin/plugins/fw_forwarded_local
/usr/share/munin/plugins/fw_packets
/usr/share/munin/plugins/hddtemp
/usr/share/munin/plugins/hddtemp2
/usr/share/munin/plugins/hddtemp_smartctl
/usr/share/munin/plugins/hddtempd
/usr/share/munin/plugins/i2c
/usr/share/munin/plugins/i2c_fan
/usr/share/munin/plugins/if_
/usr/share/munin/plugins/if_err_
/usr/share/munin/plugins/interrupts
/usr/share/munin/plugins/iostat
/usr/share/munin/plugins/iostat_ios
/usr/share/munin/plugins/ip_
/usr/share/munin/plugins/ipac-ng
/usr/share/munin/plugins/ircu
/usr/share/munin/plugins/irqstats
/usr/share/munin/plugins/load
/usr/share/munin/plugins/loggrep
/usr/share/munin/plugins/mailman
/usr/share/munin/plugins/mailscanner
/usr/share/munin/plugins/mbmon_
/usr/share/munin/plugins/memory
/usr/share/munin/plugins/mhttping
/usr/share/munin/plugins/multips
/usr/share/munin/plugins/munin_graph
/usr/share/munin/plugins/munin_update
/usr/share/munin/plugins/mysql_bytes
/usr/share/munin/plugins/mysql_isam_space_
/usr/share/munin/plugins/mysql_queries
/usr/share/munin/plugins/mysql_slowqueries
/usr/share/munin/plugins/mysql_threads
/usr/share/munin/plugins/named
/usr/share/munin/plugins/netopia
/usr/share/munin/plugins/netstat
/usr/share/munin/plugins/nfs_client
/usr/share/munin/plugins/nfsd
/usr/share/munin/plugins/ntp_
/usr/share/munin/plugins/ntp_offset
/usr/share/munin/plugins/ntp_states
/usr/share/munin/plugins/nut_misc
/usr/share/munin/plugins/nut_volts
/usr/share/munin/plugins/open_files
/usr/share/munin/plugins/open_inodes
/usr/share/munin/plugins/perdition
/usr/share/munin/plugins/ping_
/usr/share/munin/plugins/plugin.sh
/usr/share/munin/plugins/plugins.history
/usr/share/munin/plugins/pm3users_
/usr/share/munin/plugins/pop_stats
/usr/share/munin/plugins/port_
/usr/share/munin/plugins/postfix_mailqueue
/usr/share/munin/plugins/postfix_mailstats
/usr/share/munin/plugins/postfix_mailvolume
/usr/share/munin/plugins/processes
/usr/share/munin/plugins/ps_
/usr/share/munin/plugins/psu_
/usr/share/munin/plugins/samba
/usr/share/munin/plugins/sendmail_mailqueue
/usr/share/munin/plugins/sendmail_mailstats
/usr/share/munin/plugins/sendmail_mailtraffic
/usr/share/munin/plugins/sensors_
/usr/share/munin/plugins/smart_
/usr/share/munin/plugins/snmp__df
/usr/share/munin/plugins/snmp__fc_if_
/usr/share/munin/plugins/snmp__fc_if_err_
/usr/share/munin/plugins/snmp__if_
/usr/share/munin/plugins/snmp__if_err_
/usr/share/munin/plugins/snmp__load
/usr/share/munin/plugins/snmp__processes
/usr/share/munin/plugins/snmp__sensors_fsc_bx_fan
/usr/share/munin/plugins/snmp__sensors_fsc_bx_temp
/usr/share/munin/plugins/snmp__sensors_fsc_fan
/usr/share/munin/plugins/snmp__sensors_fsc_temp
/usr/share/munin/plugins/snmp__sensors_mbm_fan
/usr/share/munin/plugins/snmp__sensors_mbm_temp
/usr/share/munin/plugins/snmp__sensors_mbm_volt
/usr/share/munin/plugins/snmp__users
/usr/share/munin/plugins/spamstats
/usr/share/munin/plugins/squid_cache
/usr/share/munin/plugins/squid_icp
/usr/share/munin/plugins/squid_requests
/usr/share/munin/plugins/squid_traffic
/usr/share/munin/plugins/surfboard
/usr/share/munin/plugins/swap
/usr/share/munin/plugins/uptime
/usr/share/munin/plugins/users
/usr/share/munin/plugins/vlan_
/usr/share/munin/plugins/vlan_inetuse_
/usr/share/munin/plugins/vlan_linkuse_
/usr/share/munin/plugins/vmstat
/var/lib/munin
/var/lib/munin/plugin-state
/var/log/munin
unbound 用 munin プラグイン。
パッケージがない場合は、unbound のソースに含まれているので、
それを使用しましょう。
# rpm -ql unbound-munin.i586/etc/munin/plugin-conf.d/unbound
/usr/share/munin/plugins/unbound
/usr/share/munin/plugins/unbound_munin_by_class
/usr/share/munin/plugins/unbound_munin_by_flags
/usr/share/munin/plugins/unbound_munin_by_opcode
/usr/share/munin/plugins/unbound_munin_by_rcode
/usr/share/munin/plugins/unbound_munin_by_type
/usr/share/munin/plugins/unbound_munin_histogram
/usr/share/munin/plugins/unbound_munin_hits
/usr/share/munin/plugins/unbound_munin_memory
/usr/share/munin/plugins/unbound_munin_queue
plugin は下記のディレクトリにある。
# pwd
/etc/munin/plugins
シンボリックリンクになっている。
# ls -lh | head -5
合計 0
lrwxrwxrwx. 1 root root 28 2009-06-19 00:45 cpu -> /usr/share/munin/plugins/cpu
lrwxrwxrwx. 1 root root 27 2009-06-19 00:45 df -> /usr/share/munin/plugins/df
lrwxrwxrwx. 1 root root 33 2009-06-19 00:45 df_inode -> /usr/share/munin/plugins/df_inode
lrwxrwxrwx. 1 root root 32 2009-06-19 00:45 entropy -> /usr/share/munin/plugins/entropy
unbound 用 plugins のシンボリックリンクを/etc/munin/plugins 下に作成。
# pwd
/etc/munin/plugins
# ln -s /usr/share/munin/plugins/unbound unbound
# ls -l unbound
lrwxrwxrwx. 1 root root 32 2009-06-19 00:55 unbound -> /usr/share/munin/plugins/unbound
unbound.conf を修正
unbound.conf
# print statistics to the log (for every thread) every N seconds.
# Set to "" or 0 to disable. Default is disabled.
# Needed for munin plugin
statistics-interval: 0
# enable cumulative statistics, without clearing them after printing.
# Needed for munin plugin
statistics-cumulative: no
# enable extended statistics (query types, answer codes, status)
# printed from unbound-control. default off, because of speed.
# Needed for munin plugin
extended-statistics: yes
では munin を起動。
怒られたけど起動したからいいやー。
# /etc/init.d/munin-node start
Starting Munin Node: Can't exec "hostname": 許可がありません at /usr/sbin/munin-node line 240,
Use of uninitialized value $hostname in scalar chomp at /usr/sbin/munin-node line 241,
Use of uninitialized value $hostname in substitution (s///) at /usr/sbin/munin-node line 242,
[ OK ]
# /etc/init.d/munin-node status
munin-node (pid 3488) を実行中...
デフォルトでは、4949 番ポートをオープンする。
tcp 4949 をオープンしているプロセスID
# fuser -n tcp 4949
4949/tcp: 3488
PID 3488 は munin
# ps aux | grep 3488
root 3488 0.0 0.1 12160 5900 ? Ss 00:58 0:00 /usr/sbin/munin-node
# egrep -i 4949 /etc/munin/munin-node.conf
# telnetting to localhost, port 4949
port 4949
やっぱ、起動時のさっきのエラーを直そう。
# egrep "^host_name" /etc/munin/munin-node.conf
host_name arizona.localdomain
リロード。
# /etc/init.d/munin-node reload
Stopping Munin Node agents: [ OK ]
Starting Munin Node:
では、ブラウザで 4949 ポートへアクセス。
あら、timeout になった。
iptabes の許可リストをみると 4949 が許可されていない。
# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT udp -- anywhere anywhere udp dpt:domain
ACCEPT tcp -- anywhere anywhere tcp dpt:domain
ACCEPT udp -- anywhere anywhere udp dpt:bootps
ACCEPT tcp -- anywhere anywhere tcp dpt:bootps
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
ACCEPT icmp -- anywhere anywhere
ACCEPT all -- anywhere anywhere
ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:ssh
REJECT all -- anywhere anywhere reject-with icmp-host-prohibited
iptables コマンド忘れちゃったので、GUI で許可。
iptables -L をチェック。
OK
# iptables -L | grep munin
ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:munin
うーん timeout になるなー。
Connection timed out.
timeout at /usr/sbin/munin-node line 520,
SELinux がはじいているみたい。
/var/log/messages。SELinux わからん。。
SELinux is preventing unbound-control (munin_t) "search" named_conf_t. For complete SELinux messages. run sealert -l 2211f67c-6dbd-4b2e-9272-c8d444797822
SELinux is preventing find (munin_t) "read" mqueue_spool_t. For complete SELinux messages. run sealert -l 6f0e0d34-a4af-4bfe-9141-c6cd8ba6e42f
SELinux is preventing find (munin_t) "read" mqueue_spool_t. For complete SELinux messages. run sealert -l 926631d5-c01f-49d1-93ae-186deccf8a95
GUIから SELinux 許可にしたけどまだ絵エラーでるなー。
SELinux denied access requested by unbound-control. It is not expected that this access is required by unbound-control and this access may signal an intrusion attempt. It is also possible that the specific version or configuration of the application is causing it to require additional access.
disabled にしたのになー。
# egrep disable /etc/selinux/config
# disabled - SELinux is fully disabled.
SELINUX=disabled
SELinux の遮断ログはなくなったけど,munin のログに timeout がまだでるなー。
/var/log/munin/munin-node.log
Connection timed out.
timeout at /usr/sbin/munin-node line 520,
うーんよくわからん。。
ssldump 続
ssldump 続き。
src.rpm をゲット。
ググると簡単に見つかる。 ssldump src.rpm で検索。
google って動詞で使えるんだねー。I googled ... って感じ。
# rpm -ivh ssldump-0.9-0.beta3.2.rf.src.rpm
バイナリの作成。いつの間にか、rpm --rebuild から rpmbuild に
変わったんだね。。
# rpmbuild -bb /root/rpmbuild/SPECS/ssldump.spec
rpm ができたぜい。。
# pwd
/root/rpmbuild/RPMS/i586
# ls
ssldump-0.9-0.beta3.2.rf.i586.rpm ssldump-debuginfo-0.9-0.beta3.2.rf.i586.rpm
インストールだー。
# rpm -ivh ssldump-0.9-0.beta3.2.rf.i586.rpm
さて、使えるかな。
またもやエラー。
# ssldump -i eth0 -k /etc/pki/tls/private/localhost.key
ERROR: Couldn't create network handler
src.rpm をゲット。
ググると簡単に見つかる。 ssldump src.rpm で検索。
google って動詞で使えるんだねー。I googled ... って感じ。
# rpm -ivh ssldump-0.9-0.beta3.2.rf.src.rpm
バイナリの作成。いつの間にか、rpm --rebuild から rpmbuild に
変わったんだね。。
# rpmbuild -bb /root/rpmbuild/SPECS/ssldump.spec
rpm ができたぜい。。
# pwd
/root/rpmbuild/RPMS/i586
# ls
ssldump-0.9-0.beta3.2.rf.i586.rpm ssldump-debuginfo-0.9-0.beta3.2.rf.i586.rpm
インストールだー。
# rpm -ivh ssldump-0.9-0.beta3.2.rf.i586.rpm
さて、使えるかな。
またもやエラー。
# ssldump -i eth0 -k /etc/pki/tls/private/localhost.key
ERROR: Couldn't create network handler
ssldump
さて、Apache + mod_ssl で SSL サイトの準備ができたので、ssldump
を使ってみよう。
SSL は暗号化されているので、キャプチャしても中身が見えん~。。。
トラブったときに何が原因かわからーん、って時は ssldump で
SSL通信の中身を見てみましょう。
では、ssldump をインストール
ssldump の source をゲット。
http://linux.softpedia.com/progDownload/ssldump-Download-14060.html
インストール
# tar xzvf ssldump-0.9b3.tar.gz
あ、PCAP が必要だった。
# ./configure
checking for PCAP include files...
configure: error: Couldn't find PCAP includes: needed for ssldump
wireshark インストールしてなかったら、wireshark インストールしよう。
wireshark は pcap を必要だったはずなので、wireshark のインストールで
pcap もインストールされるはず。
# yum install -y wireshark.i586 wireshark-gnome.i586
再度インストール。。あれ、またエラーが。。
# ./configure
checking for PCAP include files...
configure: error: Couldn't find PCAP includes: needed for ssldump
pcap いるはずなんだけどなー。
いるいる。。
# yum list | grep pcap
libpcap.i586 14:0.9.8-4.fc11 installed
# rpm -ql libpcap.i586
/usr/lib/libpcap.so.0.9
/usr/lib/libpcap.so.0.9.8
/usr/share/doc/libpcap-0.9.8
/usr/share/doc/libpcap-0.9.8/CHANGES
/usr/share/doc/libpcap-0.9.8/CREDITS
/usr/share/doc/libpcap-0.9.8/LICENSE
/usr/share/doc/libpcap-0.9.8/README
/usr/share/doc/libpcap-0.9.8/pcap.txt
これもいれてみるか。
# yum install -y libpcap-devel.i586
# rpm -ql libpcap-devel.i586
/usr/include/pcap-bpf.h
/usr/include/pcap-namedb.h
/usr/include/pcap.h
/usr/lib/libpcap.so
/usr/share/man/man3/pcap.3.gz
include ファイルは libpcap-devel パッケージなんだ~。
あれ、指定してるんだけどエラーでるなー。
# ./configure --with-pcap-inc=/usr/include --with-pcap-lib=/usr/lib | grep -i error
configure: error: Couldn't find PCAP library: needed for ssldump
configureファイル見ると、/usr/lib と /usr/include チェックしてそうなのに。
ac_pcap_inc_dir="/usr/include /usr/include/pcap /usr/local/include"
ac_pcap_lib_dir="/usr/lib /usr/local/lib"
# Check whether --with-pcap or --without-pcap was given.
if test "${with_pcap+set}" = set; then
withval="$with_pcap"
if test "$withval" = "no"; then
{ echo "configure: error: PCAP required for ssldump" 1>&2; exit 1; }
else
ac_pcap_inc_dir=$withval/include
ac_pcap_lib_dir=$withval/lib
fi
fi
libpcap を source からインストールするか。。
76 tar xzvf libpcap-1.0.0.tar.gz
77 cd libpcap-1.0.0
78 ls
79 ./configure
80 make;make install
ssldump をインストール。おっ、configure うまくいった。
[ssldump-0.9b3]# ./configure
うーん、bpf.h がみつからんと。
# make
gcc -g -O2 -DHAVE_LIBM=1 -DHAVE_SYS_TIME_H=1 -DSTDC_HEADERS=1 -DTIME_WITH_SYS_TIME=1 -DSIZEOF_UNSIGNED_SHORT=2 -DSIZEOF_UNSIGNED_INT=4 -DSIZEOF_UNSIGNED_LONG=4 -DSIZEOF_UNSIGNED_LONG_LONG=8 -DRETSIGTYPE=void -DHAVE_VPRINTF=1 -DHAVE_STRDUP=1 -c -o pcap-snoop.o ./base/pcap-snoop.c -DOPENSSL -D_BSD_SOURCE=1 -DLINUX -I./base/ -I./null/ -I./ssl/ -Icommon/include/ -I./null/ -I./ssl/ -I/usr/include
./base/pcap-snoop.c:52:21: error: net/bpf.h: そのようなファイルやディレクトリはありません
でもあるので。。
# locate bpf.h
/root/libpcap-1.0.0/pcap-bpf.h
/root/libpcap-1.0.0/pcap/bpf.h
/usr/include/pcap-bpf.h
/usr/local/include/pcap-bpf.h
/usr/local/include/pcap/bpf.h
lib , include を指定
# ./configure --with-pcap-inc=/usr/local/include --with-pcap-lib=/usr/local/lib
make で同じエラーがでるなー。
また次回チャレンジ。。
を使ってみよう。
SSL は暗号化されているので、キャプチャしても中身が見えん~。。。
トラブったときに何が原因かわからーん、って時は ssldump で
SSL通信の中身を見てみましょう。
では、ssldump をインストール
ssldump の source をゲット。
http://linux.softpedia.com/progDownload/ssldump-Download-14060.html
インストール
# tar xzvf ssldump-0.9b3.tar.gz
あ、PCAP が必要だった。
# ./configure
checking for PCAP include files...
configure: error: Couldn't find PCAP includes: needed for ssldump
wireshark インストールしてなかったら、wireshark インストールしよう。
wireshark は pcap を必要だったはずなので、wireshark のインストールで
pcap もインストールされるはず。
# yum install -y wireshark.i586 wireshark-gnome.i586
再度インストール。。あれ、またエラーが。。
# ./configure
checking for PCAP include files...
configure: error: Couldn't find PCAP includes: needed for ssldump
pcap いるはずなんだけどなー。
いるいる。。
# yum list | grep pcap
libpcap.i586 14:0.9.8-4.fc11 installed
# rpm -ql libpcap.i586
/usr/lib/libpcap.so.0.9
/usr/lib/libpcap.so.0.9.8
/usr/share/doc/libpcap-0.9.8
/usr/share/doc/libpcap-0.9.8/CHANGES
/usr/share/doc/libpcap-0.9.8/CREDITS
/usr/share/doc/libpcap-0.9.8/LICENSE
/usr/share/doc/libpcap-0.9.8/README
/usr/share/doc/libpcap-0.9.8/pcap.txt
これもいれてみるか。
# yum install -y libpcap-devel.i586
# rpm -ql libpcap-devel.i586
/usr/include/pcap-bpf.h
/usr/include/pcap-namedb.h
/usr/include/pcap.h
/usr/lib/libpcap.so
/usr/share/man/man3/pcap.3.gz
include ファイルは libpcap-devel パッケージなんだ~。
あれ、指定してるんだけどエラーでるなー。
# ./configure --with-pcap-inc=/usr/include --with-pcap-lib=/usr/lib | grep -i error
configure: error: Couldn't find PCAP library: needed for ssldump
configureファイル見ると、/usr/lib と /usr/include チェックしてそうなのに。
ac_pcap_inc_dir="/usr/include /usr/include/pcap /usr/local/include"
ac_pcap_lib_dir="/usr/lib /usr/local/lib"
# Check whether --with-pcap or --without-pcap was given.
if test "${with_pcap+set}" = set; then
withval="$with_pcap"
if test "$withval" = "no"; then
{ echo "configure: error: PCAP required for ssldump" 1>&2; exit 1; }
else
ac_pcap_inc_dir=$withval/include
ac_pcap_lib_dir=$withval/lib
fi
fi
libpcap を source からインストールするか。。
76 tar xzvf libpcap-1.0.0.tar.gz
77 cd libpcap-1.0.0
78 ls
79 ./configure
80 make;make install
ssldump をインストール。おっ、configure うまくいった。
[ssldump-0.9b3]# ./configure
うーん、bpf.h がみつからんと。
# make
gcc -g -O2 -DHAVE_LIBM=1 -DHAVE_SYS_TIME_H=1 -DSTDC_HEADERS=1 -DTIME_WITH_SYS_TIME=1 -DSIZEOF_UNSIGNED_SHORT=2 -DSIZEOF_UNSIGNED_INT=4 -DSIZEOF_UNSIGNED_LONG=4 -DSIZEOF_UNSIGNED_LONG_LONG=8 -DRETSIGTYPE=void -DHAVE_VPRINTF=1 -DHAVE_STRDUP=1 -c -o pcap-snoop.o ./base/pcap-snoop.c -DOPENSSL -D_BSD_SOURCE=1 -DLINUX -I./base/ -I./null/ -I./ssl/ -Icommon/include/ -I./null/ -I./ssl/ -I/usr/include
./base/pcap-snoop.c:52:21: error: net/bpf.h: そのようなファイルやディレクトリはありません
でもあるので。。
# locate bpf.h
/root/libpcap-1.0.0/pcap-bpf.h
/root/libpcap-1.0.0/pcap/bpf.h
/usr/include/pcap-bpf.h
/usr/local/include/pcap-bpf.h
/usr/local/include/pcap/bpf.h
lib , include を指定
# ./configure --with-pcap-inc=/usr/local/include --with-pcap-lib=/usr/local/lib
make で同じエラーがでるなー。
また次回チャレンジ。。
Apache SSL
Apache SSL 使用方法
OS: Fedora 11
必要なパッケージ
httpd , mod_ssl , openssl
# yum install -y httpd.i586
# yum install -y mod_ssl.i586
# yum install -y openssl.i686
# httpd -v
Server version: Apache/2.2.11 (Unix)
Server built: Mar 17 2009 09:15:10
証明書、鍵を openssl で作成、、と思いきや、
テスト用の証明書、鍵がインストールされている。
opensslコマンドで証明書、鍵の作成をしなくてよさそう。
うーん楽ちんだ。
# egrep -v "^#" /etc/httpd/conf.d/ssl.conf | egrep -v "^$"
LoadModule ssl_module modules/mod_ssl.so
Listen 443
SSLPassPhraseDialog builtin
SSLSessionCache shmcb:/var/cache/mod_ssl/scache(512000)
SSLSessionCacheTimeout 300
SSLMutex default
SSLRandomSeed startup file:/dev/urandom 256
SSLRandomSeed connect builtin
SSLCryptoDevice builtin
ErrorLog logs/ssl_error_log
TransferLog logs/ssl_access_log
LogLevel warn
SSLEngine on
SSLProtocol all -SSLv2
SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:+LOW
SSLCertificateFile /etc/pki/tls/certs/localhost.crt ←証明書 SSLCertificateKeyFile /etc/pki/tls/private/localhost.key ←秘密キー
SSLOptions +StdEnvVars
SSLOptions +StdEnvVars
SetEnvIf User-Agent ".*MSIE.*" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
CustomLog logs/ssl_request_log \
"%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
# ls /etc/pki/tls/certs/*.crt
/etc/pki/tls/certs/ca-bundle.crt /etc/pki/tls/certs/localhost.crt
# ls /etc/pki/tls/private/*.key
/etc/pki/tls/private/localhost.key
ためしに起動。
あれ、apachectl startssl がない。。
# apachectl startssl
Usage: /usr/sbin/httpd [-D name] [-d directory] [-f file]
[-C "directive"] [-c "directive"]
[-k start|restart|graceful|graceful-stop|stop]
[-v] [-V] [-h] [-l] [-L] [-t] [-S]
じゃあ、apachectl start で。
# apachectl start
Fedora 11 の httpd.conf は conf.d 下の設定ファイルを読み込んでくれる
みたい。( i.e. /etc/httpd/conf.d/ssl.conf を読み込んでくれる )
# egrep -i include /etc/httpd/conf/httpd.conf | grep "conf.d"
Include conf.d/*.conf
ポートをリッスンしているかチェック。
# lsof -i:443 | head -2
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
httpd 3140 root 6u IPv6 35807 0t0 TCP *:https (LISTEN)
# lsof -i:80 | head -2
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
httpd 3140 root 4u IPv6 35803 0t0 TCP *:http (LISTEN)
では、ブラウザでアクセス。
get things done!
OS: Fedora 11
必要なパッケージ
httpd , mod_ssl , openssl
# yum install -y httpd.i586
# yum install -y mod_ssl.i586
# yum install -y openssl.i686
# httpd -v
Server version: Apache/2.2.11 (Unix)
Server built: Mar 17 2009 09:15:10
証明書、鍵を openssl で作成、、と思いきや、
テスト用の証明書、鍵がインストールされている。
opensslコマンドで証明書、鍵の作成をしなくてよさそう。
うーん楽ちんだ。
# egrep -v "^#" /etc/httpd/conf.d/ssl.conf | egrep -v "^$"
LoadModule ssl_module modules/mod_ssl.so
Listen 443
SSLPassPhraseDialog builtin
SSLSessionCache shmcb:/var/cache/mod_ssl/scache(512000)
SSLSessionCacheTimeout 300
SSLMutex default
SSLRandomSeed startup file:/dev/urandom 256
SSLRandomSeed connect builtin
SSLCryptoDevice builtin
ErrorLog logs/ssl_error_log
TransferLog logs/ssl_access_log
LogLevel warn
SSLEngine on
SSLProtocol all -SSLv2
SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:+LOW
SSLCertificateFile /etc/pki/tls/certs/localhost.crt ←証明書 SSLCertificateKeyFile /etc/pki/tls/private/localhost.key ←秘密キー
SSLOptions +StdEnvVars
SSLOptions +StdEnvVars
SetEnvIf User-Agent ".*MSIE.*" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
CustomLog logs/ssl_request_log \
"%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
# ls /etc/pki/tls/certs/*.crt
/etc/pki/tls/certs/ca-bundle.crt /etc/pki/tls/certs/localhost.crt
# ls /etc/pki/tls/private/*.key
/etc/pki/tls/private/localhost.key
ためしに起動。
あれ、apachectl startssl がない。。
# apachectl startssl
Usage: /usr/sbin/httpd [-D name] [-d directory] [-f file]
[-C "directive"] [-c "directive"]
[-k start|restart|graceful|graceful-stop|stop]
[-v] [-V] [-h] [-l] [-L] [-t] [-S]
じゃあ、apachectl start で。
# apachectl start
Fedora 11 の httpd.conf は conf.d 下の設定ファイルを読み込んでくれる
みたい。( i.e. /etc/httpd/conf.d/ssl.conf を読み込んでくれる )
# egrep -i include /etc/httpd/conf/httpd.conf | grep "conf.d"
Include conf.d/*.conf
ポートをリッスンしているかチェック。
# lsof -i:443 | head -2
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
httpd 3140 root 6u IPv6 35807 0t0 TCP *:https (LISTEN)
# lsof -i:80 | head -2
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
httpd 3140 root 4u IPv6 35803 0t0 TCP *:http (LISTEN)
では、ブラウザでアクセス。
get things done!
Fedora 11 , Dell Inspiron 1526
Unbound , Fedora 11
OS: Fedora11
なんとなく、ISPのキャッシュサーバではなく自前のキャッシュサーバ
を使いたくなるので、unbound をインストール。
インストール
# yum install -y unbound.i586
起動
# /etc/init.d/unbound start
unbound-control コマンド ( rndc の unbound 版みたいなもの )
を使用するには、unbound-control-setup コマンドを実行し、unbound_control.key
を作成する必要があるけど、Fedora11のパッケージだと、初起動のときにキー
を作ってくれるみたい。
unbound.conf 抜粋
# Remote control config section.
remote-control:
# Enable remote control with unbound-control(8) here.
# set up the keys and certificates with unbound-control-setup.
# Note: required for unbound-munin package
control-enable: yes
初起動時のメッセージ
# /etc/init.d/unbound start
unbound の制御キーと証明証を生成中:
unbound を起動中: [ OK ]
#
起動スクリプトを確認したら、確かに unbound_control.key が存在しているか
チェックしてる。
if [ ! -f /etc/unbound/unbound_control.key ]
# less -N /etc/init.d/unbound
39 start() {
40 [ -x $exec ] || exit 5
41 [ -f $config ] || exit 6
42 # /var/run could (and should) be tmpfs
43 [ -d $piddir ] || mkdir $piddir
44
45 if [ ! -f /etc/unbound/unbound_control.key ]
46 then
47 echo -n $"Generating unbound control key and certificate: "
48 /usr/sbin/unbound-control-setup -d /etc/unbound/ > /dev/null 2> /dev/null
unbound-control コマンド OK !
# unbound-control status
version: 1.2.1
verbosity: 1
threads: 1
modules: 2 [ validator iterator ]
uptime: 7 seconds
unbound (pid 4664) is running...
名前解決も OK !
# dig @127.1 www.google.co.jp
なんとなく、ISPのキャッシュサーバではなく自前のキャッシュサーバ
を使いたくなるので、unbound をインストール。
インストール
# yum install -y unbound.i586
起動
# /etc/init.d/unbound start
unbound-control コマンド ( rndc の unbound 版みたいなもの )
を使用するには、unbound-control-setup コマンドを実行し、unbound_control.key
を作成する必要があるけど、Fedora11のパッケージだと、初起動のときにキー
を作ってくれるみたい。
unbound.conf 抜粋
# Remote control config section.
remote-control:
# Enable remote control with unbound-control(8) here.
# set up the keys and certificates with unbound-control-setup.
# Note: required for unbound-munin package
control-enable: yes
初起動時のメッセージ
# /etc/init.d/unbound start
unbound の制御キーと証明証を生成中:
unbound を起動中: [ OK ]
#
起動スクリプトを確認したら、確かに unbound_control.key が存在しているか
チェックしてる。
if [ ! -f /etc/unbound/unbound_control.key ]
# less -N /etc/init.d/unbound
39 start() {
40 [ -x $exec ] || exit 5
41 [ -f $config ] || exit 6
42 # /var/run could (and should) be tmpfs
43 [ -d $piddir ] || mkdir $piddir
44
45 if [ ! -f /etc/unbound/unbound_control.key ]
46 then
47 echo -n $"Generating unbound control key and certificate: "
48 /usr/sbin/unbound-control-setup -d /etc/unbound/ > /dev/null 2> /dev/null
unbound-control コマンド OK !
# unbound-control status
version: 1.2.1
verbosity: 1
threads: 1
modules: 2 [ validator iterator ]
uptime: 7 seconds
unbound (pid 4664) is running...
名前解決も OK !
# dig @127.1 www.google.co.jp
Linux , Adobe Flash Player
OS: Fedora 11 ( 32bit )
早速、adobe flash playerをインストール。
youtube が見れんので。
http://get.adobe.com/jp/flashplayer/ から、Linux Yum 用をダウンロード。更新があったとき yum update でアップデートできるので。
flash player Linux Yum 用 rpm をインストール。
# rpm -ivh adobe-release-i386-1.0-1.noarch.rpm
で、yum コマンドで flash player をインストール
# yum install flash-plugin.i386 -y
ブラウザ(Firefox)を再起動。
Done!
Buckcherry かっこいいなー。
もう tattoo いれる場所がなさそう。
早速、adobe flash playerをインストール。
youtube が見れんので。
http://get.adobe.com/jp/flashplayer/ から、Linux Yum 用をダウンロード。更新があったとき yum update でアップデートできるので。
flash player Linux Yum 用 rpm をインストール。
# rpm -ivh adobe-release-i386-1.0-1.noarch.rpm
で、yum コマンドで flash player をインストール
# yum install flash-plugin.i386 -y
ブラウザ(Firefox)を再起動。
Done!
Buckcherry かっこいいなー。
もう tattoo いれる場所がなさそう。
Fedora 11 has been released !
Subscribe to:
Posts (Atom)