setup bind config files in ns.xai-corp.net role
This commit is contained in:
@@ -2,7 +2,10 @@
|
|||||||
# playbook to install django test on home.xai-corp.net
|
# playbook to install django test on home.xai-corp.net
|
||||||
|
|
||||||
- hosts: home
|
- hosts: home
|
||||||
remote_user: root
|
remote_user: anansibsible
|
||||||
|
gather_facts: no
|
||||||
|
become: true
|
||||||
|
|
||||||
roles:
|
roles:
|
||||||
- home.xai-corp.net
|
- home.xai-corp.net
|
||||||
|
- ns.xai-corp.net
|
||||||
|
|||||||
@@ -1,3 +1,5 @@
|
|||||||
---
|
---
|
||||||
# tasks/main.yml
|
# tasks/main.yml
|
||||||
# define tasks here
|
# define tasks here
|
||||||
|
|
||||||
|
- include: vhosts.yml
|
||||||
|
|||||||
15
roles/home.xai-corp.net/tasks/vhosts.yml
Normal file
15
roles/home.xai-corp.net/tasks/vhosts.yml
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
---
|
||||||
|
#
|
||||||
|
# setup the vhosts for apache based websites
|
||||||
|
|
||||||
|
|
||||||
|
- name: fetch existing vhosts
|
||||||
|
fetch: src=/etc/apache2/vhost-available/{{ item }} dest=backups/
|
||||||
|
with_items:
|
||||||
|
- 00_default_ssl_vhost.conf
|
||||||
|
- 00_default_vhost.conf
|
||||||
|
- 01_home_vhost.conf
|
||||||
|
- 02_test_vhost.conf
|
||||||
|
- 04_sql_vhost.conf
|
||||||
|
- 05_mail_vhost.conf
|
||||||
|
- default_vhost.include
|
||||||
11
roles/ns.xai-corp.net/defaults/main.yml
Normal file
11
roles/ns.xai-corp.net/defaults/main.yml
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
---
|
||||||
|
# defaults/main.yml
|
||||||
|
# define default variable values here
|
||||||
|
|
||||||
|
bind:
|
||||||
|
zonefiles:
|
||||||
|
- xai-corp.net.internal
|
||||||
|
- localhost.zone
|
||||||
|
- xai-corp.net.external
|
||||||
|
- xai-corp.net.reverse
|
||||||
|
|
||||||
12
roles/ns.xai-corp.net/handlers/main.yml
Normal file
12
roles/ns.xai-corp.net/handlers/main.yml
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
---
|
||||||
|
# handlers/main.yml
|
||||||
|
# define handlers here
|
||||||
|
|
||||||
|
#- name: restart <service>
|
||||||
|
# service: name=<service> state=restarted
|
||||||
|
|
||||||
|
#- name: stop <service>
|
||||||
|
# service: name=<service> state=stopped
|
||||||
|
|
||||||
|
- name: restart bind
|
||||||
|
service: name=named state=restarted
|
||||||
8
roles/ns.xai-corp.net/meta/main.yml
Normal file
8
roles/ns.xai-corp.net/meta/main.yml
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
---
|
||||||
|
# meta/main.yml
|
||||||
|
# define dependancies here
|
||||||
|
|
||||||
|
# dependencies:
|
||||||
|
# - { role: geerlingguy.java }
|
||||||
|
|
||||||
|
dependencies: []
|
||||||
23
roles/ns.xai-corp.net/tasks/main.yml
Normal file
23
roles/ns.xai-corp.net/tasks/main.yml
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
---
|
||||||
|
# tasks/main.yml
|
||||||
|
# define tasks here
|
||||||
|
|
||||||
|
- name: set correct permissions on dirs
|
||||||
|
file: state=directory path=/var/bind/{{ item }} owner=root group=named mode=0770
|
||||||
|
with_items:
|
||||||
|
- pri
|
||||||
|
- sec
|
||||||
|
- dyn
|
||||||
|
notify:
|
||||||
|
- restart bind
|
||||||
|
|
||||||
|
- name: copy zone files to /var/bind/pri
|
||||||
|
template: src={{ item }}.j2 dest=/var/bind/pri/{{ item }} owner=root group=named mode=0750
|
||||||
|
with_items: "{{ bind.zonefiles }}"
|
||||||
|
notify:
|
||||||
|
- restart bind
|
||||||
|
|
||||||
|
- name: copy named.conf to /etc/bind/
|
||||||
|
template: src=named.conf.j2 dest=/etc/bind/named.conf owner=root group=named mode=0640
|
||||||
|
notify:
|
||||||
|
- restart bind
|
||||||
12
roles/ns.xai-corp.net/templates/localhost.zone.j2
Normal file
12
roles/ns.xai-corp.net/templates/localhost.zone.j2
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
$TTL 1W
|
||||||
|
@ IN SOA localhost. root.localhost. (
|
||||||
|
20150920 ; Serial
|
||||||
|
28800 ; Refresh
|
||||||
|
14400 ; Retry
|
||||||
|
604800 ; Expire - 1 week
|
||||||
|
86400 ) ; Minimum
|
||||||
|
@ IN NS localhost.
|
||||||
|
@ IN A 127.0.0.1
|
||||||
|
|
||||||
|
@ IN AAAA ::1
|
||||||
|
|
||||||
205
roles/ns.xai-corp.net/templates/named.conf.j2
Normal file
205
roles/ns.xai-corp.net/templates/named.conf.j2
Normal file
@@ -0,0 +1,205 @@
|
|||||||
|
/*
|
||||||
|
* Refer to the named.conf(5) and named(8) man pages, and the documentation
|
||||||
|
* in /usr/share/doc/bind-9 for more details.
|
||||||
|
* Online versions of the documentation can be found here:
|
||||||
|
* http://www.isc.org/software/bind/documentation
|
||||||
|
*
|
||||||
|
* If you are going to set up an authoritative server, make sure you
|
||||||
|
* understand the hairy details of how DNS works. Even with simple mistakes,
|
||||||
|
* you can break connectivity for affected parties, or cause huge amounts of
|
||||||
|
* useless Internet traffic.
|
||||||
|
*/
|
||||||
|
|
||||||
|
acl "xfer" {
|
||||||
|
/* Deny transfers by default except for the listed hosts.
|
||||||
|
* If we have other name servers, place them here.
|
||||||
|
*/
|
||||||
|
none;
|
||||||
|
};
|
||||||
|
|
||||||
|
/*
|
||||||
|
* You might put in here some ips which are allowed to use the cache or
|
||||||
|
* recursive queries
|
||||||
|
*/
|
||||||
|
acl "trusted" {
|
||||||
|
127.0.0.0/8;
|
||||||
|
192.168.2.0/24;
|
||||||
|
::1/128;
|
||||||
|
};
|
||||||
|
|
||||||
|
options {
|
||||||
|
directory "/var/bind";
|
||||||
|
pid-file "/var/run/named/named.pid";
|
||||||
|
|
||||||
|
/* https://www.isc.org/solutions/dlv >=bind-9.7.x only */
|
||||||
|
//bindkeys-file "/etc/bind/bind.keys";
|
||||||
|
|
||||||
|
/*listen-on-v6 { ::1; };*/
|
||||||
|
listen-on { 127.0.0.1; 192.168.2.12; };
|
||||||
|
|
||||||
|
allow-query {
|
||||||
|
/*
|
||||||
|
* Accept queries from our "trusted" ACL. We will
|
||||||
|
* allow anyone to query our master zones below.
|
||||||
|
* This prevents us from becoming a free DNS server
|
||||||
|
* to the masses.
|
||||||
|
*/
|
||||||
|
trusted;
|
||||||
|
};
|
||||||
|
|
||||||
|
allow-query-cache {
|
||||||
|
/* Use the cache for the "trusted" ACL. */
|
||||||
|
trusted;
|
||||||
|
};
|
||||||
|
|
||||||
|
// allow-recursion {
|
||||||
|
// /* Only trusted addresses are allowed to use recursion. */
|
||||||
|
// trusted;
|
||||||
|
// };
|
||||||
|
|
||||||
|
allow-transfer {
|
||||||
|
/* Zone tranfers are denied by default. */
|
||||||
|
none;
|
||||||
|
};
|
||||||
|
|
||||||
|
allow-update {
|
||||||
|
/* Don't allow updates, e.g. via nsupdate. */
|
||||||
|
none;
|
||||||
|
};
|
||||||
|
|
||||||
|
/*
|
||||||
|
* If you've got a DNS server around at your upstream provider, enter its
|
||||||
|
* IP address here, and enable the line below. This will make you benefit
|
||||||
|
* from its cache, thus reduce overall DNS traffic in the Internet.
|
||||||
|
*
|
||||||
|
* Uncomment the following lines to turn on DNS forwarding, and change
|
||||||
|
* and/or update the forwarding ip address(es):
|
||||||
|
*/
|
||||||
|
|
||||||
|
forward first;
|
||||||
|
forwarders {
|
||||||
|
// 207.164.234.129; // Your ISP NS
|
||||||
|
// 207.164.234.193; // Your ISP NS
|
||||||
|
// 4.2.2.1; // Level3 Public DNS
|
||||||
|
// 4.2.2.2; // Level3 Public DNS
|
||||||
|
8.8.8.8; // Google Open DNS
|
||||||
|
8.8.4.4; // Google Open DNS
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//dnssec-enable yes;
|
||||||
|
//dnssec-validation yes;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* As of bind 9.8.0:
|
||||||
|
* "If the root key provided has expired,
|
||||||
|
* named will log the expiration and validation will not work."
|
||||||
|
*/
|
||||||
|
//dnssec-validation auto;
|
||||||
|
|
||||||
|
/* if you have problems and are behind a firewall: */
|
||||||
|
//query-source address * port 53;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
logging {
|
||||||
|
channel default_log {
|
||||||
|
file "/var/log/named/named.log" versions 3 size 5M;
|
||||||
|
severity notice;
|
||||||
|
print-time yes;
|
||||||
|
print-severity yes;
|
||||||
|
print-category yes;
|
||||||
|
};
|
||||||
|
|
||||||
|
category default { default_log; };
|
||||||
|
category general { default_log; };
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
include "/etc/bind/rndc.key";
|
||||||
|
controls {
|
||||||
|
inet 127.0.0.1 port 953 allow { 127.0.0.1/24; ::1/128; } keys { "rndc-key"; };
|
||||||
|
};
|
||||||
|
|
||||||
|
view "internal" {
|
||||||
|
match-clients { 192.168.2.12; localhost; 192.168.2.0/24; };
|
||||||
|
recursion yes;
|
||||||
|
|
||||||
|
zone "." in {
|
||||||
|
type hint;
|
||||||
|
file "/var/bind/named.cache";
|
||||||
|
};
|
||||||
|
|
||||||
|
zone "localhost" IN {
|
||||||
|
type master;
|
||||||
|
file "pri/localhost.zone";
|
||||||
|
notify no;
|
||||||
|
};
|
||||||
|
|
||||||
|
zone "127.in-addr.arpa" IN {
|
||||||
|
type master;
|
||||||
|
file "pri/localhost.zone";
|
||||||
|
notify no;
|
||||||
|
};
|
||||||
|
|
||||||
|
zone "xai-corp.net." IN {
|
||||||
|
type master;
|
||||||
|
file "pri/xai-corp.net.internal";
|
||||||
|
allow-transfer { none; };
|
||||||
|
};
|
||||||
|
|
||||||
|
zone "2.168.192.in-addr.arpa." IN {
|
||||||
|
type master;
|
||||||
|
file "pri/xai-corp.net.reverse";
|
||||||
|
allow-update { none; };
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
view "external" {
|
||||||
|
match-clients { none; };
|
||||||
|
recursion no;
|
||||||
|
|
||||||
|
|
||||||
|
// zone "xai-corp.net" {
|
||||||
|
// type master;
|
||||||
|
// file "pri/xai-corp.net.external";
|
||||||
|
// allow-query { none; };
|
||||||
|
// allow-transfer { 127.0.0.1; };
|
||||||
|
// };
|
||||||
|
};
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Briefly, a zone which has been declared delegation-only will be effectively
|
||||||
|
* limited to containing NS RRs for subdomains, but no actual data beyond its
|
||||||
|
* own apex (for example, its SOA RR and apex NS RRset). This can be used to
|
||||||
|
* filter out "wildcard" or "synthesized" data from NAT boxes or from
|
||||||
|
* authoritative name servers whose undelegated (in-zone) data is of no
|
||||||
|
* interest.
|
||||||
|
* See http://www.isc.org/software/bind/delegation-only for more info
|
||||||
|
*/
|
||||||
|
|
||||||
|
//zone "COM" { type delegation-only; };
|
||||||
|
//zone "NET" { type delegation-only; };
|
||||||
|
|
||||||
|
//zone "YOUR-DOMAIN.TLD" {
|
||||||
|
// type master;
|
||||||
|
// file "/var/bind/pri/YOUR-DOMAIN.TLD.zone";
|
||||||
|
// allow-query { any; };
|
||||||
|
// allow-transfer { xfer; };
|
||||||
|
//};
|
||||||
|
|
||||||
|
//zone "YOUR-SLAVE.TLD" {
|
||||||
|
// type slave;
|
||||||
|
// file "/var/bind/sec/YOUR-SLAVE.TLD.zone";
|
||||||
|
// masters { <MASTER>; };
|
||||||
|
|
||||||
|
/* Anybody is allowed to query but transfer should be controlled by the master. */
|
||||||
|
// allow-query { any; };
|
||||||
|
// allow-transfer { none; };
|
||||||
|
|
||||||
|
/* The master should be the only one who notifies the slaves, shouldn't it? */
|
||||||
|
// allow-notify { <MASTER>; };
|
||||||
|
// notify no;
|
||||||
|
//};
|
||||||
17
roles/ns.xai-corp.net/templates/xai-corp.net.external.j2
Normal file
17
roles/ns.xai-corp.net/templates/xai-corp.net.external.j2
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
$ORIGIN xai-corp.net.
|
||||||
|
$TTL 2d
|
||||||
|
@ IN SOA ns.xai-corp.net. root.xai-corp.net. (
|
||||||
|
20150920;serial
|
||||||
|
3h ;refresh
|
||||||
|
1h ;retry
|
||||||
|
1w ;expiry
|
||||||
|
1d ) ;minimum
|
||||||
|
|
||||||
|
xai-corp.net. IN NS ns.xai-corp.net.
|
||||||
|
xai-corp.net. IN A 208.94.116.179
|
||||||
|
xai-corp.net. IN A 208.94.116.21
|
||||||
|
xai-corp.net. IN A 208.94.117.26
|
||||||
|
www.xai-corp.net. IN A 208.94.116.179
|
||||||
|
www.xai-corp.net. IN A 208.94.116.21
|
||||||
|
www.xai-corp.net. IN A 208.94.117.26
|
||||||
|
|
||||||
34
roles/ns.xai-corp.net/templates/xai-corp.net.internal.j2
Normal file
34
roles/ns.xai-corp.net/templates/xai-corp.net.internal.j2
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
$TTL 1D
|
||||||
|
@ IN SOA xai-corp.net. root.xai-corp.net. (
|
||||||
|
20150920; serial
|
||||||
|
3h ; refresh
|
||||||
|
1h ; retry
|
||||||
|
1w ; expiry
|
||||||
|
1d ) ; minimum
|
||||||
|
|
||||||
|
xai-corp.net. IN NS ns.xai-corp.net.
|
||||||
|
xai-corp.net. IN MX 0 mail.xai-corp.net.
|
||||||
|
xai-corp.net. IN TXT "v=spf1 ip4:192.168.2.12/32 mx ptr mx:mail.xai-corp.net ~all"
|
||||||
|
ns IN A 192.168.2.12
|
||||||
|
mail IN A 192.168.2.12
|
||||||
|
getafix IN CNAME ns
|
||||||
|
test IN CNAME ns
|
||||||
|
home IN CNAME ns
|
||||||
|
tunedb IN CNAME ns
|
||||||
|
sql IN CNAME ns
|
||||||
|
jenkins IN CNAME ns
|
||||||
|
cik IN CNAME ns
|
||||||
|
phonecat IN CNAME ns
|
||||||
|
blog IN CNAME ns
|
||||||
|
www IN A 208.94.116.179
|
||||||
|
IN A 208.94.116.21
|
||||||
|
IN A 208.94.117.26
|
||||||
|
gateway IN A 192.168.2.1
|
||||||
|
wireless IN A 192.168.2.3
|
||||||
|
printer IN A 192.168.2.13
|
||||||
|
scanner IN CNAME printer
|
||||||
|
laser IN A 192.168.2.14
|
||||||
|
tv IN A 192.168.2.16
|
||||||
|
xaicorp1 IN A 192.168.2.103
|
||||||
|
garden IN A 192.168.2.20
|
||||||
|
|
||||||
19
roles/ns.xai-corp.net/templates/xai-corp.net.reverse.j2
Normal file
19
roles/ns.xai-corp.net/templates/xai-corp.net.reverse.j2
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
$TTL 24h
|
||||||
|
$ORIGIN 2.168.192.IN-ADDR.ARPA.
|
||||||
|
@ IN SOA ns.xai-corp.net. root.xai-corp.net. (
|
||||||
|
20150920; serial
|
||||||
|
3h ; refresh
|
||||||
|
1h ; retry
|
||||||
|
1w ; expiry
|
||||||
|
1d ) ; minimum
|
||||||
|
|
||||||
|
@ IN NS ns.xai-corp.net.
|
||||||
|
|
||||||
|
1 IN PTR gateway.xai-corp.net.
|
||||||
|
3 IN PTR wireless.xai-corp.net.
|
||||||
|
13 IN PTR printer.xai-corp.net.
|
||||||
|
14 IN PTR laser.xai-corp.net.
|
||||||
|
16 IN PTR tv.xai-corp.net.
|
||||||
|
103 IN PTR xaicorp1.xai-corp.net.
|
||||||
|
12 IN PTR home.xai-corp.net.
|
||||||
|
|
||||||
10
roles/ns.xai-corp.net/vars/_extravars.yml
Normal file
10
roles/ns.xai-corp.net/vars/_extravars.yml
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
---
|
||||||
|
# vars/_extravars.yml
|
||||||
|
# define extra variable values here
|
||||||
|
# this file should be loaded via an include_vars statement in the task.
|
||||||
|
# often this is used for managing differences in os.
|
||||||
|
|
||||||
|
# Variable setup.
|
||||||
|
#- name: Include OS-Specific variables
|
||||||
|
# include_vars: "{{ ansible_os_family }}.yml"
|
||||||
|
|
||||||
@@ -77,6 +77,14 @@ DELIVER=/usr/libexec/dovecot/deliver
|
|||||||
* ^From.*news@linkedin.com
|
* ^From.*news@linkedin.com
|
||||||
| $DELIVER -m Newsletters
|
| $DELIVER -m Newsletters
|
||||||
|
|
||||||
|
:0:
|
||||||
|
* ^From.*aws-marketing-email-replies@amazon.com
|
||||||
|
| $DELIVER -m Newsletters
|
||||||
|
|
||||||
|
:0:
|
||||||
|
* ^From.*info@connectmusic.ca
|
||||||
|
| $DELIVER -m Newsletters
|
||||||
|
|
||||||
# --------------------------------------------------
|
# --------------------------------------------------
|
||||||
# Paypal receipts
|
# Paypal receipts
|
||||||
:0:
|
:0:
|
||||||
|
|||||||
Reference in New Issue
Block a user