主页 > 互联网  > 

【Centos】在CentOS上搭建Squid代理服务器详解

【Centos】在CentOS上搭建Squid代理服务器详解
在CentOS上搭建Squid代理服务器详解 一、安装

首先,通过yum包管理工具安装Squid代理服务器和httpd-tools(用于生成密码文件):

yum install squid -y yum install httpd-tools -y 二、生成密码文件

创建用于存储用户认证信息的目录:

mkdir /etc/squid_user/

使用htpasswd命令生成密码文件,例如,为用户名linjiusheng设置密码:

htpasswd -cd /etc/squid_user/passwords linjiusheng

输入密码时,注意密码不要超过8位。

三、测试密码文件

使用basic_ncsa_auth工具测试密码文件,输入用户名和密码进行验证:

/usr/lib64/squid/basic_ncsa_auth /etc/squid_user/passwords

输入用户名和密码(例如linjiusheng szpython),如果提示OK,说明验证成功。按ctrl + c打断测试。

四、配置Squid

编辑Squid的配置文件:

vim /etc/squid/squid.conf

在文件末尾添加以下内容:

auth_param basic program /usr/lib64/squid/basic_ncsa_auth /etc/squid_user/passwords auth_param basic realm proxy acl authenticated proxy_auth REQUIRED http_access allow authenticated 五、启动服务

启动Squid服务:

systemctl start squid.service

停止服务:

systemctl stop squid.service

重启服务:

systemctl restart squid.service 六、删除用户

如果需要删除用户,可以编辑密码文件:

vim /etc/squid_user/passwords 七、日志

Squid的日志默认位于/var/log/squid/目录下。

八、测试代码

使用以下Python代码测试配置的Squid代理服务器:

import requests # 代理服务器的地址和端口 proxy_url = "http://your_proxy_server_ip:3128" # 代理服务器的用户名和密码 proxy_username = "your_username" proxy_password = "your_password" # 目标网站的URL target_url = "http:// .example " # 构建代理配置 proxy_config = { "http": proxy_url, "https": proxy_url, } # 构建包含身份验证信息的HTTP代理头 proxy_auth = requests.auth.HTTPProxyAuth(proxy_username, proxy_password) # 发送带有代理配置和身份验证的请求 try: response = requests.get(target_url, proxies=proxy_config, auth=proxy_auth) if response.status_code == 200: print("请求成功!") print(response.text) else: print(f"请求失败,状态码:{response.status_code}") except requests.exceptions.RequestException as e: print(f"发生异常:{e}")

替换your_proxy_server_ip、your_username和your_password为你的代理服务器IP、用户名和密码。这个代码段演示了如何使用Python的requests库发送通过Squid代理的HTTP请求。

九、如果通过Squid代理访问提示403 Forbidden vim /etc/squid/squid.conf http_access deny all 修改为 http_access allow all

然后重新启动squid

标签:

【Centos】在CentOS上搭建Squid代理服务器详解由讯客互联互联网栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“【Centos】在CentOS上搭建Squid代理服务器详解