Categories
SugiBlog ホームページ制作・システム開発

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

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

~all

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

-all

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

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

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

2,394 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にバージョンが返ってきてしまいます。
続きを読む…»

1,057 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)

続きを読む…»

4,657 views

セカンダリDNSサーバーの設定

自前でセカンダリDNSサーバーを構築する際の設定例をご紹介します。

まずプライマリDNSサーバーの設定。
/etc/named.confでセカンダリを用意したいドメインのゾーン設定を修正します。

zone "example.jp" in {
    type master;
    file "example.jp";           //ゾーン設定ファイルを指定
    allow-transfer { 0.0.0.0; }; //セカンダリDNSサーバーのIPアドレス
};

allow-trasferでセカンダリDNSサーバーからのゾーン転送を許可する。※セキュリティ上必須

次にセカンダリDNSサーバーの設定をします。
/etc/named.conf

zone "example.jp" in {
    type slave;               //セカンダリなのでタイプをスレーブに指定
    file "slaves/example.jp"; //ゾーン設定ファイルを指定(省略可)
    masters { 0.0.0.0 };      //プライマリDNSサーバーのIPアドレス
};

それぞれnamedを再起動し設定完了。
ちなみに、ゾーン転送はTCP53ポートを使用するらしいのですが、UDPを解放しないとできなかった。
続きを読む…»

2,048 views

サーバーをプライベートネットワークで運用する場合の注意点

ブロードバンドルーターで静的IPマスカレードを使用し、サーバーをプライベートネットワークで運用する場合の注意点をご紹介。

サーバーをプライベートIPで運用する場合、内部での名前解決をしてあげないといけません。

内部からのドメイン名前解決は/etc/hostsファイルに以下のように記述
※ドメインがexample.jp、ルーターが192.168.100.1、サーバーがホストwwwの192.168.100.2とします。

192.168.100.2   www.example.jp

これを書いておかないとサーバー自身でも自サイトを見ることができません。
更に自サイト内でフルパス参照ができません。
※リンクでページを移動するだけなら可能(クライアントの名前解決によるため)

特に複数のウェブサーバーがあり、別のウェブサーバーからデータを
PHP等のプログラムを使って読み出そうとすると、名前解決できずにエラーになります。

他の事例としては、メールサーバーとウェブサーバーが同ネットワーク内に
別に存在する場合で、ウェブサーバーからフォーム等でメールを同ネットワーク内の
メールサーバーで受けているアドレスに送る場合にも注意が必要です。
続きを読む…»

1,343 views