前景
最近一直想搭建一个属于自己的网络出口,毕竟机场的这个公交车骑的人太多了,很多网站纷纷跳验证,属实麻烦,一直想自建一个私人机场来服务于自己,但是考虑到成本的因素,这个原先的方案就被放弃了,于是我就在出口打起了注意,预先我计划使用某些渠道提供的匿名http代理,但是奈何出口速度确实慢,有得也是真的黑,价格方面也是较贵的,稳定也是个问题,于是我就开始了我自建之路。
IP纯净度检测:Scamalytics
自建http节点,也就是说,出防火墙是采用机场,而落得是采用自己自建的节点,自建的节点是放置在自己低价采购的vps上,vps大不大无所谓,只要是大带宽就OK
教程
服务器是Debian的,先更新一下包列表
sudo apt update
拿下squid
sudo apt install squid
验证安装
squid -v
配置squid
sudo nano /etc/squid/squid.conf
Squid安装后默认设置为了拒绝所有服务器连接,只需要修改成所有服务器连接即可。
在文件里面修改(把其他的http_access用#注释掉):
http_access allow all
启动Squid服务
sudo systemctl start squid
使Squid在启动时自动运行
sudo systemctl enable squid
如何之前启动了,这次修改了文件就重启一下程序
sudo systemctl restart squid
你需要在防火墙里面放行:3128端口
之后你就可以通过http协议来连接这个台服务器了
嗯,速度还不错
当前IP地址查询:What Is My IP Address – See Your Public Address – IPv4 & IPv6
Ps:在搭建之后的使用过程中就被扫描的盯上了,原因是因为没有设置密码,直接裸奔,主要是自己使用的越来越卡了,
这边直接拉满带宽使用我服务器的流量,所以大家在搭建这种服务的时候请设置密码。
开始设置密码
提前安装apache2-utils
sudo apt-get install apache2-utils
判断版本
ab -V
添加密码验证
sudo htpasswd -cd /etc/squid/passwords squid
配置Squid文件
# vim /etc/squid/squid.conf
# And finally deny all other access to this proxy
auth_param basic program /usr/lib64/squid/basic_ncsa_auth /etc/squid3/passwords #账户密码文件
auth_param basic realm proxy
auth_param basic children 50 #最多 50 个账户同时运行
auth_param basic realm CoolTube Proxy Server #密码框描述
auth_param basic credentialsttl 2 hours #认证持续时间
acl authenticated proxy_auth REQUIRED #对 authenticated 进行外部认证
http_access allow authenticated #允许 authenticated 中的成员访问
http_access deny all #拒绝所有其他访问
visible_hostname squid.CoolTube #代理机名字
重启服务
[root@Q1nghuan ~]# squid -z
2021/12/02 21:05:35| Squid is already running! Process ID 29413
[root@Q1nghuan ~]# systemctl restart squid.service
[root@Q1nghuan ~]# systemctl status squid
● squid.service - Squid caching proxy
Loaded: loaded (/usr/lib/systemd/system/squid.service; enabled; vendor preset: disabled)
Active: active (running) since Thu 2021-12-02 21:05:46 CST; 22s ago
Process: 26752 ExecStop=/usr/sbin/squid -k shutdown -f $SQUID_CONF (code=exited, status=0/SUCCESS)
Process: 26761 ExecStart=/usr/sbin/squid $SQUID_OPTS -f $SQUID_CONF (code=exited, status=0/SUCCESS)
Process: 26754 ExecStartPre=/usr/libexec/squid/cache_swap.sh (code=exited, status=0/SUCCESS)
Main PID: 26763 (squid)
CGroup: /system.slice/squid.service
├─26763 /usr/sbin/squid -f /etc/squid/squid.conf
├─26765 (squid-1) -f /etc/squid/squid.conf
└─26766 (logfile-daemon) /var/log/squid/access.log
Dec 02 21:05:46 Q1nghuan systemd[1]: Starting Squid caching proxy...
Dec 02 21:05:46 Q1nghuan squid[26763]: Squid Parent: will start 1 kids
Dec 02 21:05:46 Q1nghuan squid[26763]: Squid Parent: (squid-1) process 26765 started
Dec 02 21:05:46 Q1nghuan systemd[1]: Started Squid caching proxy.
参考资料:使用Squid搭建HTTP代理服务器 | Bu1’Blog
注意:在参考资料里面开启服务器网卡的数据转发功能这个步骤在Debian里面多余,无需操作
不过我认为在参考资料里面比较具有参考价值的是开启账号和密码,以防其他人来蹭你的节点