On Thu, Apr 14, 2011 at 10:11:11AM +0200, Kosa Attila wrote:
Sima http oldal bejon, tehat a halozat mukodik. Azonban az latszik, hogy a bongeszo mar dobja, hogy nem elerheto az oldal, es a logban csak ezutan jelennek meg a zorp uzenetei. Ugyanakkor a tcpdump-ban az latszik, hogy jonnek-mennek a csomagok a kliens es a tuzfal kozott. Ennel jobban meg nem melyultem el a tcpdump elemzeseben eddig.
Na, most elmelyultem :) Es jelentem, mukodik! A Internet Explorer szivatott meg. Ugyanis mukodik a konfig, csak az IE nem szolt egy szot sem, hogy gond van a tanusitvannyal, hanem lecsapta a kapcsolatot. Ellenorzendo megneztem Firefox-szal, az szolt, hogy nem ismeri a tanusitvanyt. Megetettem vele (es az IE-vel is) a trust.crt fajlt, azonnal mukodott mindket bongeszovel az otpbank. Koszi a segitseget mindenkinek! Es hogy meglegyen a komplett konfig, ami mukodik: from Zorp.Core import * from Zorp.Pssl import * from Zorp.Http import * from Zorp.Keybridge import * InetZone("intranet", "192.168.2.0/24", inbound_services=[], outbound_services=["intra_Keybridge_HTTPS_inter"]) InetZone("internet", "0.0.0.0/0", inbound_services=["intra_Keybridge_HTTPS_inter"], outbound_services=[]) class StrongHttpsProxy(HttpProxy): def config(self): HttpProxy.config(self) self.ssl.client_keypair_files=("/etc/ssl/certs/fw.akarmi.hu.crt", "/etc/ssl/private/fw.akarmi.hu.key.nopass") self.ssl.client_verify_type=SSL_VERIFY_NONE self.ssl.client_connection_security = SSL_FORCE_SSL self.ssl.server_connection_security = SSL_FORCE_SSL self.ssl.server_cagroup_directories=("/etc/zorp/ca.crt", "/etc/zorp/crls/") self.ssl.server_ssl_method=SSL_METHOD_ALL self.ssl.server_disable_proto_sslv2=TRUE self.ssl.server_ssl_cipher=SSL_CIPHERS_HIGH self.ssl.server_verify_type=SSL_VERIFY_REQUIRED_UNTRUSTED class KeybridgeStrongHttpsProxy(StrongHttpsProxy): def config(self): StrongHttpsProxy.config(self) self.ssl.key_generator=X509KeyBridge(key_file="/etc/zorp/keybridging_cert/fwca.key", key_passphrase="12345678", cache_directory="/var/lib/zorp/keybridge-cache", trusted_ca_files=("/etc/zorp/certs/trust.crt", "/etc/zorp/certs/trust.key.nopass"), untrusted_ca_files=("/etc/zorp/certs/untrust.crt", "/etc/zorp/certs/untrust.key.nopass")) self.ssl.handshake_seq=PSSL_HSO_SERVER_CLIENT self.ssl.client_keypair_generate=TRUE def zorp_https() : Service(name="intra_Keybridge_HTTPS_inter", proxy_class=KeybridgeStrongHttpsProxy, router=TransparentRouter(overrideable=FALSE, forge_addr=FALSE)) Dispatcher(bindto=DBIface(protocol=ZD_PROTO_TCP, iface="eth1", ip="192.168.2.254", port=60443), service="intra_Keybridge_HTTPS_inter", transparent=TRUE, threaded=FALSE, backlog=255) Meg kellettek ezek a parancsok: /sbin/ip route add local 0.0.0.0/0 dev lo table 100 /sbin/ip rule add fwmark 1 lookup 100 /sbin/ip route flush cache A csomagszuro tartalma: *mangle :PREROUTING ACCEPT [0:0] :POSTROUTING ACCEPT [0:0] :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [0:0] :DIVERT - -A PREROUTING -p tcp -m socket -j DIVERT -A DIVERT -j MARK --set-mark 1 -A DIVERT -j ACCEPT -A PREROUTING -i IFintra -p tcp -s INTRANET --dport 80 -j TPROXY --tproxy-mark 0x1/0x1 --on-port 60080 --on-ip 192.168.2.254 -A PREROUTING -i IFintra -p tcp -s INTRANET --dport 443 -j TPROXY --tproxy-mark 0x1/0x1 --on-port 60443 --on-ip 192.168.2.254 COMMIT *filter :INPUT DROP [0:0] :FORWARD DROP [0:0] :OUTPUT ACCEPT [0:0] :LOintra - :LOinter - :icmpk - -A INPUT -i lo -j ACCEPT -A INPUT -p icmp -j icmpk -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT -A INPUT -i IFintra -j LOintra -A INPUT -i IFinter -j LOinter -A INPUT -j LOG --log-prefix "INPUT DROP: " -A INPUT -j DROP -A FORWARD -j LOG --log-prefix "FORWARD DROP: " -A FORWARD -j DROP -A LOintra -p tcp --dport 53 -j ACCEPT -A LOintra -p udp --dport 53 -j ACCEPT -A LOintra -p tcp --dport ZORPKIFELE -j ACCEPT -A LOintra -j LOG --log-prefix "LOintra DROP: " -A LOintra -j DROP -A LOinter -p tcp --dport 22 -j ACCEPT -A LOinter -j LOG --log-prefix "LOinter DROP: " -A LOinter -j DROP -A icmpk -p icmp --icmp-type destination-unreachable -j ACCEPT -A icmpk -p icmp --icmp-type time-exceeded -j ACCEPT -A icmpk -p icmp --icmp-type parameter-problem -j ACCEPT -A icmpk -p icmp --icmp-type source-quench -j ACCEPT -A icmpk -p icmp --icmp-type echo-request -j ACCEPT -A icmpk -p icmp --icmp-type echo-reply -j ACCEPT -A icmpk -j LOG --log-prefix "Icmpk DROP: " -A icmpk -j DROP COMMIT Egy dolog nem egeszen vilagos a mukodesben, a ZORPKIFELE valtozot tartalmazo szabaly. Ebbe ugyanis fel kell vennem az osszes portot, amit a zorpon keresztul akarok engedni (a fenti peldaban a 443-at), kulonben a LOintra agon eldobasra kerulnek a csomagok, nem jutnak el a zorp-hoz. Hogy kellene ezt "elegansabban" megoldani? -- Udvozlettel Zsiga