YAMAHA RTX1200を導入 L2TP PPTP NAT FW設定例の公開
2月 27, 2013 — 21:43

我が家ではRT58iを長い間利用しておりましたが、いい加減Gigabit対応していこうと今回、RTX1200を購入しました。
NVR500と悩んだ結果、PCと違い長い間お世話になることを考えると少しでもいいものを購入しておいたほうが後で後悔しないだろうということでこちらを買いました。

過去、何処は言えませんがとあるメーカーの安いルータを使用したところ我が家の過酷な環境に耐えられなく数ヶ月で壊れるという事件も起きましたので・・・
RT58iは、そのような我が家の環境でも故障もトラブルも一度も発生させずに長いこと利用できていました。

そんな訳で、YAMAHAのルータは素晴らしいです。

あ、えーっと。この子のお値段は聞かないでください。気がついたらお財布の中が空になってしましました。。。

開封・・・
IMG_1549[1]

IMG_1550[1]

IMG_1552[1]

設定は色々前回のルータから引き継ぎなら下記のようにしてみました。
我が家では固定8IPで運用しております。そのため一般家庭の方は参考にできない部分もあるかもしれませんが・・・・
VPNやNATやFWの設定はもしかすると必要とする人がいるかもしれないと期待して公開してみます。

VPNに関しては下記の環境で正常に動作することを確認しました。
PTPPは、Windows7、OS X Mountain Lion、iOS6.1.2
L2TPは、OS X Mountain Lion、iOS5.0、Android4.0.4
※ L2TPに関してはiOS6.1.2で接続が解除される問題が発生しており現在調査中です。
※ VPNをつないだ状態でWOLを送る事も可能にしております。

リセットの仕方
全面に付いている全て(3箇所)のボタンを同時に押しで電源を入れ完全に起動後に離すことでハードリセットを行うことが可能です。

administrator password *
security class 1 on off off
ip route default gateway pp 1
ip lan1 address 192.168.100.1/24
ip lan1 proxyarp on
ip lan1 secure filter in 100000 100001 100002 100003 100004 100005 190099
ip lan1 wol relay broadcast
ip lan2 nat descriptor 1
pp select 1
 pp always-on on
 pppoe use lan2
 pppoe auto disconnect off
 pp auth accept chap
 pp auth myname USERID PASSWORD
 ppp lcp mru on 1454
 ppp ipcp msext on
 ip pp secure filter in 200000 200001 200002 200003 200008 200009 200010 200011 200012 200013 200014 200015 200016 210000 210001 210002 210003 210004 220000 220001 220002 220003 220004 220005 220006 220007 220008 220009 220010 220011 220012 220013 220014 230000
 ip pp secure filter out 200004 200005 200006 200007 200008 200009 200010 200011 200012 200013 290099 dynamic 230098 230099
 ip pp intrusion detection in on reject=on
 ip pp intrusion detection out on reject=on
 ip pp nat descriptor 1
 pp enable 1
pp select anonymous
 pp bind tunnel1-tunnel2
 pp auth request mschap-v2
 pp auth username USERID PASSWROD
 ppp ipcp ipaddress on
 ppp ipcp msext on
 ppp ccp type mppe-any
 ip pp remote address pool 192.168.100.90-192.168.100.99
 ip pp mtu 1258
 pp enable anonymous
tunnel select 1
 tunnel encapsulation l2tp
 ipsec tunnel 101
  ipsec sa policy 101 1 esp aes-cbc sha-hmac
  ipsec ike keepalive use 1 off
  ipsec ike local address 1 192.168.100.1
  ipsec ike nat-traversal 1 on
  ipsec ike payload type 1 3
  ipsec ike pre-shared-key 1 text PASSWROD
  ipsec ike remote address 1 any
 l2tp tunnel disconnect time off
 l2tp keepalive use on 10 3
 l2tp keepalive log on
 l2tp syslog on
 ip tunnel tcp mss limit auto
 tunnel enable 1
tunnel select 2
 tunnel encapsulation pptp
 pptp tunnel disconnect time off
 tunnel enable 2
ip filter 100000 reject * * udp,tcp 135 *
ip filter 100001 reject * * udp,tcp * 135
ip filter 100002 reject * * udp,tcp netbios_ns-netbios_dgm *
ip filter 100003 reject * * udp,tcp * netbios_ns-netbios_dgm
ip filter 100004 reject * * udp,tcp netbios_ssn *
ip filter 100005 reject * * udp,tcp * netbios_ssn
ip filter 100006 reject * * udp,tcp 445 *
ip filter 100007 reject * * udp,tcp * 445
ip filter 190099 pass * * * * *
ip filter 200000 reject * 192.168.100.200/29 icmp * *
ip filter 200001 reject 172.16.0.0/12 * * * *
ip filter 200002 reject 192.168.0.0/16 * * * *
ip filter 200003 reject 192.168.100.0/24 * * * *
ip filter 200004 reject * 10.0.0.0/8 * * *
ip filter 200005 reject * 172.16.0.0/12 * * *
ip filter 200006 reject * 192.168.0.0/16 * * *
ip filter 200007 reject * 192.168.100.0/24 * * *
ip filter 200008 reject * * udp,tcp 135 *
ip filter 200009 reject * * udp,tcp * 135
ip filter 200010 reject * * udp,tcp netbios_ns-netbios_ssn *
ip filter 200011 reject * * udp,tcp * netbios_ns-netbios_ssn
ip filter 200012 reject * * udp,tcp 445 *
ip filter 200013 reject * * udp,tcp * 445
ip filter 200014 pass * * icmp * *
ip filter 200015 pass * * established * *
ip filter 200016 pass * * tcp * ident
ip filter 210000 pass * 192.168.100.1 esp * *
ip filter 210001 pass * 192.168.100.1 gre * *
ip filter 210002 pass * 192.168.100.1 udp * 500
ip filter 210003 pass * 192.168.100.1 tcp * 1723
ip filter 210004 pass * 192.168.100.1 udp * 4500
ip filter 220000 pass * 192.168.100.100/29 tcp * ftpdata
ip filter 220001 pass * 192.168.100.100/29 tcp * ftpdata
ip filter 220002 pass * 192.168.100.100/29 tcp * 21
ip filter 220003 pass * 192.168.100.100/29 tcp * 22
ip filter 220004 pass * 192.168.100.100/29 tcp * telnet
ip filter 220005 pass * 192.168.100.100/29 tcp * smtp
ip filter 220006 pass * 192.168.100.100/29 tcp * domain
ip filter 220007 pass * 192.168.100.100/29 tcp * 57
ip filter 220008 pass * 192.168.100.100/29 tcp * 58
ip filter 220009 pass * 192.168.100.100/29 tcp * www
ip filter 220010 pass * 192.168.100.100/29 tcp * pop3
ip filter 220011 pass * 192.168.100.100/29 tcp * ntp
ip filter 220012 pass * 192.168.100.100/29 tcp * imap2
ip filter 220013 pass * 192.168.100.100/29 tcp * https
ip filter 220014 pass * 192.168.100.100/29 tcp * 587
ip filter 290099 pass * * * * *
ip filter dynamic 230098 * * tcp
ip filter dynamic 230099 * * udp
nat descriptor type 1 nat-masquerade
nat descriptor address outer 1 A.B.C.0-A.B.C.7
nat descriptor static 1 1 A.B.C.1=192.168.100.101 7
nat descriptor masquerade static 1 1 192.168.100.1 gre
nat descriptor masquerade static 1 2 192.168.100.1 tcp 1723
nat descriptor masquerade static 1 3 192.168.100.1 esp
nat descriptor masquerade static 1 4 192.168.100.1 udp 500
nat descriptor masquerade static 1 5 192.168.100.1 udp 4500
ipsec auto refresh on
ipsec transport 1 101 udp 1701
syslog notice on
syslog debug on
dhcp service server
dhcp server rfc2131 compliant except remain-silent
dhcp scope 1 192.168.100.2-192.168.100.90/24
dns server pp 1
schedule at 1 */* 00:00 * ntpdate ntp.nc.u-tokyo.ac.jp
pptp service on
l2tp service on

YAMAHAルータの利用者が増えるといいですね。

Perl Nmap::Scanner インストール
2月 18, 2013 — 0:58

Perlでnmapを利用したプログラムを書きたくなったので調度良さそうなライブラリを探していたところNmap::Scannerというものを見つけた。

# cpan install Nmap::Scanner
と実行したところエラーが発生した。原因はClass::Generateがインストールできないかららしい。

面倒なことにClass::Generateの現行バージョンはPerl 5.10以上でなければならないらしい。
そこでバージョンを探してみた結果、Class::Generate 1.09があったためこちらを指定してインストールした。

cpan> install S/SW/SWARTIK/Class-Generate-1.09.tar.gz

その後、Nmap::Scannerをもう一度インストールしてみたところ問題なくインストールできた。

まともなサンプルコードも少ないので載せておく。

#!/usr/bin/perl
use Nmap::Scanner;
my $scan = Nmap::Scanner->new();
$scan->add_target('localhost');

my $results = $scan->scan();

my $hosts = $results->get_host_list();

while (my $host = $hosts->get_next()) {
    my $hostname  = $host->hostname();
    my $addresses = join(',', map {$_->addr()} $host->addresses());
    print "Check Host " . $hostname . "\n";
    print "Check Adrr " . $addresses . "\n";

    my $ports = $host->get_port_list();

    while (my $port = $ports->get_next()) {
        my $service = $port->service();
        print join(' ',
            'Port',
            $port->protocol() . '/' . $port->portid(),
            'Service',
            $service->name(),
            'is in state',
            $port->state(),
            "\n"
        );
    }

}
dovecot 落ちる dovecotが必死に自殺(終了)するのを全力で阻止してみる 
2月 13, 2013 — 21:16

以前から気になっていたのですが、時間がズレるとDovecotが自分の仕事を放棄して勝手に自滅する問題についてまじめに対策しようかと思います。

Nagiosから夜中に大量にアラートが届くのでもう、管理しているこっちが死にそうです。

どうも、時間が進んでいるところNTPサーバとの同期でいきなり時間が戻るのが原因のようです。

対策としては
ntpdで-xオプションを使用するか、ntp.confに”tinker step 0″を設定する。
Dovecotを諦めてCourier-IMAPを利用する。

Courier-IMAPはVineLinuxでサーバを構築していた時に利用していて良いソフトだったのですが、今回は、うつ気味なDovecotをなんとかなだめて対応したいと思います。

起動オプションを操作する方法はサーバを再構築した際に、設定し忘れる可能性が高いため今回は設定ファイルに記述する方法にしてみました。

ということで、”/etc/ntp.conf”の先頭に下記の設定を追記してみた。
# vi /etc/ntp.conf

# The configuration directive tinker panic 0 instructs NTP not to
# give up if it sees a large jump in time.
tinker panic 0
tinker step 0

※ これらの設定は先頭であるほうが良いようです。

設定の内容
panic 0は時間が大幅にずれた時にNTPDが勝手に終了しないようにする設定
step 0は大きく時間がズレてた場合、一気に時間を修正しないようにする設定

通常の人はここまでで設定完了です。NTPDを再起動しましょう。
# service ntpd restart

VMwareなどを利用してサーバを運営している場合はVMware toolにてホストサーバから時間の同期がなされないことを確認しておく必要が有るようです。

ホストサーバから時間の同期が無効になっていることを確認し
# vmware-toolbox-cmd timesync status
もしも有効になっている場合は無効化しておきます
# vmware-toolbox-cmd timesync disable

参考サイト一覧
dovecotが自殺する(落ちる)件。: ネットワーキングすきま情報
VMware KB: Linux ゲストの時刻管理のベスト プラクティス
【Linux】dovecotが落ちる

ぴくぴくダウンローダ for Java(仮) Ver 6.00
2月 10, 2013 — 14:12

修正された項目

・Pixivの仕様変更に対応しました
・バージョンアップ通知機能の追加を行いました

バージョンアップがあった場合はアラートを表示します
WS000029

Windows7 での実行の様子
WS000000

MacOSX での実行の様子
スクリーンショット 2013-01-14 16.31.21

Linux での実行の様子
Screenshot-ぴくぴくダウンローダ for Java (仮)

コマンドモードでの実行の様子

ダウンロード

こちらのダウンロードページよりダウンロードをお願い致します。

質問・問い合わせについて

質問・問い合わせは下のコメント欄にお願いいたします。また、質問を行う前に下記を確認してください。手順に沿わない場合は返答できない場合がございます。

正常に動かない等の問題があり質問・問い合わせを行う場合、実行場所(一軒家や集合住宅や学校などこれらの場所ではネットワークの環境が異なるため)、OS、Javaのバージョン、収集対象(実行時に指定したパラメータ)、停止した場所のコンソールの内容をお書きください。書いて頂けない場合こちらで検証することができないので返答することができません。

追加して欲しい機能がある場合、特にPixivの機能に依存するものなどは実際のページまでのURLなど詳しい情報をお書きください。それらの情報を元に今後のアップデートで実装可能か検討させて頂きます。

ぴくぴくダウンローダ for Java(仮) Ver 5.10
2月 2, 2013 — 17:39

修正された項目

・ユーザIDを元に巡回すると作品名+作者名で保存できないというバグを訂正しました

Windows7 での実行の様子
WS000000

MacOSX での実行の様子
スクリーンショット 2013-01-14 16.31.21

Linux での実行の様子
Screenshot-ぴくぴくダウンローダ for Java (仮)

コマンドモードでの実行の様子

ダウンロード

こちらのダウンロードページよりダウンロードをお願い致します。

質問・問い合わせについて

質問・問い合わせは下のコメント欄にお願いいたします。また、質問を行う前に下記を確認してください。手順に沿わない場合は返答できない場合がございます。

正常に動かない等の問題があり質問・問い合わせを行う場合、実行場所(一軒家や集合住宅や学校などこれらの場所ではネットワークの環境が異なるため)、OS、Javaのバージョン、収集対象(実行時に指定したパラメータ)、停止した場所のコンソールの内容をお書きください。書いて頂けない場合こちらで検証することができないので返答することができません。

追加して欲しい機能がある場合、特にPixivの機能に依存するものなどは実際のページまでのURLなど詳しい情報をお書きください。それらの情報を元に今後のアップデートで実装可能か検討させて頂きます。