1. 程式人生 > >linux下設定代理伺服器

linux下設定代理伺服器

代理伺服器,顧名思義就是局域上不能直接上網的機器將上網請求(比如說,瀏覽某個主頁)發給能夠直接上網的代理伺服器,然後代理伺服器代理完成這個上網請求,將它所要瀏覽的主頁調入代理伺服器的快取;然後將這個頁面傳給請求者。這樣區域網上的機器使用起來就像能夠直接訪問網路一樣。 
    並且,代理伺服器還可以進行一些網站的過濾和控制的功能,這樣就實現了我們使用它的初衷——控制和節省上網費用。 

    在LINUX中,有一個功能很強大的http/https/ftp的代理伺服器程式——Squid Proxy Server,由於它安裝簡單,使用方便,所以已經被廣泛地使用。在RedHat LINUX的安裝光碟中已經包含了它。

      一.安裝squid(以CentOS 7 為例)

       由於安裝光碟中包含squid的RPM安裝包,所以直接安裝,如下:

rpm -ivh squid-3.3.8-11.el7.x86_64.rpm

或者通過網路進行安裝:

yum install squid

  二.進行配置

Squid Proxy Server僅有一個配置檔案——/etc/squid/squid.conf。我們必須對它進行相應的修改才能適用於我們的系統。下面就是一些最基本的配置選項。我們可以用vi開啟這個檔案進行編輯。 
   1.設定http/https/ftp的代理埠號: 
  代理埠的預設值是3128,可以根據自己的喜好修改。但是要注意的是,千萬不能與一些著名的埠衝突,例如POP埠——110等。如果你不是十分熟悉,就保留預設值吧。 


  下面就是在/etc/squid.conf檔案中的一句: 
   http_port 3128 
 2.新增訪問控制組: 
 我們將需要區別開的不同使用者定義成一個訪問控制組。比如一個公司的內部網的網路IP是192.168.200.0。而且只想區分公司內和公司外的兩類使用者,則我們就在/etc/squid/squid.conf檔案中新增下表的兩句: 
  acl all src 0.0.0.0/0.0.0.0 
  acl company src 192.168.200.0/255.255.255.0 
  這樣,我們說定義了一個包含所有人的組,和一個包含公司內部網的所有人的組。下面就可以對這兩個組分別進行訪問權力的設制,在CentOS7 系統下,配置檔案部分內容如下,acl表示允許進行訪問,這裡假設允許localnet訪問,並設定ip地址為172.18.6.134

 如下圖,52,53表示允許使用代理的使用者(這裡也可以自定義使用者),56表示除指定使用者以外,其它使用者不使用代理。到這一步後下面一部可以省略。

3.設定每個訪問控制組的訪問權力:(可省略)
  比如,我們希望公司內部的所有人都能夠通過代理伺服器上網,而禁止其它的人使用代理伺服器上網,則我們就在/etc/squid/squid.conf檔案中新增下面兩句: 
  http_access allow company 
  http_access deny all 
  也就是我們allow(允許)“company”組使用代理伺服器,而除了這個組以外的“all”deny(禁止)使用代理伺服器。要注意的是,這兩句一定不能順序調換。否則將禁止所有的使用者使用。 
  請大家好好體會。 
  4. 存檔退出; 
  5. 執行下面的命令,使得新的配置生效: 
  /etc/rc.d/init.d/squid restart  或者 service squid restart


 三,客戶端設定

在瀏覽器開啟工具-internet選項-連線,選擇區域網設定如下圖:

確定退出,這樣在windows下你就可以使用代理伺服器上網了。