这篇文章给大家聊聊关于打造个人Linux HTTP正向代理服务器,轻松实现HTTP/HTTPS代理,以及对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。
利用Nginx来搭建HTTP正向代理[网上别人的方案]
一开始纠结了很久,请求代理就是不产生数据。后来查了一下,发现一般情况下使用Nginx搭建代理,只支持http代理访问。如果你想让代理请求SSL,你需要用Nginx编译并安装ngx_http_proxy_connect_module模块。我又用宝塔面板尝试了一下,还是失败了。等待继续研究。这里简单介绍一下只支持http的代理建立操作。
材料:
ngx_http_proxy_connect_module 模块
https://github.com/chobits/ngx_http_proxy_connect_module
1.宝塔面板,Nginx已安装(我这里使用Nginx-1.16)
2、可以直接在Nginx配置中设置,也可以在站点配置中通过新建站点来设置(推荐,下图也是通过新建站点来设置),并设置IP地址和端口(这里还需要设置代理端口)。
22df31d9df862793c9e38053ef39bf13.png3,在server{ . }类中相应位置添加以下代码。
解析器114.114.114.114;
解析器超时5秒;
地点/{
proxy_pass $scheme://$host$request_uri;
proxy_set_header 主机$http_host;
proxy_buffers 256 4k;
proxy_max_temp_file_size 0;
proxy_connect_timeout 30;
proxy_cache_valid 200 302 10m;
proxy_cache_valid 301 1h;
proxy_cache_valid 任意1m;
}转载图4,该方法在面板的安全组中添加了端口释放。如果Nginx配置中设置了,则需要单独添加
使用squid搭建自己专属的http/https正向代理服务器
此方法比Nginx 正向代理慢
还有一个tinyproxy,但是用了之后稳定性不太稳定,所以我安装了下面的squid来使用。
tinyproxy的配置非常简单。如果您想添加帐号和密码验证,则需要1.10.0或以上版本。
1.安装Squid的Shell命令
yum install -y squid //apt安装squid
# 如果安装了centos,如果后面出现一些问题,可以尝试使用yum install -y squid-common或者squid-helper来安装。这两个之一是正确的,因为我没有犯任何错误,而且我不记得哪一个了。 2. 配置鱿鱼。
如果你知道命令语句,只需使用vim 编辑配置文件即可。
vim /etc/squid/squid.conf 不能直接拖出来编辑:【注意这个文件的权限只有root账号可读可写。如果拿出来的话建议修改一下权限】
因为我使用的是root账户,直接chmod 666 /etc/squid/squid.conf
然后拖出来编辑
3、配置端口,将所有地址的允许访问设置为允许(默认是拒绝,如果设置了用户密码验证,则保持默认拒绝)
# 允许访问所有地址。默认为拒绝。你需要主动改变这一点。
http_access 允许所有
# Squid通常监听3128端口
# 代理服务器端口
http_port 9999 "==此设置位于第1600 行,上下位置4,并启动代理。
服务squid start5,其他shell命令
两个命令都可用===》
# 启动
服务鱿鱼启动//systemctl 启动鱿鱼
停止
服务鱿鱼停止//systemctl 停止鱿鱼
# 重新启动
service squid restart //systemctl 重新启动squid
# 重新加载配置文件
服务鱿鱼重新加载//systemctl 重新加载鱿鱼
# 检查是否正在运行
service squid status //systemctl status 所有squid命令:{start|stop|status|reload|force-reload|restart|condrestart|try-restart|probe}
6、到这里,其实就已经完成了。如果您想设置用户密码验证,请继续。
、在http_access拒绝所有上面添加以下代码
请记住,您需要首先设置以下问题:在shell中输入以下内容后,将输出帐户密码:然后会多出一个文件/etc/squid/htpasswd
printf "帐户:$(openssl passwd -crypt "密码")n" | sudo tee -a /etc/squid/htpasswd 那么你可以在这里添加这些设置==》
auth_param 基本程序/usr/lib64/squid/basic_ncsa_auth /etc/squid/passwd
acl auth_user proxy_auth 必需
http_access allowed auth_user注意:上面第一句重启时可能会报错。如果报错可以修改为下面这句
auth_param 基本程序/usr/lib/squid/basic_ncsa_auth /etc/squid/passwd
image-20200805103330108.png 如果需要配置限制哪些IP访问,可以编辑一个/etc/squid/allowd_ips.txt,只需要写入可访问的外网IP即可,如图
image-20200805104641378.png 然后就写我上面评论的内容。我没写。为了方便复制,我写在下面。
acl allowed_ips src "/etc/squid/allowed_ips.txt"
http_access 允许allowed_ips
http_access Deny all
如果限制了IP 最后一定要紧接着加上http_access deny all这一句,因为我加了密码验证所以我上面删除掉了,也可以把deny改成allow
设置行数,可以参考左侧的行数定位编辑位置。
、设置高匿名,在文件末尾添加以下代码
image-20200805103449066.png#在文件末尾添加高隐藏配置,方便复制。
request_header_access X-Forwarded-For 拒绝所有
request_header_access 来自拒绝所有
【打造个人Linux HTTP正向代理服务器,轻松实现HTTP/HTTPS代理】相关文章:
2.米颠拜石
3.王羲之临池学书
8.郑板桥轶事十则
用户评论
学习这个搭建正向代理的教程感觉很有用!
有18位网友表示赞同!
平时网速慢的时候,想试试这玩意能不能提高一下速度~
有9位网友表示赞同!
自己建个代理服务器还能防点流量限制吗?
有13位网友表示赞同!
linux配置的东西比较复杂啊,有点担心我操作不当会弄坏系统。
有16位网友表示赞同!
最近在研究网络安全,搭建代理看起来是个不错的实践项目。
有11位网友表示赞同!
不知道这玩意会不会占用CPU资源太多?我的电脑不太强悍的
有10位网友表示赞同!
我想学习一下代理服务器的工作原理,这篇文章应该能给我一些帮助吧!
有19位网友表示赞同!
我之前用过商业的代理服务,自己搭建成本估计会低很多~
有11位网友表示赞同!
听说可以用nginx搭建,那要怎么配置具体来着?
有18位网友表示赞同!
能不能用这个来代理手游的网络请求啊?
有8位网友表示赞同!
这篇文章的评论区肯定很热闹吧!大家分享自己搭建经验的地方?
有15位网友表示赞同!
我的网络环境比较特殊,会不会影响搭建呢?
有20位网友表示赞同!
我已经准备好了Linux系统,就开始动手学习了!
有14位网友表示赞同!
最近在网上看到好多关于代理服务器的知识了,这个文章看起来很不错的样子。
有14位网友表示赞同!
我一直在想学习一些网络编程的知识,这篇文章正好可以给我一些方向。
有10位网友表示赞同!
搭建好以后可以用什么工具测试呢?
有18位网友表示赞同!
我的路由器配置比较简单,有没有必要单独搭建代理服务器?
有13位网友表示赞同!
希望这篇教程写的详细易懂,能让我一步步跟着上手!
有19位网友表示赞同!
我已经有了初步的了解,感觉这篇文章可以帮我进一步深入学习。
有10位网友表示赞同!