やわらかしかっけい

なんでもすぐに忘れてしまう自分のために

DNSレコード、ネームサーバー、いまだによくわからない

DNSレコード

DNS = ドメインネームシステム
  • このドメイン(○○.com)にはこのIPアドレスだよ、と紐付けする
  • 「A(AAAA)」「CNAME」「MX」「NS」「TXT」「PTR」などの種類がある

例えば、「ドメイン名 = IPアドレス」とするいちばん基本的なDNSレコードなら、
apple.com. A 17.149.160.49」という書き方をします。

DNSレコードってなんだ? | 超初心者のサーバー移転とドメイン移管&ついでにWordPressも!

ネームサーバー

  • ドメインごとに、このサーバーで運用するよ、と定める必要がある
    • たとえばXサーバーの場合は、こう

ネームサーバー1 ns1.xserver.jp( 219.94.200.246 )
ネームサーバー2 ns2.xserver.jp( 210.188.201.246 )
ネームサーバー3 ns3.xserver.jp( 219.94.200.247 )
ネームサーバー4 ns4.xserver.jp( 219.94.203.247 )
ネームサーバー5 ns5.xserver.jp( 210.188.201.247 )

https://www.xserver.ne.jp/manual/man_domain_namesever_setting.php

ネームサーバー のことをDNSサーバーとも言ったりして、ややこしいね・・

WordPress ページ送りを同カテゴリの記事に限定する

single.phpなどに置いてる
「前の記事へ」「次の記事へ」のページ送り

  • previous_post_link
  • next_post_link


そのリンク先を、今いる記事と同じ記事に限定するには・・・

第3の引数にtrueを指定するだけ

か、かんたんんんんんんん!!!!!!!

<?php previous_post_link('%link', 'ひとつ前の記事へ', true); ?>

$in_same_term
(真偽値) (オプション) 現在の投稿と同じタクソノミー・ターム(例:カテゴリー)の投稿に限定するかどうか。'true' にすると現在のタクソノミー・タームがついた投稿だけを表示します。
初期値: false
注意: 現在の投稿に 2 つ以上のターム(例:親と子の両方)がついていた場合、どのタームがついた投稿へリンクするかは選べません。

テンプレートタグ/previous post link - WordPress Codex 日本語版

さくらVPS (CentOS6)で メールサーバー構築

メールサーバー構築する必要ある?

WordPressサイトだから、プラグインを使う方法もある
www.adminweb.jp

けど、まぁ構築の仕方を経験しておきたいというのもあり、やってみることにする

参考記事

qiita.com

1. DNSレコードを登録

  • Aレコード
    • mail.xxx.com
  • MX レコード
    • VALUE : mail.xxx.com
    • 優先度 10

help.onamae.com

2. ポートを開ける

  • SMPT(25)
  • SMTPS(465)
  • STARTTLS(587)
  • IMAPS(993)
  • POP3S(995)

knowledge.sakura.ad.jp

3. Let'sEncrypt サブドメイン追加

www.yoidukigembu.com

途中で certbot-autoちゃんが見つからず泣きそうになったが、

# find -name 'certbot-auto'

してみたら、/root/に入っていることが判明。
なので実行は、以下です

# /root/certbot-auto certonly

expandコマンド・・・?!

ドメイン追加うまくいかず、、
結局またrevokeして入れ直したわけだが、
どうやらサブドメイン追加用のexpandコマンドというのがあるらしい
qiita.com

次回試す

4. postfixdovecotの設定

ここからが大変なんだよね、、、、

blog.apar.jp
ほぼ完全にこれにしたがって進めていく

  • systemctl restart xxxxx になってるところは、
  • service xxxxx restart に置き換えて

ちまちま進めていく。

5. SMTP認証設定

システムのユーザーをメールの認証に使うためには、
これが必要だった

#  /etc/rc.d/init.d/saslauthd start (saslauthd起動)
# chkconfig saslauthd on (常に起動設定)

6. メールソフトの設定

gmail

links-creations.com

SMTP認証がされない、、、、、、
つづく

エラーにエラーの入り口

postfixのエラーっぽかったので、

cat /var/log/mail/maillog

でエラーコードを見てみたところ、
/etc/postfix/master.cf

  -o smtpd_recipient_restrictions=permit_sasl_authenticated,reject

の -o が抜けてたことが判明、直す。
するとWordPressのコンタクトフォーム経由のメールは送れるようになった。

が、まだSMTP認証が通らない。

d.hatena.ne.jp


上記記事をみてエイリアスも確認したんだが、、

ウー

ポートが空いているかどうか調べる

# netstat -nap

ポートが空いてるか調べる – Linux memo

25も587も開いてる
www.cman.jp

やはり認証が通らない

あちこち(postfix/master.cfなどを)いじくり回していたら、
メールの受信だけはできるようになり、
mail/maillogのエラー文も様子が変わって来た。

SASL LOGIN authentication failed

GMailの送信画面で、

  • ポートは587
  • 接続方式はSSL

にしてみたら、通った!

Macメーラーでは

  • ポート 587
  • 認証:パスワード

にしてみたら、通った!

やった〜〜〜〜〜〜〜〜!

設定メモ

main.cf

myhostname = mail.xxxx.com
mydomain = xxxx.com
myorigin = $myhostname
inet_interfaces = all
inet_protocols = ipv4
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
local_recipient_maps = proxy:unix:passwd.byname $alias_maps
unknown_local_recipient_reject_code = 550
mynetworks_style = host
mynetworks = 168.100.189.0/28, 127.0.0.0/8, 192.168.0.0/24, 153.xxx.xxx.0/24 (これ全部必要かは不明)
relay_domains = $mydestination
relayhost =
home_mailbox = Maildir/

# SMTP-Auth
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain = $myhostname
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
broken_sasl_auth_clients = yes

# permit sasl authebticated
smtpd_recipient_restrictions =
 permit_mynetworks
 permit_sasl_authenticated
 reject_unauth_destination

# receive mail size
mailbox_size_limit = 209715200
message_size_limit = 5242880

#### for spam
#client
smtpd_client_restrictions =
    check_client_access hash:/etc/postfix/access
    reject_rbl_client zen.spamhaus.org
    reject_non_fqdn_sender
    reject_unknown_sender_domain

#envelope address
smtpd_sender_restrictions =
        reject_rhsbl_sender zen.spamhaus.org
        reject_unknown_sender_domain

disable_vrfy_command = yes
smtpd_helo_required = yes

# SSL
smtp_use_tls = yes
smtp_tls_security_level = may
smtpd_tls_cert_file = /etc/letsencrypt/live/aisa.site/fullchain.pem
smtpd_tls_key_file = /etc/letsencrypt/live/aisa.site/privkey.pem

# tls log level 0_1_2
smtpd_tls_loglevel = 1

# about_tls received header
smtpd_tls_received_header = yes

# cache file
smtpd_tls_session_cache_database = btree:/var/lib/postfix/smtpd_scache
smtpd_tls_session_cache_timeout = 3600s

master.cf

smtp	  inet  n	-	n	-	-	smtpd
submission inet n	-	n	-	-	smtpd
#  -o smtpd_tls_security_level=encrypt
  -o smtpd_sasl_auth_enable=yes
#  -o milter_macro_daemon_name=ORIGINATING
  -o smtpd_tls_wrappermode=yes
  -o smtpd_client_restrictions=permit_sasl_authenticated,reject