Ubuntu

當我從遠端電腦使用代理時,/var/log/squid/access.log 為空

  • June 15, 2011

我已將 squid 配置為使用 NAT

apt-get install squid
iptables -t nat -A PREROUTING -i eth1 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.0.1:3128
iptables -t nat -A PREROUTING -i eth0 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128

已添加到 /etc/squid/squid.conf

acl internal_network src 192.168.0.0/24
http_access allow internal_network

access_log /var/log/squid/access.log squid

問題:當我從遠端電腦使用代理時,/var/log/squid/access.log 為空。

當我這樣做時telnet localhost 3128,它確實寫入日誌:

1308144959.810 0 127.0.0.1 TCP_DENIED/400 1693 NONE NONE:// - NONE/- text/html

所以問題是日誌記錄以某種方式關閉以供遠端代理使用。

權限:

  • /var/log/squid/ - 0777
  • /var/log/squid/* - 0666

cat /var/log/squid/cache.log | grep access

logfileOpen: opening log /var/log/squid/access.log

沒有任何錯誤。

我的網路介面是 br0,而不是 eth0 或 eth1

iptables -t nat -A PREROUTING -i br0 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.0.1:3128

解決了這個問題。

引用自:https://serverfault.com/questions/280673