FIT-HACK活動ブログ

FIT-HACKのメンバーが活動の様子を紹介します!

SPFの正しい設定方法

どうも、FIT-HACKのネットワーク管理者です。

本サークルの管理しているDNSサーバでは、なりすまし攻撃を防ぐためにSPF(Sender Policy Framework)を設定しています。

 

SPFとは?

送信ドメイン認証のことで、ゾーンファイル内に送信元のIPアドレスを記述しておくことで、正規のメールサーバから送信されているかを判断することができます。

 

設定方法

そのSPFを設定するには、DNSサーバ内にあるゾーンファイルに対して、送信元のIPアドレスを記述する必要があるのですが、設定方法が二通りあります。

1.TXTレコード(Type 16)で記述する場合

2.SPFレコード(Type 99)で記述する場合

これはどちらも正解なのですが、厳密には1番目の方法が推奨されています

ネットワークの六法全集と呼ばれているRFC(Request for Comments)のRFC 4408にはこう書かれています。

3.1.1. DNS Resource Record Types

This document defines a new DNS RR of type SPF, code 99. The format
of this type is identical to the TXT RR [RFC1035]. For either type,
the character content of the record is encoded as [US-ASCII].

It is recognized that the current practice (using a TXT record) is
not optimal, but it is necessary because there are a number of DNS
server and resolver implementations in common use that cannot handle
the new RR type. The two-record-type scheme provides a forward path
to the better solution of using an RR type reserved for this purpose.

An SPF-compliant domain name SHOULD have SPF records of both RRtypes. A compliant domain name MUST have a record of at least one
type. If a domain has records of both types, they MUST have
identical content. For example, instead of publishing just one
record as in Section 3.1 above, it is better to publish:

example.com. IN TXT "v=spf1 +mx a:colo.example.com/28 -all"
example.com. IN SPF "v=spf1 +mx a:colo.example.com/28 -all"

 ここでは、SPFの決まり事が書かれているのですが、中身を見てみるとTXTレコードとSPFレコードの両方で記述すべきと書かれています。

RFC 4408が勧告されたのが2006年でしたが、当時はまだSPFレコードに対応するDNSソフトウェアが少なく、多くの人がTXTレコードのみで記述していました

そして、2014年に勧告されたRFC 7208にはこう書かれています。

3.1. DNS Resource Records

SPF records MUST be published as a DNS TXT (type 16) Resource Record(RR) [RFC1035] only. The character content of the record is encoded
as [US-ASCII]. Use of alternative DNS RR types was supported in
SPF's experimental phase but has been discontinued.

In 2003, when SPF was first being developed, the requirements for
assignment of a new DNS RR type were considerably more stringent than
they are now. Additionally, support for easy deployment of new DNS

 ついにTXTレコードのみで記述されなくてはならないとなりました。

 

まとめ

2016年現在でもSPFレコードで記述しているところも少なからず存在しているみたいですが、これから新規で設定する場合はTXTレコードを使うのが賢明でしょう。

 

あとがき

多くの人が使っているであろうBINDさんでは、Ver.9.9.6からRFC 7208に対応しています。

Ver.9.9.6未満でnamed-checkzoneコマンドを利用すると、SPFレコードも書け!と怒られてしまいますが、無視しましょう・・・

今後の予定について

どうも、副部長です。

 

夏休みの勉強会についてですが、下記の内容で勉強会を行います。

 

日程: 毎週月曜・土曜(お盆の13日(土)・15日(月)は休みです。)

時間: 10:00~18:00

講義内容:競技プログラミング

 

なお、帰省等により出席できない場合も考慮して講義を行っていく予定ですので、無理に予定を合わせる必要はありません。

セキュリティの危険性について

どうも、部長です。

近年、セキュリティの脅威はますます増え続けています。

以下は、その脅威を可視化したものです。

セキュリティは、運営側だけではなく、自身で守る必要があります。

最近、あるサービスで流出したパスワードを用いて、他のサービスにログインし、被害を拡大していくという手口が多発しています。

なるべくパスワードは使いまわさず、定期的な変更をオススメします。

 

副部長です。

正式サークルになったみたいなので、一応お知らせしておきます。

忙しくなると思いますが、今後も副部長としてよろしくお願いします。

どうも、部長です

ネットワーク競技愛好会の創設者にして、部長である流星です。

本サークルは2016年3月より活動を始め、7月15日より公認サークルに昇格しました。

今後ともよろしくお願いします。