Just another Ruby porter,

〜2009年11月中旬〜


<Prev(,) | Next(.)> | Recent(/)>> | RDF

2009-11-11 (Wed)

[SSH] sshの総当たり攻撃対策

port 22を開けるとやはり攻撃されるのでちょっと対策を。
/etc/hosts.denyで管理するDenyHostsが簡単そうだったので入れてみた。

% sudo yum install denyhosts
% sudo chkconfig denyhosts on
% sudo service denyhosts start

設定はdefaultのままでok。
/var/log/secureを見張っていて何度も攻撃してくるサイトを/etc/hosts.denyに登録する。
その関係上常にちょっと遅れた対応になるが、
/var/log/secureを見るとrefused connectというログを残して終了しているのが
ちらほら見つかったので効果はありそう。

とりあえずはこれで様子見。


2009-11-12 (Thu)

[SSH] sshへの攻撃をiptablesでブロック

sshへの総当り攻撃をiptablesの2行で防ぐ方法 という記事があったので早速試したが、
今のFedora 11とはちょっと違うようで修正が必要だった。

-A RH-Firewall-1-INPUT -p tcp --dport 22 -m state --state NEW -m recent --set --name SSH
-A RH-Firewall-1-INPUT -p tcp --dport 22 -m state --state NEW -m recent --update --seconds 60 --hitcount 8 --rttl --name SSH -j DROP

のRH-Firewall-1-INPUTの部分をINPUTに変更。

-A INPUT -p tcp --dport 22 -m state --state NEW -m recent --set --name SSH
-A INPUT -p tcp --dport 22 -m state --state NEW -m recent --update --seconds 60 --hitcount 8 --rttl --name SSH -j DROP

これを

-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT

の前に挿入する。あとはsudo service iptables restartでok。
8回目以降はタイムアウトするような感じになる。

でもここに書いてしまうと[システム]-[管理]-[ファイアーウォール]で設定を変えると
上書きされるのでipt_recentの設定は無効になってしまう。さてどうしたもんか。


2009-11-13 (Fri)

[SSH] sshdを別ポートで動かすことで対応

昨日のつづき。

ファイアーウォールの設定には「カスタムルール」というのあって、
ここにiptablesの文法で書けば追加されるようになっている。
別ファイルで昨日の設定を書けばよさそうだが追加なので順番がまずい。
というわけで、ポート22じゃなくて10022あたりを開けることにした。

-A INPUT -p tcp --dport 10022 -m state --state NEW -m recent --set --name SSH
-A INPUT -p tcp --dport 10022 -m state --state NEW -m recent --update --seconds 60 --hitcount 8 --rttl --name SSH -j DROP
-A INPUT -m state --state NEW -m tcp -p tcp --dport 10022 -j ACCEPT

全部別ファイルに追い出せば確実に順番は保たれる。
しかもポート22をやめれば攻撃される確率も減る。一石二鳥だ。

この設定で1日放置してみたらお客さんが一人も来なかった。
ポートを変える効果のほうが絶大だった。というオチ。最初からそうすればよかったな。


2009-11-14 (Sat)

[DS] 光の4戦士

一昨日まで存在すら知らなかったが、近所のGEOにあったので買ってしまった。
なんか気づくと午前2時だったりで結構はまってるようだ。
たいまつとかアイテムの数の制限とかなんか初期のドラクエのよう。
逆に新鮮だなあ。


2009-11-15 (Sun)

[Go] Defer statements

deferが面白いね。

The expression must be a function or method call. Each time the "defer" statement executes, the parameters to the function call are evaluated and saved anew but the function is not invoked. Deferred function calls are executed in LIFO order immediately before the surrounding function returns, but after the return values, if any, have been evaluated.

すぐに実行しないで関数がreturnする直前にLIFOで呼ばれる。

// prints 3 2 1 0 before surrounding function returns
for i := 0; i <= 3; i++ {
    defer fmt.Print(i);
}

2009-11-16 (Mon)

[Go] Goの面白いところ: iota

やっぱギリシャ語かな。iに通ずるってことで。
呼ばれるごとに順に0から1ずつincrementされる。constは

Omitting the list of expressions is therefore equivalent to repeating the previous list.

って感じで省略すると繰り返しを意味する。
ここの例 にあるように、KB, MB, ...が簡単に表現できる。

package main
const (
  _ = iota;
  KB = 1 << (10 * iota);
  MB;
  GB;
)
func main() {
  println(KB);
  println(MB);
  println(GB);
}

実行すると

1024
1048576
1073741824

となる。


2009-11-17 (Tue)

[Go] gccgo

gccgoにはまだ手を出さないほうがいい。svn coするだけで2GBもディスクを食うし、
makeの途中2時間ほどで失敗する割りには作業用にさらに2GBも食うしで、
がっかり感が倍増する。おつかれさまです。


2009-11-18 (Wed)

[Fedora] yum upgradeでFedora 12へ上げようとするも失敗

いつものように進めると依存関係もすんなり通ってこりゃ楽だと思ったら、

Transaction Check Error:
  installing package kernel-PAE-2.6.31.5-127.fc12.i686 needs 15MB on the /boot filesystem
  installing package cyrus-sasl-plain-2.1.23-4.fc12.i686 needs 15MB on the /boot filesystem
...
  installing package boost-graph-1.39.0-8.fc12.i686 needs 8MB on the /boot filesystem
  installing package libthai-0.1.12-2.fc12.i686 needs 8MB on the /boot filesystem

Error Summary
-------------
Disk Requirements:
  At least 15MB needed on the /boot filesystem.

と言われて終了。なんだよそれ?
まさか/bootに全部インストールしようってんじゃないよね?


2009-11-19 (Thu)

[Fedora] VirtualBox上でF11→F12を試すと問題なし

/bootパーティションの存在とかほぼ同じなんだけどなあ。
気になるのは失敗したマシンはFC6の頃から順に上げてるってことだけど、
なんかゴミみたいなもんがあるのか?

いずれにせよ家のPCはext4にするつもりでいたので避けられるんだよね。放置。


2009-11-20 (Fri)

[GRUB] USBフラッシュにVFATでGRUBをインストール

GRUBのイメージをそのままUSBフラッシュに書き込むと、
フロッピー分しか使えないのでもったいない。
というわけでVFATにGRUBをインストールしてみた。
F12への布石でもある。

% fdisk /dev/sdd # 下記のようなパーティション作成
% fdisk -l /dev/sdd

ディスク /dev/sdd: 261 MB, 261881856 バイト
ヘッド 9, セクタ 56, シリンダ 1014
Units = シリンダ数 of 504 * 512 = 258048 バイト
Disk identifier: 0x6f20736b

デバイス ブート     始点        終点    ブロック   Id システム
/dev/sdd1   *           1        1014      255500    b  W95 FAT32

% mkfs -t vfat -v -n 256MB /dev/sdd1
ここで一度USBフラッシュを外して改めてつなぐと自動でマウントされる
% grub-install --root-directory=/media/256MB --no-floppy /dev/sdd

これで再起動するとGRUBプロンプトが表示される。

でもUSBフラッシュがhd0になってしまって非常に面倒な自体に。
BIOSの設定かdevice.mapでなんとかなるもんかな。


<Prev(,) | Next(.)> | Recent(/)>> | RDF


WWW を検索 jarp.does.notwork.org を検索

わたなべひろふみ
Key fingerprint = C456 1350 085F A320 C6C8 8A36 0F15 9B2E EB12 3885
Valid HTML 4.01!