时刻网

白皮书

办公OA系统访问安全部署方案

网络安全

1.安装并配置BIND DNS服务

yum install bind bind-utils -y #安装BIND9

2.修改options段,允许外部查询并监听所有IPv4地址:

vim /etc/named.conf # 编辑BIND核心文件

找到对应的每个值,修改为下面的参数:

listen-on port 53 { any; };
allow-query { any; };
#禁用DNSSEC验证(避免解析问题):
dnssec-enable no;
dnssec-validation no;

3.添加vtime.cn正向区域:

vim /etc/named.rfc1912.zones # 添加vtime.cn正向区域
zone "vtime.cn" IN {
    type master;
    file "vtime.cn.zone";
    allow-update { none; };
};

4.创建区域文件

vim /var/named/vtime.cn.zone # 创建区域文件 内容如下:(记得修改其中的IP地址)
$TTL 600  ; 10分钟
@       IN SOA  ns1.vtime.cn. admin.vtime.cn. (
                2024010101  ; 序列号(每次修改需递增)
                3H          ; 刷新时间
                15M         ; 重试时间
                1W          ; 过期时间
                1D )        ; 最小TTL
        IN NS   ns1.vtime.cn.  ; 必须有一个NS记录
        IN A    172.21.64.9    ; 根域名解析到IP
ns1     IN A    172.21.64.9    ; 名称服务器IP
www     IN A    172.21.64.9    ; 可选:www子域名

以下是一些BIND服务的辅助命令。(供参考)

sudo chown root:named /var/named/vtime.cn.zone # 设置域用户
sudo chmod 640 /var/named/vtime.cn.zone # 设置域权限
named-checkzone vtime.cn /var/named/vtime.cn.zone # 验证域配置
sudo named-checkconf # 使用named-checkconf命令检查主配置文件语法
sudo systemctl enable named # BIND开自启
sudo systemctl start named # 启动BIND
sudo netstat -an | grep :53 # 检查BIND端口监听情况
sudo systemctl restart named # 重启BIND
systemctl status named  # 确认状态为active (running)

5.防火墙开放DNS(53/UDP)和HTTP(80/TCP)端口:

firewall-cmd --permanent --add-service={http,https}
firewall-cmd --permanent --add-port={53/udp,53/tcp}
firewall-cmd --reload

6.部署Web服务并验证

yum install httpd -y # 安装apache引擎
systemctl enable httpd # 开自启
systemctl start httpd # 启动

7.如果遇到错误

问题 1:服务启动失败 错误示例:

Job for named.service failed because the control process exited with error code.

查看日志

sudo journalctl -xe -u named  # systemd 日志
sudo tail -f /var/log/messages  # 或 /var/log/syslog(Ubuntu)

即可根据输入以上命令后,系统所输出的错误日志,进行不同文件的修正。

8.最后根据不同的操作系统来测试不同域名解析情况

linux
dig @localhost vtime.cn # 测试根域名
dig @127.0.0.1 vtime.cn  # 测试根域名
dig @127.0.0.1 www.vtime.cn  # 测试子域名
windows
nslookup vtime.cn 127.0.0.1
#或
nslookup vtime.cn

================================

这里是代理服务器部分,安装的步骤请参阅官方的相关文档,在此略过。以下为已经安装好openvpn的系统中所做的修改。

vim /etc/openvpn/server/server.conf # 修改客户端所使用的DNS地址

找到类似字段后,把相应的IP改为当前内网/公网的IP(我这里选用内网IP)

push "dhcp-option DNS 100.100.2.136"
push "dhcp-option DNS 100.100.2.138"
sudo systemctl restart openvpn-server@server.service #重启openvpn

================================

这里是服务器系统DNS部分(可选),临时修改和测试使用,不推荐此修改方法。

vim /etc/resolv.conf # 临时编辑DNS服务地址
nameserver 100.100.2.136
nameserver 100.100.2.138

以上方案适用于服务器系统CentOS 7.8,通过以上的源命令部署后,就可以实现客户端通过虚拟隧道连接到远程服务器后,打开并访问 vtime.cn 以及 www.vtime.cn 办公OA系统的加密访问,即使这两个域名不用HTTPS,也可以做到数据的交换安全。

雁过留声


评论列表: 表情

  • [2025-11-09 17:19] Lm冰彬: 太专业看不懂