标准正向代理

aiofo2022-08-15  150

Squid服务程序软件包在正确安装并启动后,默认就已经可以为用户提供标准正向代理模式服务了,而不再需要单独修改配置文件或者进行其他操作。接下来在运行Windows 7系统的客户端上面打开任意一款浏览器,然后单击“Internet选项”命令,如图16-4所示。

[root@linuxprobe ~]# systemctl restart squid [root@linuxprobe ~]# systemctl enable squid ln -s '/usr/lib/systemd/system/squid.service' '/etc/systemd/system/multi-user.target.wants/squid.service'

图16-4 单击浏览器中的“Internet选项”命令

要想使用Squid服务程序提供的标准正向代理模式服务,就必须在浏览器中填写服务器的IP地址以及端口号信息。因此还需要在“连接”选项卡下单击“局域网设置”按钮(见图16-5),并按照图16-6所示填写代理服务器的信息,然后保存并退出配置向导。

图16-5 在“连接”选项卡中单击“局域网设置”按钮

图16-6 填写代理服务器的IP地址与端口号

现在,用户可以使用Squid服务程序提供的代理服务了。托代理服务器转发的福,网卡被设置为仅主机模式(Hostonly)的虚拟机也能奇迹般地上网浏览了。

 

如此公开而没有密码验证的代理服务终归让人觉得不放心,万一有人也来“蹭网”该怎么办呢?Squid服务程序默认使用3128、3401与4827等端口号,因此可以把默认使用的端口号修改为其他值,以便起到一定的保护作用。现在大家应该都知道,在Linux系统配置服务程序其实就是修改该服务的配置文件,因此直接在/etc目录下的Squid服务程序同名目录中找到配置文件,把http_port参数后面原有的3128修改为10000,即把Squid服务程序的代理服务端口修改成了新值。最后一定不要忘记重启服务程序。

[root@linuxprobe ~]# vim /etc/squid/squid.conf ………………省略部分输出信息………………

45 #

46 # INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS

47 #

48

49 # Example rule allowing access from your local networks.

50 # Adapt localnet in the ACL section to list your (internal) IP networks

51 # from where browsing should be allowed

52 http_access allow localnet

53 http_access allow localhost

54

55 # And finally deny all other access to this proxy

56 http_access deny all

57

58 # Squid normally listens to port 3128

59 http_port 10000 60 http_port 10000 ………………省略部分输出信息………………

[root@linuxprobe ~]# systemctl restart squid

[root@linuxprobe ~]# systemctl enable squid ln -s '/usr/lib/systemd/system/squid.service' '/etc/systemd/system/multi-user.target.wants/squid.service'

有没有突然觉得这一幕似曾相识?在10.5.3节讲解基于端口号来部署httpd服务程序的虚拟主机功能时,我们在编辑完httpd服务程序的配置文件并重启服务程序后,被系统提示报错。尽管现在重启Squid服务程序后系统没有报错,但是用户还不能使用代理服务。SElinux安全子系统认为Squid服务程序使用3128端口号是理所当然的,因此在默认策略规则中也是允许的,但是现在Squid服务程序却尝试使用新的10000端口号,而该端口原本并不属于Squid服务程序应该使用的系统资源,因此还需要手动把新的端口号添加到Squid服务程序在SElinux域的允许列表中。

[root@linuxprobe ~]# semanage port -l | grep squid_port_t squid_port_t tcp 3128, 3401, 4827 squid_port_t udp 3401, 4827 [root@linuxprobe ~]# semanage port -a -t squid_port_t -p tcp 10000

[root@linuxprobe ~]# semanage port -l | grep squid_port_t squid_port_t tcp 10000, 3128, 3401, 4827 squid_port_t udp 3401, 4827 

因读者们硬件不同或操作错误都可能导致实验配置出错,请耐心再仔细看看操作步骤吧,不要气馁~


转载请注明原文地址:https://www.aiofo.com/read-1441.html