我正在运行自己的 DNS,并记录所有 DNS 查询。今天,我发现日志中有超过 200 条不需要的子域查询条目。
有趣的是,这些不存在的子域可能是敏感区域。另一个问题是这些条目在 access.log 或 error.log 中都不存在。
我有点担心这些都是黑客攻击。
我有 3 个问题:
- 我如何将这些不存在的子域查询添加到 error.log?
- 有没有什么 Ubuntu 软件包可以阻止这种黑客攻击?
- 我还有哪些其他选择?
DNS 查询日志示例:
15-Dec-2011 01:12:41.726 queries: info: client 169.152.96.22#42014: query: adminarea.site.com IN A -ED (174.227.21.23)
答案1
当您谈到access.log
和时error.log
,我假设您谈论的是 HTTP 服务器日志。
要发出 HTTP 请求,过程大致如下(大大简化):
- 客户端发出 DNS 请求,将 URL 中的主机名映射到 IP 地址。
- 客户端与给定 IP 地址的 Web 服务器建立 TCP 连接。
- 服务器发回所请求的页面。
如果您没有在 HTTP 服务器日志中看到任何活动,则意味着 (a) 第一步失败,DNS 服务器返回“没有此域”的响应,或者 (b) 客户端正在查找主机名以用于其他目的(例如电子邮件、ftp 等)。
如果您正在运行公共网站,那么您只需要处理随机人员探测您域中的主机名的问题。只要您不依赖模糊的主机名作为安全保障,这应该不是什么大问题。