CentOS7とCWPをDigital Oceanドロップレットで実行しています。サーバーは現在2つのドメインをホストしており、4月26日に3つ目のドメインを追加しました。私は通常の手順でそれを行いました:
ns1.example.com
およびns2.example.com
数時間後、ドメインは問題なく動作し、ウェブをアップロードして稼働しました。その後、sslを有効にしようとしましたが、そのドメインにはインストールされていません。私は先に進み、ユーザーアカウントからドメインにsslをインストールすることを再試行します。エラーをスローしますDNS of your domain doesn't point to this server or you have htaccess restrictions
同じエラーが発生するWHMから試してみることにしました。私はグーグルでCentOS Webパネルフォーラムでいくつかの記事を見つけ、次のようないくつかの解決策を試しました。
私はすべて試しましたが、どれもうまくいきませんでした。次に、問題のあるドメインのDNS構成ファイルを作業ドメインと手動で比較することにしました。問題のあるドメインの一部のレコードが@
記号ではなくドメインで始まっていることに気付きました。私はすべての行を実際のドメイン構成と一致させましたが、まだうまくいきませんでした。
検索中に、DNSサーバーに問題がある可能性があるため、service named status
コマンドを実行してステータスを確認したところ、いくつかのエラーnetwork unreachable resolving
が見つかりました。完全な出力は以下のとおりです。
[root@server log]# service named status
Redirecting to /bin/systemctl status named.service
● named.service - Berkeley Internet Name Domain (DNS)
Loaded: loaded (/usr/lib/systemd/system/named.service; enabled; vendor preset: disabled)
Active: active (running) since Tue 2020-04-28 16:56:51 PKT; 46min ago
Process: 9965 ExecStop=/bin/sh -c /usr/sbin/rndc stop > /dev/null 2>&1 || /bin/kill -TERM $MAINPID (code=exited, status=0/SUCCESS)
Process: 9912 ExecReload=/bin/sh -c /usr/sbin/rndc reload > /dev/null 2>&1 || /bin/kill -HUP $MAINPID (code=exited, status=0/SUCCESS)
Process: 10792 ExecStart=/usr/sbin/named -u named -c ${NAMEDCONF} $OPTIONS (code=exited, status=0/SUCCESS)
Process: 10790 ExecStartPre=/bin/bash -c if [ ! "$DISABLE_ZONE_CHECKING" == "yes" ]; then /usr/sbin/named-checkconf -z "$NAMEDCONF"; else echo "Checking of zone files is disabled"; fi (code=exited, status=0/SUCCESS)
Main PID: 10794 (named)
CGroup: /system.slice/named.service
└─10794 /usr/sbin/named -u named -c /etc/named.conf
Apr 28 16:56:51 serv.xyz.com named[10794]: network unreachable resolving './NS/IN': 2001:dc3::35#53
Apr 28 16:56:51 serv.xyz.com named[10794]: network unreachable resolving './DNSKEY/IN': 2001:500:2f::f#53
Apr 28 16:56:51 serv.xyz.com named[10794]: network unreachable resolving './NS/IN': 2001:500:2f::f#53
Apr 28 16:56:51 serv.xyz.com named[10794]: network unreachable resolving './DNSKEY/IN': 2001:500:200::b#53
Apr 28 16:56:51 serv.xyz.com named[10794]: network unreachable resolving './NS/IN': 2001:500:200::b#53
Apr 28 16:56:51 serv.xyz.com named[10794]: network unreachable resolving './DNSKEY/IN': 2001:500:a8::e#53
Apr 28 16:56:51 serv.xyz.com named[10794]: network unreachable resolving './NS/IN': 2001:500:a8::e#53
Apr 28 16:56:51 serv.xyz.com named[10794]: managed-keys-zone: Key 20326 for zone . acceptance timer complete: k...usted
Apr 28 16:56:51 serv.xyz.com named[10794]: resolver priming query complete
Apr 28 17:24:15 serv.xyz.com named[10794]: client @0x7f9dac0c6f10 193.29.15.169#52139 (5hz.org): query (cache) ...enied
Hint: Some lines were ellipsized, use -l to show in full.
[root@server log]#
今、私はDNSソリューションを検索し、IPv6を無効にすることがソリューションであることがわかりました。私はOPTIONS="-4"
を追加してそれを無効にしようとし、IPv6行にコメントを付けようとしましたが、それでもうまくいきませんでした。
DNSサーバーに問題がある場合、他の2つのサイトがどのように機能しているのでしょうか。 ns lookupを実行しました。正しいDNS情報が表示されます。ただし、問題のあるドメインのnsルックアップを実行すると、ns
レコードが表示されますが、それにリンクされているIPがありません。
leafdnsでルックアップを実行しましたが、これはエラーです:None of your nameserver names contain glue or A records. This error is fatal. Your domain is not resolveable
。エラーがあってもドメインにアクセスできます。
編集:これは私のDNS構成ファイルの内容です
; Generated by CWP
; Zone file for DOMAIN_IN_QUESTION.com
$TTL 14400
@ 86400 IN SOA ns1.SERVER_DOMAIN.com. webmaster.DOMAIN_IN_QUESTION.com. (
2020042832 ; serial, todays date+todays
3600 ; refresh, seconds
7200 ; retry, seconds
1209600 ; expire, seconds
86400 ) ; minimum, seconds
@ 86400 IN NS ns1.SERVER_DOMAIN.com.
@ 86400 IN NS ns2.SERVER_DOMAIN.com.
@ IN A XXX.XXX.XXX.XXX
localhost.DOMAIN_IN_QUESTION.com. IN A 127.0.0.1
@ IN MX 0 DOMAIN_IN_QUESTION.com.
mail 14400 IN CNAME DOMAIN_IN_QUESTION.com.
smtp 14400 IN CNAME DOMAIN_IN_QUESTION.com.
pop 14400 IN CNAME DOMAIN_IN_QUESTION.com.
pop3 14400 IN CNAME DOMAIN_IN_QUESTION.com.
imap 14400 IN CNAME DOMAIN_IN_QUESTION.com.
webmail 14400 IN A XXX.XXX.XXX.XXX
cpanel 14400 IN A XXX.XXX.XXX.XXX
cwp 14400 IN A XXX.XXX.XXX.XXX
www 14400 IN CNAME DOMAIN_IN_QUESTION.com.
ftp 14400 IN CNAME DOMAIN_IN_QUESTION.com.
_dmarc 14400 IN TXT "v=DMARC1; p=none"
@ 14400 IN TXT "v=spf1 +a +mx +ip4:XXX.XXX.XXX.XXX ~all"
default._domainkey 14400 IN TXT "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCi4acT6Vt0/7FVab8FzfLqJ8LU4rciFbo2t4yFmVoX1Uxi4QQsEJqTBZBfnWerkw6zzdY6+WYd4nn/sZSVCXDWC4/bmGylAkewthvOkAK1xsa8mXeOHrhX3CtqlVu3Ti+U4NpmmfgHehqq0NUKF9ma6NaJNMK3zFojToEdqNGQfwIDAQAB"
注:構成ファイルで次の置き換えを行いました:
IPはXXX.XXX.XXX.XXX
に置き換えられました
サーバーアドレスはSERVER_DOMAIN
に置き換えられました
影響を受けるドメインはDOMAIN_IN_QUESTION
に置き換えられました
手がかりはありませんが、誰か助けてくれますか? 2日以上になったので、とても動揺しています。 :(
NS
レコードはあるが対応するA
レコードがない場合、親ゾーンからGlue Recordsが欠落している可能性があります。エラーメッセージNone of your nameserver names contain glue or A records. This error is fatal. Your domain is not resolveable
はそれと一致しています。
このドメインがexample.com
で、ネームサーバーがそのサブドメインns1.example.com
およびns2.example.com
である場合、ゾーン自体にA
レコードがあるだけでは不十分です。無限ループを引き起こします:
.com
様、example.com
のネームサーバーは何ですか?ns1.example.com
およびns2.example.com
です。example.com
のネームサーバーから確認する必要があります。example.com
のネームサーバーは何ですか?したがって、com
は、Glue Recordsのように、この情報を直接保持して提供する必要があります。これらのレコードを自分のDNSサーバーに設定することはできませんが、registrarに設定します。
network unreachable resolving './NS/IN': 2001:dc3::35#53
エラーは、おそらく現在の問題とは関係ありません。これらは、DNSサーバーからのDNSリクエストであり、そのrecursive機能に関連しています。つまり、それ自体では認識できないドメインを解決しようとしている場合、-authoritativelyです。
recursiveおよびauthoritative DNSサーバーは、IANAによって分離する必要があることに注意してください 権威ネームサーバーの技術要件 :
開いている再帰的なネームサービスはありません
権威ネームサーバーは、再帰的なネームサービスを提供してはなりません。この要件は、「RD」ビットが設定された当局の管轄外にクエリを送信することによってテストされます。
DNSサーバーに再帰的な機能が必要な場合は、もちろんこれらのエラーも修正する必要があります。 allow-recursion { 198.51.100.0/24; };
を使用したBINDでは、サーバーを再帰的に使用できるネットワーク範囲も制限する必要があります。
レジストラでネームサーバーとしてns1.SERVER_DOMAIN.comとns2.SERVER_DOMAIN.comを登録しましたか?ドメインのネームサーバーのみを変更すると、DNSクエリをサーバーにリダイレクトできません。まず、2つ2つのネームサーバーを登録する必要があります。次に、nsレコードを登録済みネームサーバーに変更する必要があります。
構成を確認するには:
whois SERVER_DOMAIN.com |grep -i "name server:"
Dig -t ns SERVER_DOMAIN.com
最初のクエリにはns1.SERVER_DOMAIN.comとns2.SERVER_DOMAIN.comが必要です。2番目のクエリでは、回答セクションに回答が含まれている必要があります。
次に、クエリがサーバーに転送されます。確認するには、サーバーのポート53でtcpdumpを開きます。 (サーバーからではなく)別の場所からDig -t soa SERVER_DOMAIN.com
のようなsoa dnsクエリを実行します。回答セクションには、ゾーンファイルの行が含まれている必要があります。 tcpdump出力を調べない場合、出力がない場合は、ファイアウォールがDNSポートをブロックしています。出力がある場合、DNS構成にエラーがあります。次のコマンドで構成テストを実行します。
named-checkconf /etc/named.conf named-checkzone SERVER_DOMAIN.com /var/named/[ZONEFILE]
おそらく、少なくとも1つは失敗します。エラーを修正します。そして、SOA DNSクエリを再実行します。
次にデバッグしますDOMAIN_IN_QUESTION.com。
最初に、SERVER_DOMAIN.comと同じTLDレコードを確認します。同じ手順:
whois DOMAIN_IN_QUESTION.com |grep -i "name server:"
Dig -t ns DOMAIN_IN_QUESTION.com
これらのステップはすべて "(ns1 | ns2).SERVER_DOMAIN.comを返します。そうでない場合は、レジストラでの構成に問題があります。お問い合わせください。
Confとzone confを確認してください
named-checkconf /etc/named.conf named-checkzone DOMAIN_IN_QUESTION.com /var/named/[ZONEFILE]
エラーがある場合は、修正します。
Soaレコードクエリを実行します。このクエリには、DNSサーバーが応答する必要があります。 tcpdumpを開き、dnsトラフィックパケットも確認します。
SOAの回答は、ゾーン構成ファイルのSOA行として一致する必要があります。