BIND を再起動する
systemctl restart named-chroot
named.conf 編集時
rndc reconfig
ゾーンファイル編集時
rndc reload example.com
BIND を再起動する
systemctl restart named-chroot
named.conf 編集時
rndc reconfig
ゾーンファイル編集時
rndc reload example.com
rndc reload example.com rndc: 'reload' failed: dynamic zone
このエラーは、ゾーンが allow-update または update-policy により動的更新(nsupdate)を許可しているため、手動編集 + reload が禁止されるという意味です。
動的ゾーンを一時的にフリーズ して編集 → thaw
rndc freeze example.com vi /var/named/example.com.zone # または chroot 側のパス rndc thaw example.com
mail.example.com の A レコードが Web サーバーの IP を向いていること。
証明書取得だけならバーチャルホスト不要
mail.example.com が Web 表示できなくても問題なし
404 が出ても Certbot は成功する
RPM Fusion Free, Nonfree リポジトリを追加する
# dnf install https://mirrors.rpmfusion.org/free/el/rpmfusion-free-release-10.noarch.rpm
# dnf install https://mirrors.rpmfusion.org/nonfree/el/rpmfusion-nonfree-release-10.noarch.rpm
FFmpeg をインストールする(依存関係として EPEL が必要)
# dnf --enablerepo=epel install ffmpeg ffmpeg-devel
インストール確認
# ffmpeg -version
:~$ sudo dnf install ghostscript
:~$ ghostscript \ -dNOPAUSE -dBATCH -dSAFER \ -sDEVICE=jpeg \ -dJPEGQ=95 \ -r600 \ -dUseCIEColor \ -dColorConversionStrategy=/sRGB \ -dEmbedAllFonts=true \ -dDownScaleFactor=1 \ -sOutputFile=page-%03d.jpg \ input.pdf
各オプションの意味
● -dNOPAUSE / -dBATCH
複数ページ PDF を処理するための基本動作。
削ると ページごとに停止してしまう。
● -dSAFER
セキュリティ強化。
PHP の exec から呼ぶ場合は必須。
ローカル用途なら外部入力がないため不要。
● -sDEVICE=jpeg
JPEG 出力を指定。
● -dJPEGQ=95
JPEG 品質。
95 は「ほぼ可逆に近い最高品質」。
100 は逆にノイズが増えるので非推奨。
● -r600
600dpi でレンダリング。
300dpi → 印刷品質
600dpi → 文字・図形が非常にシャープ
● -dUseCIEColor / -dColorConversionStrategy=/sRGB
PDF の CMYK → RGB 変換を Ghostscript の CIEColor で高精度に行う。
色ズレを最小化するための必須設定。
● -dEmbedAllFonts=true
フォント埋め込みを強制。
PDF 内のフォントが不完全でも Ghostscript が補完して描画。
● -dDownScaleFactor=1
Ghostscript の内部ダウンサンプリングを無効化。
→ 画質劣化を完全に防ぐ。
● -sOutputFile=page-%03d.jpg
複数ページ PDF に対応。
page-001.jpg / page-002.jpg … のように出力。
上記は Web 用(RGB)。印刷用(CMYK)の場合は下記。
:~$ ghostscript \ -dNOPAUSE -dBATCH \ -sDEVICE=tiff32nc \ -r600 \ -dUseCIEColor \ -dColorConversionStrategy=/CMYK \ -dProcessColorModel=/DeviceCMYK \ -dEmbedAllFonts=true \ -dDownScaleFactor=1 \ -sOutputFile=page-%03d.tif \ input.pdf
● - tiff32nc
TIFF の 32bit CMYK(8bit × 4ch)。
印刷用途で最も安定し、可逆圧縮(LZW/ZIP)も適用可能。
● - 600dpi
印刷の標準は 300dpi ですが、
600dpi は文字・図形が極めてシャープ。
● - ColorConversionStrategy=/CMYK
出力色空間を CMYK に固定。
RGB PDF でも CMYK PDF でも、確実に CMYK で出力。
● - ProcessColorModel=/DeviceCMYK
Ghostscript の内部処理も CMYK に統一。
これがないと内部で RGB→CMYK→RGB→CMYK のような劣化が起きる。
● - UseCIEColor
CIE ベースの色変換で、CMYK→CMYK の色ズレを最小化。
● - EmbedAllFonts=true
フォントが壊れた PDF でも Ghostscript が補完して描画。
● - DownScaleFactor=1
内部ダウンサンプリングを完全無効化。
→ 画質劣化ゼロ。
main.cf は全体のデフォルト設定
master.cf はポートごとの上書き設定
main.cf
smtpd_sasl_auth_enable = yes smtpd_recipient_restrictions = permit_mynetworks permit_sasl_authenticated reject_unauth_destination message_size_limit = 10485760 smtpd_tls_security_level = may smtp_tls_security_level = may smtpd_tls_mandatory_protocols = !SSLv2,!SSLv3,!TLSv1,!TLSv1.1 smtp_tls_mandatory_protocols = !SSLv2,!SSLv3,!TLSv1,!TLSv1.1 smtpd_tls_cert_file=/etc/letsencrypt/live/mail.example.com/fullchain.pem smtpd_tls_key_file=/etc/letsencrypt/live/mail.example.com/privkey.pem smtpd_tls_session_cache_database = btree:/var/lib/postfix/smtpd_scache
master.cf(submission 587)
submission inet n - n - - smtpd # -o syslog_name=postfix/submission -o smtpd_tls_security_level=encrypt -o smtpd_sasl_auth_enable=yes
master.cf(smtps 465)
smtps inet n - n - - smtpd # -o syslog_name=postfix/smtps -o smtpd_tls_wrappermode=yes -o smtpd_sasl_auth_enable=yes
DNS だけ手動固定
IPv6 アドレスとゲートウェイは自動
ipv6.method: auto ipv6.addresses: -- ipv6.gateway: --
| 項目 | 自宅サーバー | VPS |
|---|---|---|
| IPv6 アドレス | 自動(SLAAC) | 手動(固定値) |
| IPv6 ゲートウェイ | 自動(RA) | 手動(固定値) |
| RA | ルーターが送る | 多くの VPS は送らない |
| 手動設定の必要性 | 不要 | 必須 |
まず現在の接続名を確認:
nmcli connection show
例として接続名が Wired connection 1 だった場合:
nmcli connection modify "Wired connection 1" ipv4.dns "1.1.1.1 8.8.8.8 9.9.9.9" nmcli connection modify "Wired connection 1" ipv4.ignore-auto-dns yes nmcli connection modify "Wired connection 1" ipv6.dns "2606:4700:4700::1111 2001:4860:4860::8888 2620:fe::fe" nmcli connection modify "Wired connection 1" ipv6.ignore-auto-dns yes nmcli connection up "Wired connection 1"
確認
nmcli connection show "Wired connection 1" | grep dns
Public DNS
1. Cloudflare(1.1.1.1 / 2606:4700:4700::1111)
2. Google(8.8.8.8 / 2001:4860:4860::8888)
3. Quad9(9.9.9.9 / 2620:fe::fe)
TLS のハンドシェイクまで確認できるため、 SMTPポートが開いているか+TLSが正しく通るかを同時に判定できます。
587番(STARTTLS)
openssl s_client -starttls smtp -connect smtp.example.com:587
465番(SMTPS)
openssl s_client -connect smtp.example.com:465
▼ 成功する場合
大量の証明書情報が表示される
最後に 250 STARTTLS や 220 などの応答が返る
▼ 失敗する場合
Connection timed out(ポートが塞がれている)
Connection refused(相手が拒否)
何も返らず固まる(アウトバウンド制限)
/usr/local/bin — 実行可能ファイル(コマンド)を置く場所
→ PATH に入るので、ユーザーが直接実行する。
/usr/local/lib — 実行ファイルが使うライブラリや内部ファイルを置く場所
→ 直接実行はしない。bin の裏側で使われる。
どちらも OS に上書きされない「ローカル専用領域」です。
/usr/bin や /usr/lib は OS やパッケージ管理(yum/dnf)が管理
/usr/local/bin と /usr/local/lib は 管理者(root)が手動で管理する領域
セキュリティと所有権の違い
/usr/local/bin の実行ファイルは root:root + 755 が必須
→ cloud-user 所有は危険(任意コード実行リスク)
/usr/local/lib のファイルも root:root が基本
→ ライブラリをユーザーが書き換えられると、bin の実行結果が乗っ取られる