-
在连接apache,ssh,mysql等服务器时,如果出现连接过慢,可能的原因是dns的反向查询(通过ip查找域名)。
-
反向解析用来屏蔽非法的ip访问请求,是防止假冒的IP连接服务器,把IP解析成域名,来提高安全性,看这个IP是否是伪造,这是dns反向查询的功能之一。常见于邮件屏蔽系统,而apache,ssh,mysql等服务端程序也会默认携带。
-
例如:邮件头包含域名和邮箱服务器的ip地址,一般邮件系统会检测发送来的域名是否合法(比如比对黑白名单),如果合法则接受该邮件,不合法则丢弃;对于自架邮件系统专门发送垃圾邮件的人,为了能逃避目标邮件系统的审核,此时可以通过将自己的邮件头域名篡改为常用的如Gmail邮件域名来逃脱检查。
-
大量动态ip的非法请求催生了DNS反向解析技术的发展。
-
如果在开启apache,ssh,mysql 等服务器的反向解析功能之后,连接过慢的话。有二种解决方法:
-
把服务的DNS反向解析功能关掉。
-
架建自己的DNS解析或更改hosts文件。
关闭DNS的反向解析
- ssh服务中的反向解析同样也是为了通过审查请求来的ip和其ip存放在dns服务器上面的域名是否能对应起来,来提高安全性。
- 但由于反向解析的存在,每个ip请求都会消耗一定的时间来审查其合法性,对于局域网内服务器群,不直接连接外网的服务器或者已知访问的ip都是合法的地址等情况,其审查先的多余其长时间的查询会极大的影响ssh连接速度。
- 关闭dns反向解析后,就不能阻止伪造IP登陆。
步骤如下:
步骤如下:
1.取消sshd服务的dns反向解析,vim /etc/ssh/sshd_config
2.找到选项UseDNS ,取消注释,改为UseDNS no
3.重启sshd服务systemctl restart sshd.service
架构DNS服务器,把服务器的域名添加进来
- 构建自己的DNS服务器。 因为记录需要dns解析,程序需要PTR反向解析,即IP到domain name的映射关系,已验证这个IP是否是合法的IP。
两种方法: - 把常用的IP地址写入
/etc/hosts
文件,然后在/etc/nsswitch.conf
看看程序是否先查询/etc/hosts
文件(一般缺省是这样)。 - 起一台dns服务器(可以是本机),加入反向解析,把这个dns服务器加入到
/etc/resolv.conf
中。
作者:Dave
来源:优快云
原文:https://blog.youkuaiyun.com/tianlesoftware/article/details/6103857