squid代理服务配置


1、介绍

Squid是一个高性能的代理缓存服务器,Squid支持FTP、gopher、HTTPS和HTTP协议。和一般的代理缓存软件不同,Squid用一个单独的、非模块化的、I/O驱动的进程来处理所有的客户端请求。

2、安装

ubuntu:sudo apt install squid,版本4.1 centos:sudo yum install squid,版本4.9

3、配置

1、安装squid后,服务自动启动,查询squid服务

systemctl status squid

2、配置文件位置

主配置文件/etc/squid/squid.conf, 自定义配置文件, /etc/squid/conf.d/debian.conf

3、配置文件squid.conf说明(修改配置文件,重启服务)

设置端口和引用自定义配置文件
include /etc/squid/conf.d/*
http_port 3128
开启用户认证
#定义squid密码文件与ncsa_auth文件位置
auth_param basic program /usr/lib/squid/basic_ncsa_auth /etc/squid/passwd
#认证进程的数量
auth_param basic children 15
#认证对话框显示提示信息
auth_param basic realm Squid proxy-caching web server
#认证有效期
auth_param basic credentialsttl 2 hours
#是否区分用户名大小,off为不区分
auth_param basic casesensitive off
#对定义的ncsa_users文件内的用户开启认证访问
acl ncsa_users proxy_auth REQUIRED
#允许ncsa_users文件内用户进行代理
http_access allow ncsa_users
#顺序匹配,最后添加拒绝所有未允许的规则。不添加会发现,未匹配到的规则会被放行
http_access deny all
注:其中/usr/lib/squid/basic_ncsa_auth文件位置查询方式
root@pioneer:~# dpkg -L squid|grep ncsa
/usr/lib/squid/basic_ncsa_auth
/usr/share/man/man8/basic_ncsa_auth.8.gz
用户密码文件/etc/squid/passwd创建方式 htpasswd 参数 -c 创建密码文件,文件存在则覆盖。添加多个用户时不要添加参数-c -n 不更新密码文件,只将加密后的用户名密码显示在屏幕上; -m 默认采用MD5算法对密码进行加密 -d 采用CRYPT算法对密码进行加密 -s 采用SHA算法对密码进行加密 -p 不对密码进行进行加密,使用普通文本格式的密码 -b 命令行中一并输入用户名和密码而不是根据提示输入密码,可以看见明文,不需要交互 -D 删除指定的用户 htpasswd命令使用,ubuntu需要安装sudo apt install apache2-utils,centos需要安装sudo yum install httpd-tools
#创建用户gpysir
root@pioneer:~# htpasswd  /etc/squid/passwd gpysir
New password:
Re-type new password:
Adding password for user gpysir

4、演示

4.1、浏览器配置代理 以360浏览器为例   4.2、系统配置默认代理 临时生效,各类协议代理 export http_proxy=http://127.0.0.1:3128 export FTP_PROXY=http://127.0.0.1:3128 export ftp_proxy=http://127.0.0.1:3128 export all_proxy=socks://127.0.0.1:3128 export ALL_PROXY=socks://127.0.0.1:3128 export HTTPS_PROXY=http://127.0.0.1:3128 export https_proxy=http://127.0.0.1:3128 export HTTP_PROXY=http://127.0.0.1:3128 export no_proxy=localhost,127.0.0.1 取消临时代理,将=号后面内容置空,如 取消http代理:export http_proxy=   永久生效,编辑当前用户配置文件 vim ~/.bash_bashrc或者vim ~/profile 配置立即生效 输入命令 source ~/.bash_bashrc  

后记内容

1、用authentication helpers添加身份验证 有如下几种认证方式 : => NCSA: Uses an NCSA-style username and password file. => LDAP: Uses the Lightweight Directory Access Protocol => MSNT: Uses a Windows NT authentication domain. => PAM: Uses the Linux Pluggable Authentication Modules scheme. => SMB: Uses a SMB server like Windows NT or Samba. => getpwam: Uses the old-fashioned Unix password file. => SASL: Uses SALS libraries. => NTLM, Negotiate and Digest authentication