魷魚配置

魷魚配置

我有一個 VPS。如何透過 HTTPS 協定連接到我的伺服器並將瀏覽器連接重新導向到 HTTPS 連線?

目前我使用 SSH 隧道,但速度太慢。

答案1

我使用 Squid 作為代理伺服器隧道作為 SSL 包裝器。由於緩存,它具有非常好的性能。

魷魚配置

安裝Squid後,請執行以下操作魷魚文檔並配置它。這是範例配置:

http_port 3193 透明

快取目錄 ufs /var/cache/squid 128 16 128
快取記憶體 1 MB
記憶體中最大物件大小 512 KB
最大物件大小 1 MB

visible_hostname 主機名稱.com

hierarchy_stoplist cgi-bin ?
刷新模式 ^ftp:1440 20% 10080
刷新模式 ^gopher: 1440 0% 1440
刷新模式 -i (/cgi-bin/|\?) 0 0% 0
刷新模式。 0 20% 4320

acl管理器原型cache_object
acl 本機 src 127.0.0.1/32::1
acl to_localhost dst 127.0.0.0/8 0.0.0.0/32 ::1

acl localnet src 10.0.0.0/8 # RFC 1918 可能的內部網絡
acl localnet src 172.16.0.0/12 # RFC 1918 可能的內部網絡
acl localnet src 192.168.0.0/16 # RFC 1918可能的內部網絡
acl localnet src fc00::/7 # RFC 4193 本機專用網路範圍
acl localnet src fe80::/10 # RFC 4291 連結本地(直接插入)機器

acl SSL_ports 連接埠 443
acl Safe_ports 連接埠 80 # http
acl Safe_ports 連接埠 21 # ftp
acl Safe_ports 連接埠 443 # https
acl Safe_ports 連接埠 70 # gopher
acl Safe_ports 連接埠 210 # wais
acl Safe_ports port 1025-65535 # 未註冊的端口
acl Safe_ports 連接埠 280 # http-mgmt
acl Safe_ports 連接埠 488 # gss-http
acl Safe_ports 連接埠 591 # filemaker
acl Safe_ports 連接埠 777 # 多路 http
acl CONNECT 方法 CONNECT

auth_param 基本程式 /usr/libexec/squid/pam_auth
auth_param 基本子項 5
auth_param 基本領域 Squidy
auth_param 基本憑證 4 小時

acl 密碼 proxy_auth 必需

http_access 允許管理員
http_access 拒絕!
http_access 拒絕 CONNECT !SSL_ports
http_access 允許密碼
http_access 允許本機
http_access 允許本機網絡
http_access 拒絕所有

透過關閉
轉送_關閉

request_header_access 允許 允許所有
request_header_access 授權允許所有
request_header_access WWW-Authenticate 允許所有
request_header_access 代理授權允許所有
request_header_access 代理驗證允許所有
request_header_access 快取控制允許所有
request_header_access 內容編碼允許所有
request_header_access 內容長度允許所有
request_header_access 內容類型允許所有
request_header_access 日期允許所有
request_header_access 過期允許所有
request_header_access 主機允許所有
request_header_access If-Modified-Since 允許所有
request_header_access Last-Modified 允許所有
request_header_access 位置允許所有
request_header_access Pragma 允許所有
request_header_access 接受允許所有
request_header_access 接受字元集允許所有
request_header_access 接受編碼允許所有
request_header_access 接受語言允許所有
request_header_access 內容語言允許所有
request_header_access Mime 版本允許所有
request_header_access 重試-允許所有之後
request_header_access 標題允許所有
request_header_access 連線允許所有
request_header_access 代理連線允許所有
request_header_access 使用者代理允許所有
request_header_access Cookie 允許所有
request_header_access 全部拒絕全部

它監聽端口3193 tcp。然後是快取選項,一些 acl 命令和auth_paramPAM 身份驗證(您可能不希望打開代理並因垃圾郵件報告而丟失 VPS)。request_header_access不需要線路。他們為您提供更好的匿名性。

Stunnel伺服器配置

在伺服器上安裝 stunnel。這是範例配置:

setuid = 隧道
setgid = 隧道

CAfile = /etc/stunnel/certs.pem
CRL檔 = /etc/stunnel/crls.pem

[代理人]
接受=8888
連接=127.0.0.1:3193

可能是在 stunnel 安裝時製作的認證檔案。檢查 中的檔案路徑CAfile。它只是監聽埠8888 tcp並將解密的串流重新導向到 Squid。因此,請確保它是可訪問的:

iptables -I INPUT 1 -p tcp --dport 8888 -j ACCEPT

您不再需要使魷魚偵聽連接埠成為世界範圍內可達的。

Stunnel 用戶端配置

在本機上安裝 stunnel 並根據需要變更此配置:

setuid = 隧道
setgid = 隧道
pid = /var/run/stunnel/stunnel.pid

[環氧]
接受=8123
連線=伺服器IP:8888
客戶 = 是
libwrap = 否

將 server_ip 替換為適當的值。然後在伺服器上啟動Squid並在客戶端和伺服器上啟動Stunnel。像localhost:8123在瀏覽器中一樣設定代理。如果一切正常,系統必須提示您輸入使用者名稱和密碼。

答案2

https伺服器是apache嗎?我不完全理解你的情況,但如果你有 mod_proxy,你也許可以做你想做的事。

答案3

我從未在虛擬主機上設定過任何東西,但這裡有一些關於通用 HTTPS 的資訊:

HTTPS 使用 HTTP 和 SSL 的組合(請參閱此處的維基百科文章:http://en.wikipedia.org/wiki/HTTP_Secure)。 HTTPS 本身並不是真正的協議,而是在 SSL 隧道上運行的普通 HTTP。

HTTPS 使用 CA(憑證授權單位)和 PKI(公鑰基礎架構)來確保使用者可以「信任」該網站。您必須為 Web 伺服器建立一個公鑰證書,並且該憑證必須由受信任的 CA(例如 VeriSign)簽署。要獲得受信任的證書,您可能需要支付年費來維護。

如果您未通過受信任的 CA,使用者在嘗試連線到您的網站時將收到警告。這通常會導致用戶離開您的網站,因為他們可能會將其視為安全風險。

另外,請記住,雖然 HTTP 預設使用連接埠 80,但 HTTPS 使用 443,因此如果您有任何連接埠轉送/連接埠阻止,則必須確保該連接埠可供您連線。要使用 HTTPS,您還必須確保在導航到網站時將其鍵入 URL,否則它可能會預設使用 HTTP。

編輯:這裡很好地介紹了 HTTPS 如何運作: http://securityworkshop.blogspot.com/2009/01/how-httpsssl-works-part-1-basics.html

答案4

我的水晶球說你應該看看http://www.stunnel.org/static/stunnel.html

萬一球錯了,也無所謂。

相關內容