本文へジャンプ

GIDEON STAFF BLOG

ESTA

来年(2009年)の1月29日から米国に入国する際は "電子渡航認証システム(ESTA)" による事前認証が必要になります。

米国国土安全保障省(DHS)は8月1日より、 電子渡航認証システム (Electronic System for Travel Authorization: ESTA)を開始した。 この新しいオンラインシステムは、ビザ免除プログラム(VWP)の一部である。 現在、ESTAのウェブサイトでは任意ので申請を受付けているが、 2009年1月12日からは申請が義務化され、 米国に短期商用・観光目的(90日以下)で渡航予定の VWP参加国のすべてのビザなし渡航者は、 米国行きの航空機や船舶に搭乗する前に オンラインで渡航認証を受けることが必要になる。
アメリカ大使館のWebSiteより

今までは3ヶ月未満の短期滞在の場合は I-94W と呼ばれる 米国査証免除プログラム参加国用入国用紙に記入するだけで良かったが、 今後は事前認証が必要になるので注意が必要です。
ESTA による認証は2年間有効との事なので、 出発直前に慌てない様に早めに済ませておくのが良いかも?

セキュリティ情報

FreeBSD 上に以下のセキュリティ上の脆弱性が発見された。

  1. Bluetooth 関係のカーネルモジュールの BUG に起因する脆弱性
  2. netgraph 及び bluetooth 関係のカーネルモジュールで、 適切に初期化されていないポインタが存在している事が原因で 発生する脆弱性が存在する。
    この脆弱性によりローカルユーザにより任意のコードの実行や root 権限の奪取、jail からの脱獄が可能となる。

  3. ftpd サーバにクロスサイトリクエストフォージュリの脆弱性
  4. ftpd は汎用目的の ftp サーバの実装の一つであり FreeBSD ベースシステムに含まれているが、 非常に長い文字列により与えられたコマンドの分割処理に問題があり、 結果として任意のコマンドを実行されるなどの危険性がある。

どちらも標準状態では無効になっているので、 明示的に設定している場合以外はそれほど問題はないが、 修正パッチがリリースされているので適用すべきである。

セキュリティニュース

2008.11.11 にMcColo がプロバイダより切断された後の経過をフォローする。

2008.11.15

Srizbi および Rustock の配信サーバ McColo C&C サーバ (米国サンノゼ IPアドレス:208.66.194.22) からの配信が再開した。
実はサーバが物理的に撤去されていないことが判明。 まだサンノゼの Market Post Tower で活動を続けているようだ。

2008.11.16

Rustock の配信サーバ C&C サーバが McColo から ロシアのデータセンターに移動した。

2008.11.25

Srizbi に感染しているボットがよみがえった。 新しい実行ファイルに更新され活動を再開した。
その配信サーバはエストニアにあり、 ロシア語 (koi8-r) でMIMEエンコードしたスパムであった。 このことから当初ロシアにある SMTP サーバにターゲットにしているようだ。

2008.12.01

Srizbi および Rustock の配信サーバは現在のところ、 大半が停止し、ごくわずかな配信サーバを残すに至った。
SrizbiRustock に代わって Pushdo が代替ボットになっている。
Cutwail というワームプログラムは迷惑メールの送信および Cutwail を最新にアップデートするために使われるため、 このプログラムの配信を止めることでスパム配信を停止できる。

[http://blog.fireeye.com/research/2008/11/index.html 出典]

GNU Bourne-Again Shell を便利に使う

対話シェルとして使用する bash (1) の コマンドライン履歴機能の便利な使い方。
bash (1)のコマンドライン履歴機能のうち イベント指示子、単語指示子、修飾指示子は オンラインマニュアルにも情報が少ないが、 慣れると非常に便利でキータイプ量も減るので是非マスターしておきたい。
以下の文中で nm は任意の整数、 foobarbaz などは任意の文字列を示します。

機能一覧

イベント指示子
!! 直前に実行したコマンドを実行する
!-n n 回前に実行したコマンドを実行する
^foo^bar
!:s/foo/bar
直前に実行したコマンドの foobar に変更して実行する
!:gs/foo/bar 直前に実行したコマンドの全ての foobar に変更して実行する
!foo foo で開始されるコマンドを実行する
!n
n 番目に実行されたコマンドを実行する
単語指示子
!:n 直前に実行したコマンドの n 番目の引数を取得する
!^ 直前に実行したコマンドの 1 番目の引数を取得する
!$ 直前に実行したコマンドの最後の引数を取得する
!* 直前に実行したコマンドの全ての引数を取得する
!:n* 直前に実行したコマンドの n 番目から最後までの引数を取得する
!:n-m 直前に実行したコマンドの n 番目から m 番目までの引数を取得する
!:-n 直前に実行したコマンドの最初から n 番目までの引数を取得する
!:n- 直前に実行したコマンドの n 番目から最後の 1 個前までの引数を取得する
修飾指示子
:p コマンドを表示のみして実行しない
:h パスのファイル名部分を取り除きディレクトリ名を取得する
:t パスのディレクトリ名部分を取り除きファイル名を取得する
:r ファイル名の拡張子を取り除き "." の前を取得する
:e ファイル名の拡張子を "." 付きで取得する

イベント指示子

  • !!
  • 直前に実行したコマンドを実行する
    $ echo foo bar baz
    foo bar baz
    $ !!
    echo foo bar baz
    foo bar baz
    			

  • !-n
  • n 回前に実行したコマンドを実行する (複数のコマンドを繰り返して実行する場合に便利)
    $ echo foo bar baz
    foo bar baz
    $ echo FOO BAR BAZ
    FOO BAR BAZ
    $ !-2
    echo foo bar baz
    foo bar baz
    $ !-2
    echo FOO BAR BAZ
    FOO BAR BAZ
    			

  • ^foo^bar
    !:s/foo/bar
  • 直前に実行したコマンドの foobar に変更して実行する (下のパターンの場合 "/" は任意の文字に変更が可能)
    $ echo foo foo foo
    foo foo foo
    $ ^foo^bar
    echo bar foo foo
    bar foo foo
    $ echo foo foo foo
    foo foo foo
    $ !:s/foo/bar
    echo bar foo foo
    bar foo foo
    			

  • !:gs/foo/bar
  • 直前に実行したコマンドの全ての foobar に変更して実行する ("/" は任意の文字に変更が可能)
    $ echo foo foo foo
    foo foo foo
    $ !:gs/foo/bar
    echo bar bar bar
    bar bar bar
    			

  • !foo
  • foo で開始されるコマンドを実行する
    $ echo foo bar baz
    foo bar baz
    $ touch foo bar baz
    $ !ec
    echo foo bar baz
    foo bar baz
    			

  • !n
  • n 番目に実行されたコマンドを実行する
    $ echo foo bar baz
    foo bar baz
    $ echo FOO BAR BAZ
    FOO BAR BAZ
    $ !1
    echo foo bar baz
    foo bar baz
    			

単語指示子

  • !:n
  • 直前に実行したコマンドの n 番目の引数を取得する
    $ echo foo bar baz
    foo bar baz
    $ echo !:0
    echo echo
    echo
    $ echo foo bar baz
    foo bar baz
    $ echo !:2
    echo bar
    bar
    			

  • !^
  • 直前に実行したコマンドの 1 番目の引数を取得する
    $ echo foo bar baz
    foo bar baz
    $ echo !^
    echo foo
    foo
    			

  • !$
  • 直前に実行したコマンドの最後の引数を取得する
    $ echo foo bar baz
    foo bar baz
    $ echo !$
    echo baz
    foo
    			

  • !*
  • 直前に実行したコマンドの全ての引数を取得する
    $ echo foo bar baz
    foo bar baz
    $ echo !*
    echo foo bar baz
    foo bar baz
    			

  • !:n*
  • 直前に実行したコマンドの n 番目から最後までの引数を取得する
    $ echo foo bar baz
    foo bar baz
    $ echo !:2*
    echo bar baz
    bar baz
    			

  • !:n-m
  • 直前に実行したコマンドの n 番目から m 番目までの引数を取得する
    $ echo foo bar baz FOO BAR BAZ
    foo bar baz FOO BAR BAZ
    $ echo !:3-5
    echo baz FOO BAR
    baz FOO BAR

  • !:-n
  • 直前に実行したコマンドの最初から n 番目までの引数を取得する
    $ echo foo bar baz FOO BAR BAZ
    foo bar baz FOO BAR BAZ
    $ echo !:-4
    echo foo bar baz FOO
    foo bar baz FOO
    			

  • n-
  • 直前に実行したコマンドの n 番目から 最後の 1 個前までの引数を取得する
    $ echo foo bar baz
    foo bar baz
    $ echo !:1-
    echo foo bar
    foo bar
    			

修飾指示子

  • :p
  • コマンドを表示のみして実行しない
    $ echo foo bar baz
    foo bar baz
    $ touch foo bar baz
    $ !e:p
    echo foo bar baz
    			

  • :h
  • パスのファイル名部分を取り除きディレクトリ名を取得する
    $ echo /foo/bar/baz
    /foo/bar/baz
    $ echo !$:h
    echo /foo/bar
    /foo/bar
    			

  • :t
  • パスのディレクトリ名部分を取り除きファイル名を取得する
    $ echo /foo/bar/baz
    /foo/bar/baz
    $ echo !$:t
    echo baz
    baz
    			

  • :r
  • ファイル名の拡張子を取り除き "." の前を取得する
    $ echo foo.c
    foo.c
    $ echo !$:r
    echo foo
    foo
    			

  • :e
  • ファイル名の拡張子を "." 付きで取得する
    $ echo foo.c
    foo.c
    $ echo !$:e
    echo .c
    .c
    			

社名『ギデオン』の由来

社名ギデオンは旧約聖書の士師記にでてくる勇者の名にちなんでいます。
「後顧の憂いのない300人」の戦士を集め、3万人の敵を相手に勝利したという 「ギデオンの300」のエピソードを創業精神としました。

聖書にでてくるダビデ、ソロモンなどの勇者は、もとよりとても強く、 優れた人脈を持つ賢者として描かれています。 一方ギデオンは元来はひ弱で、人脈もなく貧乏だった人ですが、 神の助けを得て王者となりました。

創業初期は、資金もなく、営業力もなく、開発人員も少なく、 状況はギデオンと全く同じでしたが、 「ギデオンの300」を心のよりどころとして一歩一歩事業を展開してきました。

1990年創業からやっと2009年には新社屋を建設するにいたりました。
今後10年には、現在の10倍規模の事業に成長させたいと考えています。

iSCSI Initiator on FreeBSD

最近は Buffalo の TeraStation など安価な iSCSI ストレージもあるが、 勿論 FreeBSD からも iSCSI は利用可能である。

ただし残念ながら iSCSI がサポートされているのは FreeBSD では 7系からなので、 FreeBSD 7.0-RELEASE で試してみる。

# kldload scsi_initiator
# iscontrol -d -t IPアドレス
TargetName=iqn.2004-08.jp.buffalo:TS…
TargetAddress=IPアドレス
# cat << EOF > /etc/iscsi.conf
name {
	TargetName=iqn.2004-08.jp.buffalo:TS…
	TargetAddress=IPアドレス
}
EOF
# iscontrol -n name
# ls /dev/da*
/dev/da0    /dev/da0s1
ドライバをロードした後で iscontrol コマンドを実行して target を検索。
検出した TargetNameTargetAddress/etc/iscsi.conf に設定を保存して、 再度 iscontrol コマンドを実行すると、 ちゃんと /dev/da0s1 が生えてきて普通に使えました。

迷惑メール防止法本日より施行

特定電子メールの送信の適正化等に関する法律(通称 迷惑メール防止法)の改正案が 本日より施行された。
今回の改正はオプトイン方式( 受信を同意した相手にしか特定の電子メールを送信できなくなる) へ移行した事が一番大きなポイントであるが、 他にも厳罰化や送信者情報偽装の禁止などが盛り込まれている。

FreeBSD 6.4-RELEASE

FreeBSD Release Engineering Team は 6-STABLE 系最後のリリースとして FreeBSD 6.4-RELEASE を発表しました。

主な変更は以下の通り

  • NFS Lock Manager (NLM) Client
  • 暗号化フレームワーク Camellia cipher のサポート
  • USB デバイスや GPTへの対応といった boot loader の改良
  • DVD インストールイメージの配布開始
  • KDE 2.5.10、GNOME 2.22.3 の採用
  • BIND、sendmail、OpenPAM などのアップデート