投稿

CentOS Stream 10 + Rspamd(OpenDKIMの代替)

OpenDKIMはほぼ開発停止状態らしいので代替ソフトを探しているときの覚書。 Gemini 3 Pro Previewと対話。 環境: CentOS Stream 10, Postfix 3.8.5, Rspamd 3.14.1 Postfixのバージョンを確認。 # postconf -d mail_version 1. Rspamdとは? 「アール・スパム・ディー( Rapid Spam Deamon)」。 メールサーバーで使用する高機能スパムフィルター。 参考:  Rspamd - Open Source Email Security 参考:  Rspamd - Wikipedia Nginxのようなイベントループモデルを採用し、大量の同時接続を低リソースで処理する。 モジュールでDKIM, ARCに対応可能。 初回リリース:  2008年 ライセンス: Apacheライセンス2.0 開発国: 開発者はロシア人。現在は英国に拠点移動。 導入するデメリットは多機能すぎて、学習コストが高め。 2.Rspamdをインストール 公式サイトの通り実行する。 参考:  Downloads | Rspamd Documentation リポジトリを追加してインストール。 # source /etc/os-release # export EL_VERSION=`echo -n $PLATFORM_ID | sed "s/.*el//"` # curl https://rspamd.com/rpm-stable/centos-${EL_VERSION}/rspamd.repo > /etc/yum.repos.d/rspamd.repo # dnf install rspamd 起動、自動起動オン、確認。 # systemctl start rspamd # systemctl enable rspamd # systemctl status rspamd 3. Valkey(Redis)をインストール RspamdはRedisのインストールを推奨しているようなのでインストールして設定する。 Redisはライセンス問題で後継のValkeyに移った。 参考:  R...

Redisの代わりにValkeyをインストール

Redisがリポジトリになかったので検索してみると、Valkeyが標準リポジトリから配布されているので調査したときの覚書。 Gemini 3 Pro Previewと対話。 環境: CentOS Stream 10, Valkey 8.0.6 1. Valkeyとは Valkeyはかつてのオープンソース版Redis(BSDライセンス)の正当な後継として作られたフォーク。 参考:  Valkey 2024年3月にRedis社(Redis Inc.)は、長年採用していたBSD 3-Clause(非常に自由度が高いライセンス)を廃止し、厳密な意味でのオープンソース(OSI定義)ではなくなった。 2024年3月にLinux Foundation主導でValkeyプロジェクトが発足。 参考:  Valkey - Wikipedia 特徴 Redis ( 現在 ) Valkey ライセンス RSALv2 / SSPL ( プロプライエタリに近い ) BSD 3-Clause  ( 完全な OSS) 開発主体 Redis Inc. (1 社独占 ) Linux Foundation ( コミュニティ主導 ) ベース オリジナル Redis 7.2.4 からのフォーク 互換性 - Redis クライアントと 完全互換 を目指す (Drop-in replacement) 主なサポーター Redis Inc. AWS, Google, Oracle, Ericsson, Heroku 等 クラウド対応 今後、公式以外での利用はライセンス契約が必要になる可能性 主要クラウドベンダーが標準サポートへ移行中 実質的な標準(デファクトスタンダード)はValkeyに移った。 2. Valkeyのインストール dnf経由でインストー...

e-Taxで消費税の簡易課税を電子申請。「法人設立及び異動手続関係」メニューから。

簡易課税の申請をしたときの覚書。 環境: 株式会社、一人社長 前の記事で事前申請が必要と書いときながら申請するのを忘れていた。 課税期間の開始の日の前日までに申請しないといけない。 課税売上5,000万円までは、簡易課税の方が圧倒的に楽。 原則課税(個別対応方式)で計算すると、税区分の意味とか登録番号の有無で10%なのか8%が変わるので本当に大変。 個人的には、税金に関する知識が得られたので良かったけど、一回やれば十分。 1. e-Taxで電子申請 e-Taxで ログイン 申請・納付手続を行う 【申告・申請・納税】新規作成 → 操作に進む 【作成手続きの選択】法人設立及び異動手続関係 → 法人設立及び異動手続きの申請・届出 【帳票共通項目入力】法人名称等/代表者情報 → 次へ 【帳票入力】 一覧をスクロール → 消費税簡易課税制度選択届出 → 作成 一度申請すれば、次年度も継続的に適用されるので、毎年申請する必要はない。 課税期間と基準期間 課税期間: 消費税の計算をする事業年度 基準期間: 消費税を払う義務があるか判定する事業年度。 例)課税期間: 2024年10月1日 ~ 2025年9月30日   基準期間: 2022年10月1日 ~ 2023年9月30日 2. メニューの場所が違う e-Taxの右上にある「ご利用ガイド」を見ると「消費税課税事業者選択届出書」は「所得税及び消費税の申請・届出関係」にある。 これが落とし穴。 下記YouTubeでも画面に出ている。 参考:  e-taxによる「簡易課税制度の申請手順」 - YouTube たぶん個人と法人でメニューが違う(?) 登記したときに青色申告と一緒に行っておいた方がいい。 ▼ 関連記事 法人決算をe-TaxとeLTAXで電子申告して納税 課税売上1000万円を超えたら2年後に課税事業者

マイナンバーカード+運転免許証の一体化手続き

引越しを検討しているので、今のうちに運転免許証をマイナンバーカードに一体化させて住所変更を簡略化しようとしているときの覚書。 環境: 埼玉県川口市 1. マイナンバーカードと運転免許証の一体化手続き マイナンバーカードと運転免許証を一体化する手続きは「免許証の持ち方(保有形態)の変更」という。 参考:  免許証の持ち方(保有形態) - 埼玉県警察 手続き履歴 西川口警察署へ行く。 免許更新と同じ列に並ぶ。 月曜日の12:55に行ったら15人ほど並んでいたので、もう少し早く行って並んだ方が早く帰れそう。 受付端末で「免許証の持ち方(保有形態)の変更」を選択。 最初の画面ではなく「次のページ」にある。 電子マネーで支払い。 (担当の方が作業) 確認と説明を受ける。 30分ほど掛かった。 運転免許証は回収された。 マイナンバーカードだけだと一体化されていることが分からないので、免許情報記録確認書のキリトリ部分をマイナンバーカードと一緒にしておく。 免許情報記録確認書はスキャンしておく。 2. マイナポータルで連携登録 マイナポータルで運転免許証を連携すると住所変更などをオンラインで出来るようになる。 参考:  マイナ免許証との連携 | マイナポータル 免許更新の際のオンライン講習を受講 本籍のオンライン変更の申請 住所変更ワンストップサービス 一体化手続きした翌日以降に連携登録する。 手続き履歴 Microsoft Edgeに拡張機能をインストールしているので、Edgeを使ってマイナポータルへログイン。 運転免許証のメニューから連携登録。 エラーになるのでPC用アプリをインストールして再ログイン。 画面通りに進める。 「マイナ免許証」との連携を開始しましたのメールが届く。 次の免許更新時期は令和10年(2028年)。 ▼ 関連記事 株式会社の代表取締役の住所変更(定款変更) マイナポータルとねんきんネット

CentOS Stream 10(開発環境) + Nginx + HTTP/3 QUIC

CentOS Stream 10の開発環境でNginx + HTTP/3 QUICを試したときの覚書。 Gemini 2.5 Proと対話 環境: CentOS Stream 10 1. ビルドしたNginxをアンインストール 前にビルドしたときはwith-cc-optやwith-ld-optはどうでもいいと思っていたけど、結構大事ということを知ったので、dnf経由でインストールしたNginxのビルドオプションを確認するため、まずは手動ビルドしたNginxをアンインストールする。 仮想マシン環境なのでスナップショットをとっておく。 サービスの停止 # systemctl stop nginx 設定ファイルをバックアップ。 # cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.old20251017 ビルドしたソースファイルに移動してMakefile確認。 # cd /usr/local/src/nginx-1.28.0/ # less Makefile make uninstallがないので、手動で削除する。 # rm /usr/sbin/nginx ビルドするとnginx.serviceは作成されないのでリネームする。 # mv /etc/systemd/system/nginx.service /etc/systemd/system/nginx.service.bak サービスの再読み込み。 # systemctl daemon-reload 再インストールするので、設定ファイルはそのまま。 2. dnf経由でインストールしてビルドオプション確認 標準リポジトリにあるNginxは1.26.3だったので、nginx公式リポジトリから1.28.0をインストールした。 参考:  nginx: Linux packages # vi /etc/yum.repos.d/nginx.repo [nginx-stable] name=nginx stable repo baseurl=http://nginx.org/packages/centos/$releasever/$basearch/ gpgcheck=1 enabled=1 gpgkey=htt...

CentOS Stream 10にstep-cliをインストールして別サーバーのstep-caで署名

前に開発環境で自前認証局サーバーを構築したので、別のサーバーから証明書署名要求(CSR)を作成して署名したときの覚書。 Gemini 2.5 Proと対話。 環境: CentOS Stream 10, Smallstep CLI 0.28.7 1. step-cliのインストール このサーバーは署名を行わないので、step-cliだけインストール。 公式ドキュメントに従ってインストール。 参考:  Install Step CLI on Any Platform Guide | Smallstep リポジトリを追加。 # cat <<EOT > /etc/yum.repos.d/smallstep.repo [smallstep] name=Smallstep baseurl=https://packages.smallstep.com/stable/fedora/ enabled=1 repo_gpgcheck=0 gpgcheck=1 gpgkey=https://packages.smallstep.com/keys/smallstep-0x889B19391F774443.gpg EOT インストールして確認。 # dnf install step-cli # step-cli --version Smallstep CLI/0.28.7 (linux/arm64) Release Date: 2025-07-14T04:10:42Z 2.認証局クライアントとして設定 認証局サーバー(CAサーバーをインストールしたFreeBSD)でfingerprintの確認。 参考:  開発環境で自前HTTPS(SSL)を構築: FreeBSD14 + step-certificates + step-cli [FreeBSD]# less /usr/local/etc/step/ca/config/defaults.json {         "ca-url": "https://localhost:9000",         "ca-config": "/usr/local/etc/step/ca/config...

FreeBSD14 + Nginx + HTTP/3 QUIC

開発環境でNginxをビルドしてHTTP/3 QUICを試したときの覚書。 Gemini 2.5 Proと対話。 環境: FreeBSD 14.3-RELEASE-p4 1. Nginxをビルド 現在のバージョンとビルドオプションを確認。 見やすく改行付きのコマンド。 # nginx -V 2>&1 | sed 's/ --/\n--/g' nginx version: nginx/1.28.0 built with OpenSSL 3.0.15+quic 3 Sep 2024 TLS SNI support enabled configure arguments: --prefix=/usr/local/etc/nginx --with-cc-opt='-I /usr/local/include' --conf-path=/usr/local/etc/nginx/nginx.conf --sbin-path=/usr/local/sbin/nginx --pid-path=/var/run/nginx.pid --error-log-path=/var/log/nginx/error.log --user=www --group=www --with-compat --with-pcre --with-file-aio --http-client-body-temp-path=/var/tmp/nginx/client_body_temp --http-fastcgi-temp-path=/var/tmp/nginx/fastcgi_temp --http-proxy-temp-path=/var/tmp/nginx/proxy_temp --http-scgi-temp-path=/var/tmp/nginx/scgi_temp --http-uwsgi-temp-path=/var/tmp/nginx/uwsgi_temp --http-log-path=/var/log/nginx/access.log --with-http_v2_module --with-http_v3_module --with-http_gunzip_module --with-http_gzip_static_module --wit...

開発環境で自前HTTPS(SSL)を構築: FreeBSD14 + step-certificates + step-cli

開発環境でSSL通信環境を設定したときの覚書。 Gemini 2.5 Proと対話。 環境: FreeBSD 14.3-RELEASE-p4, Smallstep CLI 0.28.7, nginx 1.28.0 mkcertがpkgになく、step-certificatesとstep-cliをインストールして設定。 1. step-cli(Smallstep CLI)とは? Smallstep CLIはPKI(公開鍵基盤)に関する操作を提供するコマンドラインツール。 参考:  GitHub - smallstep/cli: 🧰 A zero trust swiss army knife for working with X509, OAuth, JWT, OATH OTP, etc. ローカル開発やCI/CDパイプラインでの証明書自動化まで幅広く対応している。 2016年に「開発者がインフラをコードで管理するように、証明書もAPIを通じて自動的に管理できるようにすべきだ」と考え、アメリカでSmallstep社を設立。 現在ではデファクトスタンダード の一つとしての地位を確立。 cli-ca(step-certificates)を利用すればプライベート認証局を無料で構築することが可能。 有料のSmallstep社のサービスを利用すればプライベート認証局を簡単に構築できる。 今までSSL証明書を手動で更新していたものが、簡単に自動更新できるようになった。 Let's Encryptで使われている証明書発行・更新の自動化を自前で実装できる。 2. step-certificates + step-cliをインストールして認証局サーバー起動。 step-cliだけではサーバー証明書に署名できなかったので、step-certificatesもインストールする。 pkg経由でインストール。 # pkg install step-cli step-certificates Following are the defaults for step certificates and can be overridden by rc.conf variables:: * The service is run under user step...

Power AutomateでLocker StudioのレポートをPDF出力まで自動化

毎月生成しているアクセス解析レポートを自動化したときの覚書。 Locker Studio(旧Data Studio)のAPIはGoogle Workspace向けらしい。 参考:  Looker Studio API  |  Integrate and share  |  Google for Developers MicrosoftのPower Automateでブラウザを自動操作する方法でPDF出力までやってみる。 1. Power Automateとは? パソコンでやっている「決まった作業」を、一度ルールを教えるだけで、あとは全部自動でやってくれるRPA(Robotic Process Automation)ツール。 参考:  Microsoft Power Automate – Process Automation プラットフォーム | Microsoft MicrosoftのPower Platformのサービスの一つ。 参考:  AI 搭載ローコード ツール | Microsoft Power Platform デスクトップアプリがあり、GUIで直感的に操作できる。 Windowsユーザーであれば無料版Power Automateデスクトップアプリが使える。 Microsoft 365のユーザーであればクラウド版Power Automate Freeが使える。 2. Power AutomateでLocker Studioを操作 デスクトップ版をMicrosoft Store経由でインストール。 Locker Studioをブラウザで開いて操作するときの注意点。 ChromeやEdgeに拡張機能インストールして有効にする必要がある。 「Webページのリンクをクリック」フロー後に、「待機」フローで1秒~3秒ぐらい待機すると動作が安定する。 GA4のプロパティを選択するのは、URLクエリのparamsを指定すればOK。 Search Consoleはparamsを指定してもうまく表示してくれないので、 Webページのリンクをクリック(データ管理コントロール) → 待機(1秒) → キーの送信(フィルタしたいURL) → キー送信(TabキーとEnterキー) → 待機(3...

医療統計

診療情報管理士の勉強をしているときの覚書。 統計は目標設定が重要。 統計分析は「変数間の関係性」を論理的に検証するために行う。 明確な「目標」があるからこそ、データの中から検証すべき「関係性」が定まる。 そして、その「関係性」を統計的に検証することで、最初の「目標」に対する客観的な答えが得られ、次のアクションへと繋がっていく。 つまり、アクションに繋がらない分析は無価値。 分散と標準偏差 データが「正規分布: N(μ, σ²)」のとき標準偏差で散布度を表す。 平均値:  μ(ミュー) 分散: σ²(シグマの2乗) 標準偏差: σ 分散 σ² 分散はデータが平均値からどれくらい散らばっているかを示す。 平均値からの距離が正と負の場合でも計算できるように、平均値からの距離を2乗してから、それらを平均したものを「分散」と名付けた。 数学上、計算しやすくなったが2乗するため直感的にわかりにくい。 標準偏差 σ 標準偏差は分散の平方根。 分散が直感的にわかりにくいため、元の単位に合わせて分散を平方根したものを「標準偏差」と名付けた。 「標準偏を2乗したものが分散」と言われるとわかりにくい。 分散 → 標準偏差なので「分散を算出し、元のデータに合わせて平方根したものが標準偏差」。 変動係数(CV)= 標準偏差 ÷ 平均 偏差値 = (個々のデータ - 平均) ÷ 標準偏差 × 10 + 50 偏差値は日本と韓国の受験業界でしか使われない。 平均値と中央値と四分位範囲 データのばらつきが比較的小さく、外れ値がない(または無視できる)場合は、平均値を使うのが一般的。 データが正規分布でない場合に、四分位範囲でデータの散布度を表すことが多い。 平均値 μ 全てのデータを「ならした」ときの値。 極端に大きい/小さい値(外れ値)に引っ張られやすい。 中央値 データを大きさ順に並べたときの「ど真ん中」の値。 外れ値の影響を受けにくい。より実感に近い中心を表すことがある。 四分位範囲 データの真ん中50%が、どれくらいの範囲に収まっているかを示す指標。 中央値が「データのど真ん中の点」を示すのに対し、四分位範囲は「データのど真ん中あたりの幅(ばらつき)」を示す。 上下25%の極端なデータは計算から除外するため、外れ値の影響を受けづらい。 「ごく普通の、真ん中あたりの人たちが...