394 字
2 分钟
使用Linux搭建proxy和dns服务器进行测试
2025-06-16

如何使用coreDNSSquid搭建一个自托管的代理服务器。

使用Squid搭建http proxy#

安装Squid#

Terminal window
# Ubuntu/Debian
sudo apt update && sudo apt install squid apache2-utils
# CentOS/RHEL
sudo yum install squid httpd-tools

配置Squid#

准备认证的用户#

Terminal window
sudo touch /etc/squid/passwds
sudo htpasswd -c /etc/squid/passwds username # 按照提示设置密码

修改Squid配置文件#

创建/etc/squid/squid.conf文件,如果已经存在则编辑它。

Terminal window
sudo cp /etc/squid/squid.conf /etc/squid/squid-http.conf
sudo vim /etc/squid/squid-http.conf

编辑/etc/squid/squid.conf文件,添加以下配置:

http_port 3128
auth_param basic program /usr/lib/squid/basic_ncsa_auth /etc/squid/passwords
auth_param basic children 5
acl auth_users proxy_auth REQUIRED
http_access allow auth_users

开启防火墙#

Terminal window
# Ubuntu/Debian
sudo ufw allow 3128/tcp
sudo ufw reload
# CentOS/RHEL
sudo firewall-cmd --permanent --add-port=3128/tcp
sudo firewall-cmd --reload

启动Squid#

Terminal window
sudo squid -f /etc/squid/squid-http.conf

使用coreDNS搭建dns服务器#

下载coreDNS#

这里下载最新版本的coreDNS,并解压缩。

Terminal window
wget https://github.com/coredns/coredns/releases/latest/download/coredns_1.12.2_linux_arm.tgz
tar -zxvf coredns_1.12.2_linux_arm.tgz

配置coreDNS#

创建配置文件#

创建Corefile配置文件:

Terminal window
sudo vim Corefile

注意这里的ip要与需要测试的机器处于同一网络段。

Terminal window
.:53 {
hosts {
10.254.7.38 http-proxy.test
fallthrough
}
forward . 114.114.114.114
log
errors
}

开启防火墙#

Terminal window
# Ubuntu/Debian
sudo ufw allow 53/tcp
sudo ufw allow 53/udp
sudo ufw reload
# CentOS/RHEL
sudo firewall-cmd --permanent --add-port=53/tcp
sudo firewall-cmd --permanent --add-port=53/udp
sudo firewall-cmd --reload

启动coreDNS#

Terminal window
sudo ./coredns -conf Corefile

测试#

测试Squid代理#

使用任意软件测试,代理填好后,如果成功连接,代理的日志会有相应的输出。

测试coreDNS#

不设置DNS服务器#

可以使用使用nslookup命令进行测试:

Terminal window
nslookup http-proxy.test 10.254.7.38

设置DNS服务器#

在Windows或Linux上设置DNS服务器为10.254.7.38,然后使用nslookupdig命令测试解析。

Terminal window
nslookup http-proxy.test

如果配置正确,应该会返回10.254.7.38

使用Linux搭建proxy和dns服务器进行测试
https://blog.xiaobaizhang.top/posts/self-hosted-proxy/
作者
张小白
发布于
2025-06-16
许可协议
CC BY-NC-SA 4.0