@@ -29,6 +29,7 @@ function setup() {
2929 source /tmp/hestia-test-env.sh
3030 source $HESTIA /func/main.sh
3131 source $HESTIA /conf/hestia.conf
32+ source $HESTIA /func/ip.sh
3233}
3334
3435function validate_web_domain() {
@@ -81,6 +82,54 @@ function validate_web_domain() {
8182 refute_output
8283}
8384
85+ @test " Check reverse Dns validation" {
86+ skip
87+
88+ # 1. PTR record for a IP should return a hostname(reverse) which in turn must resolve to the same IP addr(forward). (Full circle)
89+ # 2. Reject rPTR records that match generic dynamic IP pool patterns
90+
91+ local ip=" 54.200.1.22"
92+ local rdns=" ec2-54-200-1-22.us-west-2.compute.amazonaws.com"
93+ run is_ip_rdns_valid " $ip " " $rdns "
94+ assert_failure
95+ refute_output
96+
97+ local rdns=" ec2.54.200.1.22.us-west-2.compute.amazonaws.com"
98+ run is_ip_rdns_valid " $ip " " $rdns "
99+ assert_failure
100+ refute_output
101+
102+ local rdns=" ec2-22-1-200-54.us-west-2.compute.amazonaws.com"
103+ run is_ip_rdns_valid " $ip " " $rdns "
104+ assert_failure
105+ refute_output
106+
107+ local rdns=" ec2.22.1.200.54.us-west-2.compute.amazonaws.com"
108+ run is_ip_rdns_valid " $ip " " $rdns "
109+ assert_failure
110+ refute_output
111+
112+ local rdns=" ec2-200-54-1-22.us-west-2.compute.amazonaws.com"
113+ run is_ip_rdns_valid " $ip " " $rdns "
114+ assert_failure
115+ refute_output
116+
117+ local rdns=" panel-22.mydomain.tld"
118+ run is_ip_rdns_valid " $ip " " $rdns "
119+ assert_success
120+ assert_output " $rdns "
121+
122+ local rdns=" mail.mydomain.tld"
123+ run is_ip_rdns_valid " $ip " " $rdns "
124+ assert_success
125+ assert_output " $rdns "
126+
127+ local rdns=" mydomain.tld"
128+ run is_ip_rdns_valid " $ip " " $rdns "
129+ assert_success
130+ assert_output " $rdns "
131+
132+ }
84133
85134# ----------------------------------------------------------#
86135# User #
0 commit comments