ほっしーの技術ネタ備忘録

技術ネタの備忘録です。基本的に私が忘れないためのものです。他の人の役にも立つといいなぁ。

2009-01-01から1年間の記事一覧

ipfw の設定を外部に書く時の注意点

ipfw の設定をするときに、/etc/rc.conf に firewall_enable="YES" firewall_type="/etc/ipfw.rules" firewall_flags="-p /usr/bin/m4"こんな風に書いて置くと、ルールを /etc/ipfw.rules に # IP addresses define(HOST_IPv4, `192.168.1.254') define(SUBN…

ezjail で複数 IP を使う方法

/usr/local/etc/ezjail/hoge に仮想マシン hoge 固有の設定が入っているので export jail_hoge_ip="192.168.1.3,192.168.1.4" こんな風に IP をカンマ区切りで列挙すると、複数 IP が中から見えるようになります。 もちろん、こんな風にIPv6 アドレスを書く…

今年のネタは今年のうちに

というわけで、大晦日。 たまってるネタを2つほどまとめて放出。

[FreeBSD] sendmail を msp として使う場合の差出人

http://d.hatena.ne.jp/Hossy/20080720/p1 この辺の方法でメール配信設定をすると、 cron からのメールの差出人は root@private.example.com として配信されます。 大抵はこのままで問題ないんですが、jail 仮想マシンだったり .local ドメインを使ってたり…

[FreeBSD] ipfw の動的フィルタを使う時の注意点

http://d.hatena.ne.jp/Hossy/20090820/p1 この辺に書いたように動的ルールを適用するときは、 TCP/IP のタイムアウト関係の設定を少し調整する必要があります。 デフォルトのままだと、負荷が高くなった時に FIN が届く前に ipfw ルールが閉じてしまい、 LA…

次は boost のインストール

同じく sourceforge から boost の 1.41.0 を落としてきます。 前回同様、bjam という、 「make の仲間なのに class とかオブジェクト指向」 というキモいツールをビルドします。 > cd tools\jam\src > build.bat > copy bin.ntx86\bjam.exe ..\..\..バッチ…

まずは STLport のインストール

まず、STLport の最新版 5.2.1 を sourceforge から落とします。 デフォルトの allocator はメモリプールを解放してくれないので、 VC のメモリリーク検出が誤動作しないように通常の new 演算子を使うようにします。 stlport/stl/config/host.h で #define …

Visual Studio 2005 + STLport 5.2.1 + boost 1.41.0

この手のネタで書くのは3回目。 新しいPCを入手するたびにコンパイルでハマるという罠ですね。 今回は Visual Studio 2005 STLport 5.2.1 boost 1.41.0 この組み合わせでハマります。

su のセキュリティを少し向上させる tips

su コマンドって、パスワードさえわかればどのユーザにでもなれて便利なんですが、 その半面、サーバ内のユーザがどれか一つでも割れると被害が拡大する危険があります。 jail 内システムのように、そもそも root に昇格する必要がない場面などでは無効化し…

vfs.devfs.rule_depth の謎

ある日、sysctl -a を眺めていると面白そうなパラメータを見つけた。 vfs.devfs.rule_depthdevfs らしいからカーネルのソースを読んでみる。 このパラメータが導入されたのは src/sys/fs/devfs/devfs.c の 1.16 の時。コミットログをざっくりと意訳するとこ…

jdk のコンパイルで気をつけること

# umount /procprocfs がマウントされていると、libproc.a がないとか言われてコンパイルに失敗する。ref: http://ijovanni.blogspot.com/2009/06/could-not-find-libjavaso.html 最近の ezjail は各 jail で procfs をマウントしてくれるようなので、 ezjai…

net-snmp の smux を無効にする

smux なんて要らないよ!不要ポートは閉じてやる! というわけで、/etc/rc.conf の snmpd_flags を書き換えます。 snmpd_flags="-a -I -smux"これで smux のポートが閉じられます。 $ netstat -an | grep LISTENよし、消えた。 9/16 1:07修正 わざわざ sudo…

ポートの持ち主はだれ?

余計なポートが開いてるのはセキュリティ上よろしくない上に気持ち悪い。 というわけで開いてるポートを確認。 $ netstat -an | grep LISTEN tcp4 0 0 *.199 *.* LISTENあれ?これは何?誰が LISTEN してるの?? というときは sockstat で調べます。 $ sock…

chkrootkit 誤検出の巻

chkrootkit なる、ルートキットの検出ツールがあるということで、 しばらく前に試しにインストールしていたものを、久しぶり実行してみた。 Possible t0rn v8 \(or variation\) rootkit installed …… !? えっ!?と思って手元の Windows マシンで chkrootk…

続・例のお遊び

というわけで、今までのあらすじ。 当時某所で話題になっていた秋月300円液晶 せっかくなので買ってみた Altera 社の CycloneII FPGA の基板を作ってみた とりあえず何か画像を表示してみた ここまでが4月のおはなし。 で、ある日、部屋の片づけをしていると…

ipfw で動的ルールを設定する

ipfw 関係の web ページを見ていると、 「keep-state と check-state を使って...」 みたいな書き方がされていて、 「もしかして check-state って必須?でも keep-state 単体でも動いてる…」 と思ってしまったので調べてみました。 結論から言えば man ipfw…

PostgreSQL のデータベースのバックアップ

諸事情で必要になったのでメモ。 $ pg_dump DBNAME > db_backup.sqlこれで、データベース DBNAME の中身が SQL 文の形式で まるっとファイルに吐き出されます。 リストアするときは $ psql DBNAME < db_backup.sqlで SQL スクリプトとして食わせればOK。 中…

OpenVPN のブリッジ設定

FreeBSD 6.x までは bridge.ko を使っていたんですが、 7.x からは if_bridge.ko を使うそうです。 うちは NIC が fxp0 なので、/etc/sysctl.conf で net.link.ether.bridge.config="tap0,fxp0" net.link.ether.bridge.enable=1これが bridge を使った古いや…

RAM-Disk の作り方

FreeBSD 7.x になって RAM-Disk の作り方が変わったみたいです。 まずは /etc/rc.conf に mdconfig_md0="-t malloc -s 100m"と書き足して、/etc/fstab で /dev/md0 /mnt/memdisk ufs rw 0 0とマウントポイントを指定します。 これで再起動すれば RAM-Disk が…

6.3-R から 7.2-R へのアップグレード with ezjail

freebsd-update を使うと major version をまたいでバージョンアップができるらしい! ezjail なら ezjail-admin update でユーザランドを更新して ports を再コンパイルするだけでいいのかも!? というわけでやってみました。 参照: http://www.daemonolog…

ruby-1.8.7.160,1 は地雷。160_2 以降推奨。

FreeBSD のパッケージ管理には portupgrade を使うのが(少し前まで)メジャーでしたが、 これ、実は ruby スクリプトなんです。 portupgrade, portversion, portinstall など、便利なコマンドがまとまっていたんです。 で、ruby-1.8.7.160,1 のバグによって…

そろそろ ruby なくならないかな。

というわけで、ruby のバグを踏んで大変なことになったお話。

portmaster のマニュアル一部訳

マニュアルを一部だけ訳してみたので公開。 DESCRIPTION 解説 The portmaster utility is a tool for updating your ports. It uses no external database to track what you have installed. Rather it uses the existing ports infrastructure, including …

portmaster -L

現在インストールされているパッケージの一覧と、 その更新の有無をリストアップします。 portversion の代わりですね。 # portmaster -L ===>>> Root ports (No dependencies, not depended on) ===>>> libtool-1.5.26 ===>>> perl-5.8.9_3 ===>>> portmast…

portmaster ってどうだろう

portupgrade の代わりに使えるのでしょうか。 ruby が必要ない ruby18-bdb も必要ない と、portupgrade のためだけに ruby をインストールする必要がなくなるわけです。 id:m-bird 氏のブコメにコメント (6/22 22:45追記) c じゃなくてシェルスクリプトです…

DLL の遅延ロード

例えば WinTab32.dll ( ペンタブレット用ライブラリ ) のように、すべての環境に入っているとは限らない DLL を使いたいとき。 何も考えずに WinTab32.lib をリンクしてしまうと、DLL が入っていない環境では DLL が存在しない旨のメッセージが表示されて、m…

DLL の遅延ロード

前回は珍しく社会ネタを書いたのでまたしばらくは技術ネタに戻りまする。 あとデザインを一新してみました。プロフィールも少しきちんと。 mixi とか twitter とかもプロフィールを直したりしてるのでその流れで。

FPGA 開発 - 反省

最近は FPGA を弄ってていろいろしてみてるわけですが、 いろいろハマったので反省点をまとめ。 マルチクロックなんて二度とやらない メインクロック 50MHz があって、ここから分周して 1MHz のクロックがあるわけです。 reg [7:0] clk_cnt; wire low_clk; a…

例のお遊び

前々から言ってる話。mixi の方では写真を貼ってみたんだけど せっかくなのでこっちでもぺたり。 右にあるのは某所で話題になってる秋月300円液晶。 300円なのに400x96の6:6:6の18bitカラーのLCDディスプレイ。 値段の割にスペックが意外に高く、発色もきれ…

例のお遊び

5月になりました。 世間ではゴールデンウィークというものがあるそうですね。 うらやましいですね。