目次: 自宅サーバー
Gmailのメール受信ポリシーが2024年の2月で変更されるというニュース(Gmailユーザへメールが届かなくなる?Googleが発表した「新しいメール送信者のガイドライン」とDMARC対応を解説! - NRIセキュア ブログ)の対応の続きです。
Gmailに大量にメールを送る人(5000通over)でなければSPFだけでも良いらしいです。が、さくらインターネットがDKIMに対応してくれました(DKIM署名、DMARCを設定したい - さくらのサポート情報)し、せっかくなので使ってみます。
DKIM(RFC 5672, RFC 4871, DomainKeys Identified Mail (DKIM) Signatures)はSPFとは異なりメールサーバーの設定が必須です。仕組みとしては、
こんな感じみたいです。間違ってたらごめんなさい。メールサーバーの設定はさくらインターネットの説明通りに設定すれば良いです。ログインしてコントロールパネルからDKIM署名を有効にし、秘密鍵を作成するボタンを押します。簡単でありがたいです。
DNSサーバーのTXTレコードにDKIM Keyレコードを追加します(バリュードメインの設定パネル用の書式で書いています)。"p="タグの値には公開鍵を書きますが、長いので省略します。
txt rs20240131._domainkey.katsuster.net v=DKIM1; k=rsa; p=(略)
先頭にあるrs20240131という謎の文字列はセレクタというそうです。RFCだと場所とか時間とか個人を表すものにする例が書かれています。さくらインターネットの場合はDKIM鍵を作成した日になるみたいですね。
DKIMセレクタの確認(さくらインターネットのコントロールパネル)
セレクタ文字列自体にあまり意味はなくて、メールサーバーがメールヘッダに追加するDKIM-Signatureの"s="タグの値と一致していることが重要です。
最後にDMARC(RFC 7489, Domain-based Message Authentication, Reporting, and Conformance (DMARC))レコードを設定します。
txt _dmarc.katsuster.net v=DMARC1; p=quarantine; aspf=r; adkim=r; rua=mailto:(略)
DMARCはメールの送信元の改ざんや詐称を防ぐ仕組みですが、DMARC自体が何かする訳ではなく実際にはSPFとDKIMの合わせ技です。DMARCはポリシー適用の厳密さだったり、違反していたらどうしたら良いか?だったりを宣言しています。なのでSPFレコードとDKIMレコードが正しく設定できている必要があります。
DMARCの設定をしたらGmailにメールを送り、メールヘッダを確認します。
Authentication-Results: mx.google.com; dkim=pass header.i=@katsuster.net header.s=rs20240131 header.b=uzgJOfTY; spf=pass (google.com: domain of (略) designates 219.94.129.142 as permitted sender) smtp.mailfrom=(略); dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=katsuster.net
SPF, DKIM, DMARCともに無事passしました。しばらくこれで運用したいと思います。
目次: Arduino
PCとM5Stack/M5StampをBluetooth LEで接続したいと思って、Bluetoothドングルを購入しました。さほど高価ではない&Linuxで動かないドングルがあるかも?と予想して、異なる商品を3つ買いました。Buffalo BSBT5D200(Bluetooth 5.0 + EDR/LE)、Buffalo BSBT4D200(Bluetooth 4.0 + EDR/LE)、Princeton PTM-UBT7X(Bluetooth 4.0 + EDR/LE)です。
一番新しいカーネルが動いているDebian Testing(Linux 6.5.13とBlueZ 5.71)のマシンで試してみましょう。
$ uname -a Linux blackbird 6.5.0-5-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.5.13-1 (2023-11-29) x86_64 GNU/Linux # bluetoothd --version 5.71
購入した3つのドングルそれぞれで、Bluetooth LEデバイスのスキャン(hcitool lescan)と、LEデバイス情報の取得(hcitool leinfo)を行ったところ、Bluetooth 5.0対応の一番新しいと思われるBSBT5D200だけ動きがおかしいです。悪い予想が当たってしまいました。
# hcitool -i hci0 leinfo (MACアドレス) Requesting information ... Could not create connection: Input/output error
BSBT5D200だけhcitool lescanが凄まじく遅いし、hcitool leinfo (MACアドレス)を実行するとI/Oエラーになります。あらら……。
幸いなことにBSBT4D200とPTM-UBT7Xは正しく動くので、しばらくこちらを使います。
最近、家で使っているWindows 10 22H2にてWindows UpdateのKB5034441という更新のインストールにずっと失敗していて、毎回0x80070643というエラーが出ます。しばらく無視していましたが鬱陶しいので対策することにしました。
MicrosoftのサイトにあるKB5028997(KB5028997: WinRE更新プログラムをインストールするためにパーティションのサイズを手動で変更する手順)によると、回復パーティションのサイズを250MB増やしなさいとのこと。
やたら手順が多く面倒なので、より簡単そうなKB5034957(KB5034957: CVE-2024-20666 のセキュリティの脆弱性に対処するために、展開されたデバイスの WinRE パーティションを更新する)を試しました。
KB5034957の説明によれば、
だけで良いはずです。
(※)カタログ(Microsoft Updateカタログ)から2024-01 Dynamic Update for Windows 10 Version 22H2 for x64-based Systems (KB5034232)を探します。
やってみると下記のエラーで怒られますので、設定を変えなければいけないようです。
PS C:\users\katsuhiro\desktop> .\PatchWinREScript_2004plus.ps1 .\PatchWinREScript_2004plus.ps1 : このシステムではスクリプトの実行が無効になっているため、ファイル C:\users\katsuhiro\d esktop\PatchWinREScript_2004plus.ps1 を読み込むことができません。詳細については、「about_Execution_Policies」(https://g o.microsoft.com/fwlink/?LinkID=135170) を参照してください。 発生場所 行:1 文字:1 + .\PatchWinREScript_2004plus.ps1 + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : セキュリティ エラー: (: ) []、PSSecurityException + FullyQualifiedErrorId : UnauthorizedAccess
エラーメッセージが示すリンク先(実行ポリシーについて - PowerShell | Microsoft Learn)を見ると、この問題を解決するには管理者権限で実行したPowerShellにて、Set-ExecutionPolicyで設定を変えなされとのこと。なるほど……?とりあえず現在の設定のRestrictedより制限を1つ緩めたRemoteSignedにしました。
PS C:\users\katsuhiro\desktop> Set-ExecutionPolicy RemoteSigned 実行ポリシーの変更 実行ポリシーは、信頼されていないスクリプトからの保護に役立ちます。実行ポリシーを変更すると、about_Execution_Policies のヘルプ トピック (https://go.microsoft.com/fwlink/?LinkID=135170) で説明されているセキュリティ上の危険にさらされる可能性があります。実行ポリシーを変更しますか? [Y] はい(Y) [A] すべて続行(A) [N] いいえ(N) [L] すべて無視(L) [S] 中断(S) [?] ヘルプ (既定値は "N"): y PS C:\users\katsuhiro\desktop> Get-ExecutionPolicy RemoteSigned
スクリプトを実行すると色々ログが出たあとに、Delete mount direcotryと出ました。成功したのかな?ちなみにもう1回実行しようとすると、前にもやっただろ?と言われて動作しません。良くできておりますね。
PS C:\users\katsuhiro\desktop> .\PatchWinREScript_2004plus.ps1 コマンド パイプライン位置 1 のコマンドレット PatchWinREScript_2004plus.ps1 次のパラメーターに値を指定してください: (ヘルプを表示するには、「!?」と入力してください。) packagePath: windows10.0-kb5034232-x86_3f9ddcafa903e4dd499193a851ecacbe79d842b3.cab 01/25/2024 03:36:11 - This script was previously run successfully
これで万事解決と言いたいところですが、更新KB5034441のインストールは未だに成功しません。ええー、だめじゃん……!
同じエラーが出ているということは、まだ回復パーティションのサイズが足りないのでしょうか?とはいえ先程使ったPowerShellスクリプトをもう1回実行しても、2回目は何もしません。
スクリプト改造するのもダルいので、観念して手動で回復パーティションのサイズを拡大したところ、あっさりWindows Updateが成功しました。パーティションサイズの拡大の手順は、先ほども挙げたKB5028997(KB5028997: WinRE更新プログラムをインストールするためにパーティションのサイズを手動で変更する手順)の通りです。
Windows Updateが変なエラーで止まらなくなって、嬉しいは嬉しいですけど、回復パーティションはサイズが増え803MBになってしまいました。1GB近くも何を保存しているんでしょうね??
< | 2024 | > | ||||
<< | < | 01 | > | >> | ||
日 | 月 | 火 | 水 | 木 | 金 | 土 |
- | 1 | 2 | 3 | 4 | 5 | 6 |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 | 31 | - | - | - |
合計:
本日: