bind:client X ... zone transfer'example.com / AXFR / IN'denied、but allow-transfer {X; };セットです!
ゾーン転送を開始しようとすると、アクセスが拒否されます。
Dig @ns.example.com example.com axfr
の場合
client 71.252.219.43#58392: zone transfer 'balticovo.eu/AXFR/IN' denied
構成:
- サーバーはNATed、ファイアウォールの背後です。ファイアウォールの問題である場合、そのような要求が行われたことをコンピュータのログファイルに表示しません。
- 名前付きプロセスは、
/var/lib/named
でchrootされたバインドユーザーとして実行されます。 named.conf:
web:/var/lib/named/etc# cat named.conf options { directory "/etc"; pid-file "/var/run/named.pid"; statistics-file "/var/run/named.stats"; allow-transfer { 127.0.0.1; }; listen-on port 53 { any; }; listen-on-v6 port 53 { any; }; }; logging { category default { default_syslog; default_debug; }; category unmatched { null; }; channel default_syslog { syslog daemon; severity info; }; channel default_debug { file "named.run"; severity dynamic; }; channel default_stderr { stderr; severity info; }; channel null { null; }; }; zone "." { type hint; file "/etc/root.hints"; }; zone "localhost" { type master; file "/etc/localhost"; }; zone "0.0.127.in-addr.arpa" { type master; file "/etc/127.0.0"; }; zone "example.com" IN { type master; file "sites/example.com/forward.zone"; allow-transfer { 202.157.182.142; 71.252.219.43; }; allow-update { none; }; allow-query { any; }; zone-statistics yes; };
- すべてのファイルはbindが所有しています。そして、名前付きプロセスは、chrootされたユーザーによって実際に実行されます。
- Axfrレコード以外の掘削は機能します。
named -v
出力BIND 9.6-ESV-R3
この問題は解決されました。私はかなり大きな変更を加えました:
- ファイルのいくつかのアクセス許可によるセキュリティの強化(これまでは問題がなかったため、おそらくそうではありません)
- Rndc構成が設定されていません。キーを生成し、rndcを設定します。
そして.... named.confに変更を加えて再起動したとき、前のプロセスは強制終了されなかったようですが、新しいプロセスが生成され、ログにそのような行がありました。
Jan 25 15:43:22 web named[18863]: listening on IPv6 interfaces, port 53 Jan 25 15:43:22 web named[18863]: binding TCP socket: address in use Jan 25 15:43:22 web named[18863]: listening on IPv4 interface lo, 127.0.0.1#53 Jan 25 15:43:22 web named[18863]: binding TCP socket: address in use Jan 25 15:43:22 web named[18863]: listening on IPv4 interface eth0, 10.3.0.10#53 Jan 25 15:43:22 web named[18863]: binding TCP socket: address in use ... Jan 25 15:43:22 web named[18863]: /etc/named.conf:12: couldn't add command channel 0.0.0.0#953: address in use
今私は
killall named
その後/etc/init.d/bind9 start
そしてすべてうまくいった。
おそらく3番目のポイントで問題が解決しました。named.confを変更したときに、実際には最新のconfファイルで機能していなかったためです。
構成ファイルには、127.0.0.1の転送許可オプションのみが表示されます。これが、クライアントが拒否されている理由である可能性があります。次のようなものを含めるように構成を変更する必要があります。
allow-transfer { 127.0.0.1; 71.252.219.43; };
(71.252.219.43が、ゾーン転送を実行できると予想されるクライアントのアドレスであると想定しています。)