#author("2023-04-21T10:53:22+09:00","default:irrp","irrp")
→ネットワーク関連

→認証技術


#contents


*一般 [#k0fc34ec]
-[[SMTPとは? コマンドと応答コード (ステータスコード, response code) の一覧 | urashita.com 浦下.com (ウラシタドットコム)>https://urashita.com/archives/26971]] 2019
--HELLO
--MAIL FROM
--RCPT TO
--DATA
--RSET
--SEND FROM
--QUIT
--TURN

-[[PythonでSMTP通信してみた - Qiita>https://qiita.com/homoluctus/items/e5c6925416d13e83ae41]] 2019


*メールの認証 [#vd39d8b3]
→認証技術

-[[【図解あり】DKIMの役割を3分で解説!!ドメイン送信技術のDKIMの仕組みを理解しよう | メール配信システム「blastmail」Offical Blog>https://blastmail.jp/blog/mail-delivery/dkim]] 2022.9

-[[SMTP認証とは? POP before SMTPとSMTP-AUTH>https://hostingstock.net/blog/20150515/]] 2015
--SMTP-AUTH(SMTP Authentication)は、SMTPに認証機能を追加したものでありPOPと同様に送信前にアカウント認証を必要とする
--認証方法にはPLAIN、LOGIN、CRAM-MD5、DIGEST-MD5などがあります
 PLAIN
 「UserID\0UserID\0Password」というフォーマットで平文(無変換)またはBASE64化したデータで認証します。暗号化されていないため、SSL/TLSとの組み合わが推奨されます。
 LOGIN
  PLAINと同様ですが、ユーザーIDとパスワードをBASE64化します。一度にユーザーIDとパスワードを送るのではなく、ユーザーIDとパスワードを別々に送る点が異なります。
  セキュリティ的 にはPLAINと同様にSSL/TLSとの組み合わせが必要です。
 CRAM-MD5
  CRAM(Challenge-Response Authentication Mechanism/チャレンジレスポンス認証)と呼ばれる認証方法が利用されます。
  クライアントはサーバーからBASE64化されたタイムスタンプを受け取り、それをデコードします。クライアントはデコードした
  タイムスタンプをパスワードをキーとしてMD5(Message Digest Algorithm 5)と呼ばれるアルゴリズムにより
  ハッシュ値(d41d8cd98f00b204e9800998ecf8427eのような)を求めます。ハッシュ値にユーザーIDを加えBASE64化してサーバーに送ります。
  サーバーはユーザーIDとパスワードを知っているので、送信したタイムスタンプのハッシュ値を求め、受信したハッシュ値と一致していたら
  認証を許可します。パスワードがネットワークに流れないため、PLAINやLOGINと比較すると安全性が高まります。
 DIGEST-MD5
 CRAM-MD5であっても任意のタイムスタンプを組み合わることで、辞書攻撃や総当り攻撃(ブルートフォースアタック)などが可能です。
 DIGEST-MD5はCRAM-MD5を拡張して、これらの攻撃への耐性を高めたものです。Realm(ドメイン)やURLの指定や
 HMAC(Keyed-Hashing for Message Authentication)による暗号化に対応しています。


-[[正しいメールアドレスのチェック方法>http://blog.ohgaki.net/index.php/yohgaki/-4]]
--記入されたメールアドレスが正しいかチェックする手順
  1. @でスプリットする
  2. 配列要素が2つかチェック。NGはエラー
  3. 1つ目の要素(ユーザ名部分)および2つ目の要素(ドメイン部分)に空白や制御文字、非ASCII文字が含まれていないかチェック。NGはエラー
  4. 2つ目の要素(ドメイン部分)がDNSのMXレコードを持つかチェック。NGはエラー


**SPF(Sender Policy Framework) [#aa5d920b]
-[[SPF導入のすすめ>http://blog.livedoor.jp/dankogai/archives/50809900.html]] 2007
--SPFとは、電子メールの送信元ドメインを認証する方式のひとつである。SMTPの拡張仕様であり、RFC 4408として定義されている。
--受信側がSPFに対応していたら、example.comのTXTレコードをDNSで引きます。
--もしTXTレコードが存在していなければ、SPFはそのmailをneutral、中立として扱います。
--レコードが存在していたら、それがv=spfではじまっているかを確認します。これがSPFレコードです。こんな感じの内容です。
 "v=spf1 +a:mail.example.com ?all"
--SPFレコードを受信サーバーが解釈した上で、そのmailの扱いを決めます。捨ててしまうとは限りません。通常Received-SPF:というヘッダーがmailに追加され、そこに判定結果が反映されます。
--SPFをどう使うかは、受信サーバーにまかされている
--SPFの仕組みというのは、From:を詐称するのはSMTPのセッションでいくらでも可能なのに対し、DNSのレコードは、正当なドメイン保持者でない限り難しいという点を利用しています。最も効果があるのはよってドメイン詐称です。

-※SPFの注意点として、送信側メールサーバと受信側メールサーバの間に転送メールサーバが入ったときに、転送サーバが Envelope-FROM ヘッダを書き換えないと、受信側は転送サーバを接続元とみなし、SPF認証が失敗するということが発生する。



*用語 [#i46b2b91]
-[[サブミッションポート>http://itpro.nikkeibp.co.jp/article/COLUMN/20060323/233135/]]
--Submissionポートを採用したメール・サーバーにメールを送信する場合は,SMTPで587番ポートあてにメールを送る。さらに,このときユーザー認証技術「SMTP AUTH」(SMTP authentication)が必須になる。


*ツール [#t62c084e]
-[[POPFile>https://forest.watch.impress.co.jp/library/software/popfile/]]
--スパム対策用ベイジアンフィルタ


-[[POPFileの学習済み辞書データを移行する>http://www.atmarkit.co.jp/fwin2k/win2ktips/1167ppfcps/ppfcps.html]]
--popfile.dbとstopwordsをコピーすればよい


*メールサービス [#rd8475c1]
-[[全文表示可能で添付ファイルにも対応した15分間使用できる使い捨てメールアドレス「クイックメール」>http://gigazine.net/index.php?/news/comments/20080630_15qm/]]
--http://15qm.com/ 15分だけ有効なメールアドレス

-GMailについては→Google関連

トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS