カテゴリー
SugiBlog Webエンジニアのためのお役立ちTips

SPFレコード”~all”と”-all”の違い

末尾の「~all」と「-all」の違い。

~all

設定以外のアドレスは当該ドメインのメールサーバとして認証しないが、
正当なメールであっても認証失敗する可能性もある

-all

設定以外のアドレスは当該ドメインのメールサーバとして認証しない

「~all」としておくと、認証に失敗した場合でもはっきり認証失敗として扱って
ほしくないという意味になるため、「-all」で問題がなければ、できる限り避けるべきである、
とされている。

SPFレコードが正しく設定されているか確認できるサイトがあります。
http://www.sendmail.co.jp/sa/spfcheck.html

12,494 views

rndcコマンド

rndcコマンドは、namedをコントロールするユーティリティです。
使用方法の抜粋。

reload named.confとシリアル番号が増えているゾーン情報をリロード。
stats サーバーの統計情報をnamed.statsファイルに書き出す。
status サーバーのステータス情報を表示する。
dumpdb キャッシュデータをnamed_dump.dbファイルにダンプする。
flush サーバーのキャッシュをすべて消去する。

statsやdumpdbで生成されるファイルはnamed.confで設定されている[options]-[directory]に設定されているディレクトリ配下に保存されます。

2,047 views

パケット受信制限 iptables

iptablesのlimitモジュールを使用してパケット受信に制限を持たせる。

モジュールがインストールされているかどうかは、/lib/iptables以下に「libipt_limit.so」があるかを確認してください。

例)新規接続のパケットに対して、10回までは無制限、それ以降は1分に1回ずつ応答する

iptables -A INPUT -p udp --dport 53 -m state --state NEW \
-m limit --limit 1/m --limit-burst 10 \
-j ACCEPT

オプションの説明

-A INPUT INPUTチェインに追加
-p udp プロトコルをudpに指定
–dport 53 ポートを指定
-m state –state NEW stateモジュールで新規接続を指定
-m limit limitモジュールを有効化
–limit 1/m limitを1分に1回に指定
–limit-burst 10 最初の10回までは無制限
-j ACCEPT ターゲットをACCEPTに
2,105 views

BINDのバージョンを隠ぺい

BINDが稼働しているサーバーに、以下のようなコマンドを実行するとBINDのバージョンが分かってしまいます。

$ dig @ネームサーバーのアドレス chaos txt version.bind

これを隠してしまうよう設定を変更しましょう。

まず設定前の状態を確認します。

$ dig @dns.example.jp chaos txt version.bind

; <<>> DiG 9.3.6-P2 <<>> @dns.example.jp chaos txt version.bind
; (1 server found)
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 37859
;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 0

;; QUESTION SECTION:
;version.bind.                  CH      TXT

;; ANSWER SECTION:
version.bind.           0       CH      TXT     "9.2.4"

;; AUTHORITY SECTION:
version.bind.           0       CH      NS      version.bind.

;; Query time: 45 msec
;; SERVER: 192.168.1.0#53(192.168.1.0)
;; WHEN: Wed Dec  4 13:52:17 2013
;; MSG SIZE  rcvd: 62

ANSWER SECTIONにバージョンが返ってきてしまいます。
続きを読む…»

3,541 views

DNSサーバーをオープンリゾルバーにしない

今年に入って、DNSの再帰的な問い合わせを使ったDDos攻撃が報告されているようです。
DNSキャッシュサーバーとして運用している場合でも、制限を設けて適切に設定をしておかないと、
DDos攻撃の踏み台にされてしまいます。

詳しくはこちらのサイトを参考にしてください。
http://www.jpcert.or.jp/pr/2013/pr130002.html

管理しているサーバーがオープンリゾルバーになっていないかどうかを確認するサイトが開設されています。
http://www.openresolver.jp/

OSやBINDのバージョンによっても異なりますが、設定例をご紹介します。

まず、オープンリゾルバーになっていないかを確認します。
前述したオープンリゾルバー確認サイトも確認できますが、ここではコマンドラインで確認します。

$ wget -qO - http://www.openresolver.jp/cli/check.html

コマンドを実行すると結果が表示されます。

your remote ip: close 192.0.2.1(gw.example.com)
your use resolver: open 192.0.2.2(ns.example.com)

続きを読む…»

7,824 views