温馨提示×

centos如何隐藏域名

小樊
43
2026-10-05 17:37:19
栏目: 云计算

在 CentOS(以及大多数 Linux 系统)里,“隐藏域名”通常有几种不同含义,下面按常见场景分别说明,你可以对号入座。


一、隐藏服务器真实域名(对外只显示 IP 或别名)

1. 不配置公网 DNS(最简单)

  • 不给服务器域名做 A / CNAME 解析
  • 外部只能通过 IP 访问
  • 域名本身“不存在于公网”

✅ 适合:内部服务器、测试环境


2. 使用反向代理隐藏真实域名(推荐)

例如:

  • 真实服务:real.example.com
  • 对外域名:www.example.com

Nginx 示例

server {
    listen 80;
    server_name www.example.com;

    location / {
        proxy_pass http://real.example.com;
        proxy_set_header Host real.example.com;
    }
}

外部只看到 www.example.com,不知道后端域名。


二、隐藏 HTTP 响应中的域名(防止信息泄露)

1. 隐藏 Nginx / Apache 版本和域名

server_tokens off;

2. 隐藏 Location 中的内部域名

proxy_redirect http://real.example.com/ /;

三、隐藏本机 hostname(本地域名)

查看当前主机名

hostname

修改主机名(CentOS 7+)

hostnamectl set-hostname localhost

防止 hostname 泄露

编辑:

vi /etc/hosts

避免写真实业务域名,例如:

127.0.0.1   localhost

四、隐藏 SSH / 服务 banner 中的域名

SSH

vi /etc/ssh/sshd_config
DebianBanner no

重启:

systemctl restart sshd

五、隐藏邮件服务中的域名(Postfix 等)

myhostname = mail.localhost

六、如果你是指“隐藏访问日志里的域名”

可只记录 IP:

log_format main '$remote_addr - $request';

七、如果你是指“隐藏 CentOS 系统域名不被扫描到”

  • 不开放 53 端口
  • 不配置公网 DNS
  • 防火墙限制访问
firewall-cmd --add-service=dns --permanent
firewall-cmd --reload

总结一句话

对外隐藏域名 = 不解析 DNS + 反向代理 + 修改 banner + 清理 hosts

如果你能具体说:

  • 是 Web 服务 / SSH / 邮件 / 内网?
  • 是 对外隐藏 还是 本机隐藏?

我可以给你更精确的 CentOS 配置示例。

0 踩