Я пытаюсь настроить прокси-сервер, но не могу этого сделать. Вот подробности моей настройки
У меня есть один сервер (серия IBM X3800) и один настольный компьютер. К серверу подключена сетевая карта. eth0 и eth1. eth0 подключен к WAN через глобальный IP-адрес серии 202, и Интернет работает нормально на сервере, я могу подключиться к Интернету. eth1 подключен к коммутатору, а ниже - конфигурация в eth1
IP: 192.168.2.2
Netmask: 255.255.255.0
Gateway: 192.168.2.1
Network: 192.1968.2.0
Broadcast: 192.168.2.255
Я просто установил прокси-сервер Squid, используя apt-get install squid
. Я изменил файл
/etc/squid/squid.conf
и добавил детали ниже
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on
acl lan src 192.168.2.0/24
http_access allow lan
и наконец добавили эти правила iptable
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j DNAT --to globalip:3128
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128
где globalip - это IP-адрес eth0.
Теперь настольный ПК подключен к серверу через коммутатор, и конфигурация IP для настольного ПК такова.
IP: 192.168.2.4
Netmaskapt-get install squid: 255.255.255.0
Gateway: 192.168.2.1
Network: 192.1968.2.0
Broadcast: 192.168.2.255
Я легко могу пинговать с рабочего стола на сервер и с сервера на рабочий стол. Но моя настольная система не может получить доступ к Интернету. Полагаю, что проблема в кальмаре. Пожалуйста, помогите мне решить эту проблему. Если вам нужна другая информация, дайте мне знать.
Спасибо
У вас есть прокси на компьютере, но нет никакой конфигурации, которая заставляла бы другие компьютеры использовать этот прокси. В iptables
settings пытаются изменить пакеты, которые никогда не попадут на этот компьютер, потому что никакая другая конфигурация в вашей сети не направляет эти пакеты на этот компьютер.
Прокси прокси только HTTP, но вы все еще ожидаете таких вещей, как ping
работать.
Похоже, вам нужен NAT, а не проксирование. И NAT должен быть настроен на машине, которая является шлюзом по умолчанию для машин LAN.
Похоже, вы настраиваете прозрачный прокси, но ваша конфигурация не подходит для этой задачи. httpd_accel_*
директивы предназначены для обратного проксирования (AKA http-ускорение), я полагаю. Вы должны их прокомментировать. Использовать http_port 3128 transparent
вместо.