update named from gigacoms
This commit is contained in:
parent
baad60400d
commit
53be774189
2 changed files with 50 additions and 17 deletions
|
|
@ -78,13 +78,19 @@
|
||||||
check_mode: false
|
check_mode: false
|
||||||
tags: bind
|
tags: bind
|
||||||
|
|
||||||
|
- name: Выполнение rndc sync -clean
|
||||||
|
ansible.builtin.command:
|
||||||
|
cmd: "rndc sync -clean"
|
||||||
|
register: rndc_output
|
||||||
|
changed_when: true # rndc всегда возвращает rc=0 без явного указания изменений
|
||||||
|
|
||||||
# file to set keys for XFR authentication
|
# file to set keys for XFR authentication
|
||||||
- name: Create extra config for authenticated XFR request
|
- name: Create extra config for authenticated XFR request
|
||||||
ansible.builtin.template:
|
ansible.builtin.template:
|
||||||
src: auth_transfer.j2
|
src: auth_transfer.j2
|
||||||
dest: "{{ named_conf_dir }}/{{ named_auth_filename }}"
|
dest: "{{ named_conf_dir }}/{{ named_auth_filename }}"
|
||||||
mode: "0640"
|
mode: "0640"
|
||||||
owner: root
|
owner: "{{ named_owner }}"
|
||||||
group: "{{ named_group }}"
|
group: "{{ named_group }}"
|
||||||
become: true
|
become: true
|
||||||
when: named_dns_keys is defined and named_dns_keys|length > 0
|
when: named_dns_keys is defined and named_dns_keys|length > 0
|
||||||
|
|
@ -99,15 +105,21 @@
|
||||||
ansible.builtin.template:
|
ansible.builtin.template:
|
||||||
src: etc_named.conf.j2
|
src: etc_named.conf.j2
|
||||||
dest: "{{ named_config }}"
|
dest: "{{ named_config }}"
|
||||||
owner: "{{ named_owner }}"
|
owner: root
|
||||||
group: "{{ named_group }}"
|
group: "{{ named_group }}"
|
||||||
mode: "0640"
|
mode: "0640"
|
||||||
setype: named_conf_t
|
setype: named_conf_t
|
||||||
# validate: named-checkconf %s
|
validate: named-checkconf %s
|
||||||
become: true
|
become: true
|
||||||
notify: Reload bind
|
notify: Reload bind
|
||||||
tags: bind
|
tags: bind
|
||||||
|
|
||||||
|
- name: Disable IPv6
|
||||||
|
ansible.builtin.lineinfile:
|
||||||
|
path: /etc/sysconfig/named
|
||||||
|
line: 'OPTIONS="-4"'
|
||||||
|
state: present
|
||||||
|
|
||||||
- name: Start BIND service
|
- name: Start BIND service
|
||||||
ansible.builtin.service:
|
ansible.builtin.service:
|
||||||
name: "{{ named_service }}"
|
name: "{{ named_service }}"
|
||||||
|
|
@ -116,9 +128,14 @@
|
||||||
become: true
|
become: true
|
||||||
tags: bind
|
tags: bind
|
||||||
|
|
||||||
# - name: Permit DNS traffic in firewalld
|
- name: Set crypto policy to LEGACY via command line
|
||||||
# ansible.posix.firewalld:
|
ansible.builtin.command: update-crypto-policies --set LEGACY
|
||||||
# service: dns
|
register: policy_update
|
||||||
# permanent: true
|
changed_when: "'Setting system policy to LEGACY' in policy_update.stdout"
|
||||||
# state: enabled
|
|
||||||
# immediate: true
|
- name: Permit DNS traffic in firewalld
|
||||||
|
ansible.posix.firewalld:
|
||||||
|
service: dns
|
||||||
|
permanent: true
|
||||||
|
state: enabled
|
||||||
|
immediate: true
|
||||||
|
|
|
||||||
|
|
@ -18,6 +18,15 @@ options {
|
||||||
{% for port in named_listen_ipv6_port %}
|
{% for port in named_listen_ipv6_port %}
|
||||||
listen-on-v6 port {{ port }} { {{ named_listen_ipv6|join('; ') }}; };
|
listen-on-v6 port {{ port }} { {{ named_listen_ipv6|join('; ') }}; };
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
|
max-cache-size 2048m;
|
||||||
|
minimal-responses no;
|
||||||
|
// Увеличиваем лимиты на количество записей одного типа для одного имени
|
||||||
|
max-records-per-type 10000;
|
||||||
|
// Увеличиваем общий лимит записей на одно имя (на всякий случай)
|
||||||
|
max-types-per-name 100;
|
||||||
|
// Отключает отправку и строгую проверку EDNS Cookies
|
||||||
|
send-cookie no;
|
||||||
|
answer-cookie no;
|
||||||
directory "{{ named_dir }}";
|
directory "{{ named_dir }}";
|
||||||
dump-file "{{ named_dir }}/data/cache_dump.db";
|
dump-file "{{ named_dir }}/data/cache_dump.db";
|
||||||
statistics-file "{{ named_dir }}/data/named_stats.txt";
|
statistics-file "{{ named_dir }}/data/named_stats.txt";
|
||||||
|
|
@ -32,13 +41,16 @@ options {
|
||||||
|
|
||||||
recursion {% if named_recursion %}yes{% else %}no{% endif %};
|
recursion {% if named_recursion %}yes{% else %}no{% endif %};
|
||||||
{% if named_recursion %}allow-recursion { {{ named_allow_recursion|join('; ') }}; };
|
{% if named_recursion %}allow-recursion { {{ named_allow_recursion|join('; ') }}; };
|
||||||
|
recursive-clients {{ named_recursive_clients }};
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if named_forwarders|length > 0 %}forwarders { {{ named_forwarders|join('; ') }}; };{% endif %}
|
{% if named_forwarders|length > 0 %}forwarders { {{ named_forwarders|join('; ') }}; };{% endif %}
|
||||||
{% if named_forward_only %}forward only;{% endif %}
|
{% if named_forward_only %}forward only;{% endif %}
|
||||||
|
|
||||||
|
// edns-udp-size 1220;
|
||||||
|
// max-udp-size 1220;
|
||||||
rrset-order { order {{ named_rrset_order }}; };
|
rrset-order { order {{ named_rrset_order }}; };
|
||||||
|
// dnssec-enable is depricated
|
||||||
{% if named_dnssec_enable %} dnssec-enable {{ named_dnssec_enable }};{% endif %}
|
//{% if named_dnssec_enable %} dnssec-enable {{ named_dnssec_enable }};{% endif %}
|
||||||
|
|
||||||
dnssec-validation {{ named_dnssec_validation }};
|
dnssec-validation {{ named_dnssec_validation }};
|
||||||
|
|
||||||
|
|
@ -50,7 +62,6 @@ options {
|
||||||
pid-file "{{ named_pid_file }}";
|
pid-file "{{ named_pid_file }}";
|
||||||
session-keyfile "{{ named_session_keyfile }}";
|
session-keyfile "{{ named_session_keyfile }}";
|
||||||
{% if named_query_log is defined %}
|
{% if named_query_log is defined %}
|
||||||
|
|
||||||
querylog yes;
|
querylog yes;
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if named_dns64 %}
|
{% if named_dns64 %}
|
||||||
|
|
@ -60,6 +71,9 @@ options {
|
||||||
{% endif %}
|
{% endif %}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// disable ipv6 queries
|
||||||
|
server ::/0 { bogus yes; };
|
||||||
|
|
||||||
{% if named_statistics_channels %}
|
{% if named_statistics_channels %}
|
||||||
statistics-channels {
|
statistics-channels {
|
||||||
inet {{ named_statistics_host }} port {{ named_statistics_port }} allow { {{ named_statistics_allow|join('; ') }}; };
|
inet {{ named_statistics_host }} port {{ named_statistics_port }} allow { {{ named_statistics_allow|join('; ') }}; };
|
||||||
|
|
@ -68,7 +82,7 @@ statistics-channels {
|
||||||
|
|
||||||
logging {
|
logging {
|
||||||
channel default_debug {
|
channel default_debug {
|
||||||
file "{{ named_log }}";
|
file "{{ named_log }}" versions 5 size 10m;
|
||||||
severity dynamic;
|
severity dynamic;
|
||||||
print-time yes;
|
print-time yes;
|
||||||
};
|
};
|
||||||
|
|
@ -79,7 +93,7 @@ logging {
|
||||||
{% else %}
|
{% else %}
|
||||||
file "{{ named_query_log }}" versions 600 size 20m;
|
file "{{ named_query_log }}" versions 600 size 20m;
|
||||||
{% endif %}
|
{% endif %}
|
||||||
severity dynamic;
|
severity debug 1;
|
||||||
print-time yes;
|
print-time yes;
|
||||||
};
|
};
|
||||||
category queries { querylog; };
|
category queries { querylog; };
|
||||||
|
|
@ -89,10 +103,12 @@ logging {
|
||||||
{% for log in named_other_logs %}
|
{% for log in named_other_logs %}
|
||||||
channel {{ log.name }} {
|
channel {{ log.name }} {
|
||||||
file "{{ log.file }}" versions {{ log.versions }} size {{ log.size }};
|
file "{{ log.file }}" versions {{ log.versions }} size {{ log.size }};
|
||||||
severity dynamic;
|
severity debug 1;
|
||||||
print-time yes;
|
print-time yes;
|
||||||
};
|
};
|
||||||
|
|
||||||
category "{{ log.name }}" { "{{ log.name }}"; };
|
category "{{ log.name }}" { "{{ log.name }}"; };
|
||||||
|
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
};
|
};
|
||||||
|
|
@ -133,7 +149,7 @@ zone "{{ named_zone.name }}" IN {
|
||||||
also-notify { {{ named_zone.also_notify|join('; ') }}; };
|
also-notify { {{ named_zone.also_notify|join('; ') }}; };
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if named_zone.allow_update is defined %}
|
{% if named_zone.allow_update is defined %}
|
||||||
allow-update { {{ named_zone.allow_update|join('; ') }}; };
|
allow-update { {{ named_zone.allow_update|join('; ') }} };
|
||||||
{% else %}
|
{% else %}
|
||||||
allow-update { none; };
|
allow-update { none; };
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
@ -156,7 +172,7 @@ zone "{{ named_zone.name }}" IN {
|
||||||
also-notify { {{ named_zone.also_notify|join('; ') }}; };
|
also-notify { {{ named_zone.also_notify|join('; ') }}; };
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if named_zone.certbot_key is defined %}
|
{% if named_zone.certbot_key is defined %}
|
||||||
update-policy { grant {{ named_zone.certbot_key }} zonesub TXT; };
|
update-policy { grant {{ named_zone.certbot_key }} name _acme-challenge.{{ named_zone.name }}. txt; };
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if named_zone.allow_update is defined %}
|
{% if named_zone.allow_update is defined %}
|
||||||
allow-update { {{ named_zone.allow_update|join('; ') }}; };
|
allow-update { {{ named_zone.allow_update|join('; ') }}; };
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue