1月
Sub-archives
2009年01月26日
build-dependsのチェック方法
パッケージ制作のときのbuild-dependsのチェック方法。pbuilderかcowdancerを使う。
pbuildeの場合
$ sudo pbuilder --create --create
$ sudo pdebuild # パッケージソースの展開ディレクトリ内で
という具合。root権限がないと駄目。
cowdancerの場合
$ sudo cowdancer --crete
$ sudo cowdancer --build hoge.dsc
となる。
kvmにWindows 7 beta を入れる
kvmでもWindows 7 が動くのかどうか。
# qemu-img create -f qcow vm-disk.img 12G
# kvm -m 512 -cdrom ../iso/7000.0.081212-1400_client_ja-jp_Ultimate-GB1CULFRE_JA_DVD.iso -hda vm-disk.img -boot d
-no-acpiをつけたら起動しない。インストールの詳細はどうでもいいので略。
512MBでやっているのに普通に動く。というかタスクマネジャー見たら400MBも使ってなかったり…。あれ?
TAPを使おうとしたら以下のとおり。何でだろう…。
# sudo kvm -m 512 -localtime -net nic,vlan=0 -net tap,vlan=0,ifname=tap0,script=/etc/kvm/kvm-ifup -hda vm-disk.img -boot c
can't add tap0 to bridge eth0: Operation not supported
kvmでbridge接続再び
kvmでNICをbrdige接続する方法がやっとわかった。tapはeth0に直接繋がらないのに継ごうとscriptがするから駄目だという話だった。
tapはbr0に繋ぐ必要がある。がー、何も気付かずにやっているとeth0なんかを継いでしまうので駄目だということ。次のようなエラーが出てしまう。Debianの kvm-72 だとスクリプトがdefaultがあるインターフェイスにしようとする。
can't add tap0 to bridge eth0: Operation not supported
問題を正しく認識してなくてeth0じゃなくてeth1にしたらどうかとスクリプト中で決め打ちでやってみたが同じエラー。tapはbr0に継ぐのはわかっていたが自動的にqemu-kvmが処理してくれるわけではなかった。
br0を有効にするための手順は以下のとおり。ちなみにeth1をkvm専用としてbr0で通常の通信を使わない環境で実験している。
# ifconfig eth1 promisc up
# brctl addbr br0
# brctl addif br0 eth1
# ifconfig br0 up
/etc/kvm/kvm-ifupを次のようにする。
#!/bin/sh
switch=br0
/sbin/ifconfig $1 0.0.0.0 up
/usr/sbin/brctl addif ${switch} $1
exit 0
で次のとおりにkvmを実行する。
# kvm vm-disk.img -m 512 -localtime -net nic -net tap,script=/etc/kvm/kvm-ifup
使用したあとに br0 を消すには次のとおり
# /sbin/ifconfig eth1 down
# /sbin/ifconfig br0 down
# /usr/sbin/brctl delbr br0
br0で通常の通信をするつもりなら /etc/network/interface で br0に IPを設定しまえば自動でやってくれて楽になる。
auto br0
iface br0 inet static
address 192.168.11.2
netmask 255.255.255.0
gateway 192.168.11.1
pre-up /sbin/ifconfig eth1 promisc up
pre-up /usr/sbin/brctl addbr br0
post-up /usr/sbin/brctl addif br0 eth1
pre-down /sbin/ifconfig eth1 down
post-down /sbin/ifconfig br0 down
post-down /usr/sbin/brctl delbr br0
ということで eth0 で同じことをやれば増設NICなしでできるものと思われる。
追記:kvmのディスクイメージは qcow2 フォーマットが最新のようだ。いままではqcowでやっていたが古い。
# qemu-img create -f qcow2 vm-disk.img 30G
2009年01月25日
OpenSolaris 2008.11到着
Sunが無料で配布しているというので申し込んだ
今日到着した。インストールしてみた。インストールするだけなら何も変わらないね。あたりまえ。
微妙に変わった気もするが。
ネットワークの管理ツールで手動で管理しようとしたら相変わらずSEGVで落ちたりするのはなんで。
fail2banでtrackback spamを切る話の続き
正引きできないものはしゃーないのさ。
ApacheのログをIPで取るものと二つ取ることにした。次のようなもの apahceの設定に追加。combinedの%hを%aに変更。
CustomLog /var/log/apache2/ip-access.log "%a %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\""
こっちのファイルをもとにbanするように設定。順調にbanしている。
2009年01月24日
いぶき(他7つ)打ち上げ成功
H2A F15 は無事成功。
ニコニコ生放送で見ていた。本家のストリーミングより遅延が少ないのに驚いた。
2009年01月21日
fail2banでtrackback spamを防ぐ
fail2banでうっとうしいtrackback spamを追い出そうとした。
fail2ban-regexで実験しようとしたら…???初期設定のものをテストしても一切引っかからないのはなぜに? と調べたら 0.7.5-2etch1は駄目だけど0.8.3-2では大丈夫。バグなのか? よくわからん…。
filter.d/zope-plone-trackback.confを作成して次のように設定。適当すぎるがまあいい。
failregex = <HOST> - - .*/trackback HTTP
jai.confに次のように設定。
[zope-plone-trackback]
enabled = true
port = http,https
filter = zope-plone-trackback
logpath = /var/log/apache2/access.log
maxretry = 6
こんな感じでやったら
# iptables -L fail2ban-zope-plone-trackback
Chain fail2ban-zope-plone-trackback (1 references)
target prot opt source destination
DROP 0 -- 92.48.127.153.svservers.com anywhere
RETURN 0 -- anywhere anywhere
とかなったので大丈夫かなと。
が、しかーし、逆引きはあるけど正引きがないという恐しいところホストがあった! log に逆引きで記録してあるから IP がわからないので規制できないというよくわからん話が…。
2009年01月19日
NMの続き(T&S)
質問来ました。
一つ目はpackage のreview。細かーいところの突っ込み。無難に返答しておきます。二つ目。実技テスト。NMUやれとかQAやれとかあって。NMUとmanpageを選択する。
2009年01月15日
NMのT&S進行中
少しだけ進んだ。
今までにアップロードしたファイルのレビューと技術的な貢献を通してスキルをチェックする模様。
不況ネタ
まあ、どうでもいいんですけど
ノーテルがChapter 11申請ですかー。
2009年01月12日
OpenVPN 実験
CA作るのが面倒かと思ったが共有鍵でやる方法で簡単にできるようなのでやってみた。ひじょーに簡単。
サーバー: 192.168.1.2/24 ・ GW: 192.168.1.1/24 ただし NATで 172.16.1.2/24 ・ 172.16.1.1/24 で外に公開されているものとする。クライアント側は意識の必要はないが172.16.10.1だとする。GWでUDP/1192をあけておくこと。
openvpn --genkey --secret static.keyで共有秘密鍵を作成してサーバーとクライアントで保持。
サーバー側のconfigは以下のとおり。server.confとする。
dev tun10.8.0.1とかは好きに決めていい。
ifconfig 10.8.0.1 10.8.0.2
secret static.key
クライアント側は次のとおりでclient.confとする
remote 172.16.1.2これでサーバー側に10.8.0.1が割り当てられクライアントに10.8.0.2が割り当てられる。
dev tun
ifconfig 10.8.0.2 10.8.0.1
secret static.key
サーバー側で
# openvpn --config server.confクライアント側で
# openvpn --config client.confと実行する。サーバー側の出力が
Mon Jan 12 16:33:56 2009 OpenVPN 2.0.9 i486-pc-linux-gnu [SSL] [LZO] [EPOLL]クライアント側が
built on Sep 20 2007
Mon Jan 12 16:33:56 2009 IMPORTANT: OpenVPN's default port number is now 119
4, based on an official port number assignment by IANA. OpenVPN 2.0-beta16
and earlier used 5000 as the default port.
Mon Jan 12 16:33:56 2009 TUN/TAP device tun0 opened
Mon Jan 12 16:33:56 2009 ifconfig tun0 10.8.0.1 pointopoint 10.8.0.2 mtu 1500
Mon Jan 12 16:33:56 2009 UDPv4 link local (bound): [undef]:1194
Mon Jan 12 16:33:56 2009 UDPv4 link remote: [undef]
Mon Jan 12 16:34:11 2009 Peer Connection Initiated with 172.16.10.1:1194
Mon Jan 12 16:34:12 2009 Initialization Sequence Completed
Mon Jan 12 16:34:01 2009 OpenVPN 2.1_rc11 i486-pc-linux-gnu [SSL] [LZO2] [EPOLL]という具合になれば成功している。互いにpingを飛ばすなりして確認すること。
[PKCS11] built on Sep 18 2008
Mon Jan 12 16:34:01 2009 IMPORTANT: OpenVPN's default port number is now 1194, b
ased on an official port number assignment by IANA. OpenVPN 2.0-beta16 and earl
ier used 5000 as the default port.
Mon Jan 12 16:34:01 2009 /usr/sbin/openvpn-vulnkey -q static.key
Mon Jan 12 16:34:01 2009 WARNING: file 'static.key' is group or others accessible
Mon Jan 12 16:34:01 2009 TUN/TAP device tun0 opened
Mon Jan 12 16:34:01 2009 /sbin/ifconfig tun0 10.8.0.2 pointopoint 10.8.0.1 mtu 1500
Mon Jan 12 16:34:01 2009 UDPv4 link local (bound): [undef]:1194
Mon Jan 12 16:34:01 2009 UDPv4 link remote: 172.16.1.2:1194
Mon Jan 12 16:34:11 2009 Peer Connection Initiated with 172.1.6.2:1194
Mon Jan 12 16:34:12 2009 Initialization Sequence Completed
このままではクライアントが192.168.1.2にはアクセスできるが 192.168.1.0/24 にアクセスできるわけではない。ネットワーク全体にアクセスしたい場合には次のcliet.confに足す。
route 192.168.1.0 255.255.255.0gwに10.8.0.2/32へのルーティングを192.168.1.2に向けるようにルーティングを付け足すこと。さらに /proc/sys/net/ipv4/ip_forwad = 1にすること。
2009年01月10日
FreeNAS 0.69RC2
VMwareにインストール。中身はFreeBSDでSMBやらFTPやらiSCSIがGUIから設定できる。
- インストールは何かを迷う余地もなく終了
- IPアドレスが最初は192.168.1.250になっているので適宜変更する
- CIFS/SMBを有効にして共有を増やしてもフォルダは自動的に作ってくれるわけでなし
- パーミッションも自分で設定しなきゃいけないがGUIでできたのだろうか?
roundcube 0.2alpha
WebベースのIMAPクライアント
パッケージをインストールしたあとに /etc/roundcube/apache.conf を編集。Aliasの部分がコメントアウトしてあるので戻す。debconfで適切に IMAPサーバーが指定されていればそのままログインできる。
操作にAJAXを使っていて、DnDでメールの振り分けやアドレス帳の管理ができて非常に使い易い。メッセージの翻訳も結構されている。
redmine-0.8.0
0.7.3からアップグレード
- SMTP関係の設定が一つのファイルに分離されていた。
- Wikiのページのロックができるようになった。
NMの続き
ついにAMが交代になった
Marcは多忙につき交代しますと連絡があった。12/26に最初あったが年末のドタバタで紛れていた。再度確認メールが来た。4年かかってもまだ終わらないが今年こそ終わらせるぞ、と。
ElementTreeのremove覚書
PythonのElementTreeを使っていてElementを削除するときのメモ
次のようなコードは想像しているようには動かない。
import xml.etree.ElementTree as et
dom = et.parse('sample.xml')
root = dom.getroot()
for e in root: root.remove(e)
別でElementを保持してから実行する必要がある。
for e in [ e for e in root]: root.remove(e)
こういう理解でいいのかな?Pyhon-2.5のreferenceの記述が薄い気がするんだけど…。
2009年01月02日
走り初め
今年はもう走るぞー
愛知池まで行って戻ってきた。てきとー。
交通量は少ない。トレーニングの人はみかけなかった。

