ホーム » コンピュータ » Linux (ページ 4)

Linux」カテゴリーアーカイブ

システム

最近の投稿

アーカイブ

カテゴリー

ntpsec を chrony に移行

Ubuntu 25.10 への移行の記事をみていたら、ntp サーバ ntpsec が chrony になるとのことなので、先んじて chrony に移行しておく。chrony の設定記事を探すと、/etc/chrony/chrony.conf に設定を記載する話になっているけど、Debian だと設定ファイルを細かく分けて、デフォルト設定ファイルは触らないで、個人設定は別に記載するのが流儀。

$ sudo apt install chrony      ### ntpsec がアンインストールされる。

$ sudo vi /etc/chrony/sources.d/local-ntp-server.sources
# 自宅ネットワーク環境にあわせて server を追加
server ntp.ttn.ne.jp    iburst ipv4
server ntp.nict.jp      iburst ipv4 prefer
pool   jp.pool.ntp.org  iburst ipv4

$ sudo vi /etc/chrony/conf.d/allow.conf
# 自宅ネットワークからntpを参照できるように
allow 127.0.0.1
allow 192.168.11.0/24

$ sudo systemctl restart chrony
$ chronyc sources
MS Name/IP address         Stratum Poll Reach LastRx Last sample
===============================================================================
^+ ntp-nts-2.ps5.canonical.>     2   6    17    22  +5775us[+5775us] +/-  124ms
^- ntp-nts-3.ps5.canonical.>     2   6    17    23  +5795us[+5795us] +/-  124ms
^* ntp-nts-2.ps6.canonical.>     2   6    17    24  -8694us[-9701us] +/-   88ms
^+ ntp-nts-3.ps6.canonical.>     2   6    17    23  +6458us[+6458us] +/-  104ms
^- 103.131.151.30                3   6    17    24  -8991us[-8991us] +/-   35ms
^- ntp-nts-1.ps6.canonical.>     2   6    17    24    -21ms[  -21ms] +/-  103ms
^- ntp-k1.nict.jp                1   6    17    23  -7807us[-7807us] +/-   13ms
^- ntp.ttn.ne.jp                 2   6    17    24  -7393us[-7393us] +/-   40ms

これにあわせて、自宅内の raspberry-pi の端末の確認をしていたら、サーバ1台の ntp しか参照していない。せめて 直の上位のプロバイダの ntp.ttn.ne.jp も参照してほしい。確認すると、DHCP で接続したサーバだけに問い合わせるようになっている。/etc/default/ntpsec を修正して DHCP サーバではなく /etc/ntpsec/ntp.conf を見るように設定する。

((( /etc/default/ntpsec )))
IGNORE_DHCP="yes"

((( 追記 2026/04/26 )))

chronyc sources を実行した結果を Gemini にかけたら、国内の nict.jp が優先されていないとのアドバイス。

server ntp.nict.jp      iburst ipv4 prefer
                                    ~~~~~~ 追記

gcalcli インストールしてなかった

自宅での LED バッジでの予定表示、「■予定なし」ばっかりだなぁ…と思ってたら、サーバ移行時に gcalcli をインストールしてなかった。

$ sudo apt install gcalcli
$ gcal.pl
10/08(水)14:00 60周年記念事業記念式典
10/08(水)15:00 60周年記念講演

自宅ドメインがGoogleDNSで引けない

自宅サイトのドメイン名が9/18より、Google DNS(8.8.8.8) にて名前解決ができない状態。原因不明(後述 原因はmydns.jpへの水責めの影響)。その他の Public DNS では問題がない(はず)。mydns.jp への Dynamic DNS の情報更新も問題ない(はず)。

状況確認

$ whois tsaitoh.net
Domain Name: TSAITOH.NET
:
Registrant Email: nic-staff@sakura.ad.jp
Name Server: NS1.MYDNS.JP
Name Server: NS0.MYDNS.JP
Name Server: NS2.MYDNS.JP

DNSを管理してもらっている、mydns.jp で確認しても、特に問題がないはずなんだが…

$ nslookup tsaitoh.net 8.8.8.8
;; Got SERVFAIL reply from 8.8.8.8      ### Google Public DNS
Server:         8.8.8.8
Address:        8.8.8.8#53
** server can't find tsaitoh.net: SERVFAIL

$ nslookup tsaitoh.net ns0.mydns.jp     ### mydns.jp
Server:         ns0.mydns.jp
Address:        210.197.74.200#53

Name:   tsaitoh.net
Address: 64.33.3.150

$ nslookup tsaitoh.net 208.67.222.222   ### OpenDNS(Cisco)
Server:         208.67.222.222
Address:        208.67.222.222#53

Non-authoritative answer:
Name:   tsaitoh.net
Address: 64.33.3.150

$ nslookup tsaitoh.net 9.9.9.9          ### Quad9(IBM)
Server:         9.9.9.9
Address:        9.9.9.9#53

Non-authoritative answer:
Name:   tsaitoh.net
Address: 64.33.3.150

$ nslookup tsaitoh.net 1.1.1.1          ### Cloudflare
Server:         1.1.1.1
Address:        1.1.1.1#53

Non-authoritative answer:
Name:   tsaitoh.net
Address: 64.33.3.150

Google DNS から DoS 攻撃(水責め)

mydns.jp の運営の方に問い合わせをしたら、報告をもらえた。
DoS 攻撃が静まれば、復帰するかなぁ…

((メールより一部引用))
原因が判明しました。
現在、GoogleのDNSからDoS攻撃、いわゆる「水責め」を受けているため、こちらのDNSがGoogleとのやり取りを一時的に遮断しています。
なので、1.1.1.1では引けても8.8.8.8では引きにくい、という状況が発生しています。

Home Assistant のインストール

Google Home mini などでの音声操作は、Google Home に Switchbot を連携させて、使えるようになって十分に便利になったけど、調べて出てきた Home Assistant も試してみたくなった。

Docker をインストール

普通に、Ubuntu の Docker をインストールする手順にてインストール。

Docker に Home Assistant をインストール

参考にしている記事などでは、homebridge なども Docker でインストールしているけど、我が家は homebridge が既に動いているので Home Assistant だけを docker で動かせばいい。これにあわせ、docker-compose.yml を作成。Docker 内の設定ファイルが保存される /config は、/var/lib/homeassistant にマウントさせる。

((( /etc/homeassistant/docker-compose.yml )))
version: '2'
services:
  homeassistant:
    container_name: homeassistant
    image: "ghcr.io/home-assistant/home-assistant:stable"
    volumes:
      - /var/lib/homeassistant://config
      - /etc/localtime:/etc/localtime:ro
    restart: unless-stopped
    privileged: true
    network_mode: host
$ cd /etc/homeassistant
$ sudo docker-compose up -d
$ sudo docker ps
CONTAINER ID   IMAGE                                          COMMAND   CREATED          STATUS          PORTS     NAMES
xxxxxxxxxxxx   ghcr.io/home-assistant/home-assistant:stable   "/init"   15 minutes ago   Up 15 minutes             homeassistant

設定がうまくいったら、http://localhost:8123 を開いて、ユーザ登録などを行う。

 

設定ができた後は色々と設定して、最終的に以下のような画面となった。

homebridge-gshが有償化

自宅の homebridge の制御を google home mini から行うために homebridge-gsh を使っていた。便利に “OK,google” で便利に使っていたけど、エラーがでるようになってきた。homebridge-gsh の導入した当初のページには、「無償だけど有償登録をお願い」みたいに書いてあったけど、2025年5月から、有償サービスに移行していたようだ。

プラグインの再設定を試みたけど、エラーが出るのでよくよく見たら、Trial Expired … ってしっかり表示されていらぁ。

月額 US$2.00 or 年額 US$22.00 を PayPal or カードで支払いとな。こんだけ便利に使ってるのにケチケチ野郎は導入に悩む。Gemini に聞いてみたところ Home Assistant を導入する方法が紹介された。

でも、よくよく考えたら、メインの機器は Switchbot の配下だし、ぐだぐだ考えずに Google Home アプリで、Switchbot を連携でいいじゃん。

SPF, DMARC の確認をしてみよう

最近になって、spam が増えて、文面も日本狙いで、しかもついつい押してしまいそうなものばかり。

SPF 確認の設定

$ sudo apt install postfix-policyd-spf-python

postfixの設定

((( /etc/postfix/main.cf )))
smtpd_recipient_restrictions =
    permit_mynetworks
    permit_sasl_authenticated
    reject_unauth_destination
    check_policy_service inet:127.0.0.1:10023    # postgrey
    check_policy_service unix:private/policy-spf # postfix-policyd-spf-python

最後に postfix の再起動

$ sudo systemctl postfix

postgreyの起動方法の変更

メール受信チェックの postgrey を使っているけど、inet 起動になっている。でも一般的には socket 起動が普通のようなので変更するか。

((( /etc/default/postgrey )))
#POSTGREY_OPTS="--inet=127.0.0.1:10023"
POSTGREY_OPTS="--unix=/var/lib/postgrey/postgrey.sock"

((( /etc/postfix/main.cf )))
smtpd_recipient_restrictions = permit_mynetworks,
                permit_sasl_authenticated,
                reject_unauth_destination,
                check_policy_service unix:/var/lib/postgrey/postgrey.sock
                check_policy_service unix:private/policy-spf
smtpd_relay_restrictions = permit_mynetworks,
                permit_sasl_authenticated,
                reject_unauth_destination,
                check_policy_service unix:/var/lib/postgrey/postgrey.sock

OpenDMARC確認の設定

apt install opendmarc
設定に失敗中

(追記)

上記のように、SPFや postgrey などの設定を見直したけど、SPF, Postgrey, DKIM 全部通ったメールが届いてる。はぁ….
Thuderbird の spamfilter が迷惑フォルダに落としてくれているけど。

Authentication-Results: XXXXXXXX;
    dkim=pass (1024-bit key; unprotected) header.d=qlaahl.com
        header.i=sbi_news_alert@qlaahl.com header.a=rsa-sha256
        header.s=default header.b=mQJjBRHe;
    dkim-atps=neutral
X-Greylist: delayed 601 seconds by postgrey-1.37 at XXXXXXXX;
    Sun, 07 Sep 2025 09:53:47 JST
Received-SPF: Pass (mailfrom) identity=mailfrom;
    client-ip=34.142.162.76; helo=qlaahl.com;
    envelope-from=sbi_news_alert@qlaahl.com; receiver=tsaitoh.net 

(追記09/18) DKIM通過の迷惑メール減った

DKIM, SPFを通過してくる迷惑メールが増えたけど、送信元がブラックリストに載り出したのか、迷惑メールも来なくなったな。

自宅サーバへのdkim-passのspam

最近、自宅サーバに届く spam だけど、どれも dkim=pass のメールばかり。
DKIM さえも信用できなくなってるのか?

spam の分析

調べてみると、発信元は全部異なるドメイン名なんだけど、どの spam もサーバ自体は google cloud で、ドメイン名は tucowsdomains.com となっている。

((( spam のメールヘッダ )))
Received: from flvvzqx.com (flvvzqx.com [34.64.222.184])
  :
$ whois 34.64.222.184
:
NetRange:       34.64.0.0 - 34.64.255.255
CIDR:           34.64.0.0/16
NetName:        GOOGLE-CLOUD
NetHandle:      NET-34-64-0-0-2
Parent:         GOOGL-2 (NET-34-64-0-0-1)
NetType:        Reallocated
:
$ whois flvvzqx.com
   Domain Name: FLVVZQX.COM
   Registry Domain ID: 2923522407_DOMAIN_COM-VRSN
   Registrar WHOIS Server: whois.tucows.com
   Registrar URL: http://www.tucows.com
   :

DNSBL の更新

以前、メールが届かないトラブルがあったとき、メールの送信元の確認で使っている DNS Blackhole list のサーバが、実はサポートがいい加減とか、メンテナンスされてないといったことがあり、bl.spamcop.net だけで運用していた。

今回、spam が増えたことだし Gemini に相談したら、zen.spamhaus.org を教えてくれた。もっと候補を挙げて…と調べて教えてた multi.uribl.com なども追加してみたけど、運用実験したら、自分の au.com , mineo.jp のメールもブロックしちゃう。

ということで、最終的には zen.spamhaus.org , bl.spamcom.net に留めた。

  ((( /etc/postfix/main.cf )))
  smtpd_client_restrictions = permit_mynetworks,
                check_client_access regexp:/etc/postfix/smtpd_client_regexp
+               reject_rbl_client zen.spamhaus.org,
                reject_rbl_client bl.spamcop.net,
                reject_unknown_client_hostname,
                permit

sshで多段loginでブラウザ起動

sshトンネル

リモートのFireWallの内側から自宅サーバにsshトンネルを必要に応じて掘るようにしている。

リモート$ ssh -R トンネルポート:localhost:22 自宅サーバ ping -i 30 -c 60 localhost

これにより、自宅サーバからリモートに接続する際には、slogin で接続できる。

自宅サーバ$ slogin -p トンネルポート localhost

トンネル経由でブラウザ起動

サーバのメンテナンス程度なら前述の slogin で便利に作業できるけど、リモートの FireWall の内側のWebサーバに接続したいことも出てくる。

こういう場合は、多段 login を使うけど、ssh, slogin の組み合わせが面倒なのでメモ。

自宅WindowsWSL$ ssh -t -X 自宅サーバ ssh -t -p トンネルポート -X localhost google-chrome

WP-WebAuthnで指紋認証login

WordPress の Two-Factor プラグインの多要素認証を使っているけど、メールで飛ばすワンタイムパスワードのコピペが面倒。最近は passkey などで指紋認証などが便利だし、プラグインを漁ってみた。

その中で、WP-WebAuthn が出てきた。現バージョンで検証されていない…とか表示されたけど、ひとまず動きそう。しかも、Two-Factor とも併用ができる。

WP-WebAuthn のインストール

gmp , mbstring が必要と書いてあったので、gmp を追加。(mbstringはインストール済み)

$ sudo apt install php8.4-gmp php8.4-mbstring

プラグインの WP-WebAuthn の設定では、特に変更なしで「変更を保存」

次にユーザのプロフィール画面を開き、「登録された WebAuthn 認証機能」にて「新しい認証の登録」を選び登録。

ログインの際には、以下のような画面で login できた。

forwarders 設定ミス

娘のスマホで AQUOS を購入ということで、メモ用にリンクを確認するが、SHARP でググったリンク https://corporate.jp.sharp を参照できない。最初は、 jp.sharp というドメイン名に驚くが、ググってみると .sharp とかの 新gTLD が使えるらしい。

自宅内上流ルータに DNS の問い合わせはできない

nslookup www.jp.sharp 8.8.8.8 は動くけど、nslookup www.jp.sharp は、返答が返ってこない。forwarders に書いてある DNS に問い合わせるけど、自宅内の上流ルータ 192.168.1.254 は nslookup 自体を拒否される。Buffalo の家庭用ルータなら、DNSにルータの IPアドレスを指定するのが普通なので、上流ルータの 192.168.1.254 を設定していたけど、これが間違いの元のようだ。

ということで、自宅上流ルータがもらっている丹南ケーブルの DNS 202.88.193.82, 202.127.80.3 を forwarders に記載して、正常動作するようになった。

((( /etc/bind/named.conf.options )))
  forwarders {
        // Google public DNS
        8.8.8.8;
        8.8.4.4;
        // router
-       192.168.1.254; // 家庭内上流ルータのIPアドレス
+       202.88.193.82; // ルータがもらう 丹南ケーブルの DNS
+       202.127.80.3;  // 丹南のセカンダリ DNS
  };

Google 検索

My Google   Yahoo

Microsoft

ファンサイト

メタ情報