自分たちの管理するシステムは日本国内からしかログインしないので、国外からのSSH接続を拒否するのは理に適っている*1。 Debianベースのシステムでは/etc/hosts.allowでaclexecオプションを使うことにより、外部コマンドを実行してアクセス可否を判定することができる。今回はこれを使ってGeoIPデータベースで接続元の国を判別する方法を実装してみた。 まずはGeoIPデータベースのアップデートから。フリーのデータベースは月に1度更新されるらしい。このスクリプトをcronで毎日実行し、更新されていたら取得する。(スクリプトと同じディレクトリに保存される) /etc/hosts.allowは以下のように設定する ALL: 無条件に許可するIPがあればここに記述 sshd: ALL: aclexec /usr/local/geoip/check %a/etc/hosts.deny
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く