Der Squid-Proxyserver (oder iptables) lässt meine Benutzer keine E-Mails senden oder empfangen

Der Squid-Proxyserver (oder iptables) lässt meine Benutzer keine E-Mails senden oder empfangen

Ich habe eine Ubuntu 10.04-Box, die einmal als Squid Transparent Proxy konfiguriert war. Die Navigation war perfekt: Meine Windows-Clients hatten keine Probleme.

Das Problem, das ich hatte, war, dass Benutzer mit Outlook (und Outlook Express) keine E-Mails senden oder empfangen konnten. Also habe ich hier und da gegoogelt und eine Lösung gefunden:

sudo iptables -t nat -A POSTROUTING -p TCP --dport 25 -j MASQUERADE

sudo iptables -t nat -A POSTROUTING -p TCP --dport 110 -j MASQUERADE

Alles hat super geklappt.

Jetzt habe ich die Squid-Authentifizierung aktiviert (die einfache mit einer Textdatei) und mein Outlook und Outlook Express funktionieren wieder nicht mehr. Ich habe gelesen, dass das Problem nicht wirklich mit Squid zusammenhängt, da es weder SMTP noch POP als Proxy verwendet ... Aber ich muss es trotzdem lösen. NAT? Portweiterleitung?

Welche Art von Befehlen sollte ich verwenden?

Der Squid-Server verfügt über eine einzelne Netzwerkkarte und kann problemlos auf das Internet zugreifen und Namen mithilfe von OpenDNS-Servern auflösen.

Konfiguration auf dem Server: IP 192.168.1.210 Subnetz 255.255.255.0 Tor 192.168.1.5

Auf den Clients verwende ich: ip 192.168.1.x Subnetz 255.255.255.0 Tor 192.168.1.210

Ich kann weitere Einzelheiten hinzufügen, also fragen Sie bitte, aber ich weiß nicht, was zur Lösung des Problems nötig sein könnte.

BEARBEITEN:

sudo iptables -L

Chain INPUT (policy ACCEPT)

target prot opt source destination

fail2ban-ssh tcp -- anywhere anywhere multiport dports ssh

Chain FORWARD (policy ACCEPT)

target prot opt source destination

Chain OUTPUT (policy ACCEPT)

target prot opt source destination

Chain fail2ban-ssh (1 references)

target prot opt source destination

RETURN all -- anywhere anywhere

sudo iptables -L -t nat

Chain PREROUTING (policy ACCEPT)

target prot opt source destination

REDIRECT tcp -- anywhere anywhere tcp dpt:www redir ports 3128

Chain POSTROUTING (policy ACCEPT)

target prot opt source destination

MASQUERADE tcp -- anywhere anywhere tcp dpt:smtp

MASQUERADE tcp -- anywhere anywhere tcp dpt:pop3

Chain OUTPUT (policy ACCEPT)

target prot opt source destination

Antwort1

Ich bin mir nicht sicher, was Sie genau erreichen wollen. Soweit ich weiß, werden Sie die Maschine mit Squid als Router/Firewall für das folgende Szenario verwenden:

  1. Erlaube Webprotokolle (http/ftp) nur über Squid
  2. Erlauben Sie den Zugriff auf SMPT/POP3 von Ihrem internen Netzwerk nach außen über NAT.
  3. Ihr Gateway zum Internet ist 192.168.1.5

Normalerweise übersetzt NAT von einem Netzwerk (192.168.1.0/24) in ein anderes (z. B. 84.145.77.23/32) und umgekehrt. Sie müssen daher möglicherweise NAT-Regeln auf Ihrem Gateway-Computer 192.168.1.5 einrichten, damit es funktioniert.

Der ausgehende Pfad lautet also:

client -> 192.168.1.210 ->NAT-> 192.168.1.5 ->NAT-> mailserver

Und der eingehende Pfad für Antworten ist:

mailserver -> 192.168.1.5 ->NAT-> 192.168.1.210 ->NAT-> client

Wie hier zu sehen ist, könnte 192.168.1.210 eliminiert werden und das Gateway könnte so konfiguriert werden, dass es ausgehenden SMTP/POP3-Verkehr von allen Clients akzeptiert und NAT-fähig macht und nur ausgehenden HTTP(S)/FTP-Verkehr von 192.168.1.210 akzeptiert.

Meiner Meinung nach könnte das zweite NAT zwischen 192.168.1.210 und 192.168.1.5 Probleme verursachen (dasselbe Netzwerk) und ist unnötig.

Um NAT generell auf 192.168.1.210 zu aktivieren, versuchen Sie bitte zunächst Folgendes:

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

ändern Sie eth0 bei Bedarf in den Namen Ihrer Netzwerkschnittstelle.

verwandte Informationen