R
rikola
Foren Gott
Hallo,
ich verwalte ein kleines Netzwerk aus etwa 10-20 Rechnern. Es gibt einen Server (Debian stable), vor dem noch eine OpenBSD 4.9 Firewall geschaltet ist. Bei der Firewall habe ich mich im grossen und ganzen an die Small-office Loesung der pf-FAQ gehalten.
Anfragen z.B. an Apache auf dem Server werden von pf weitergeleitet mit
Wobei tcp_redir eben die gewuenschten ports enthaelt.
Anfragen von innerhalb der Firewall werden nun nicht umgeleitet, was zur Folge hat, dass man per http auf die Firewall gelangt, wo kein httpd laeuft.
Im Moment ergibt ein nmap innerhalb der Firewall:
Mit der Regel
ergibt sich zwar
d.h., man wird wohl auf den Server umgeleitet, doch kann sich ein Browser intern trotzdem nicht mit der Seite verbinden - es gibt einen timeout.
Kann mir jemand sagen, wie ich dieses Problem loese (thunderbird/icedove funktionieren aus dem gleichen Problem innerhalb der firewall auch nur, wenn man den internen Namen des Server angibt, welcher von einem internen DNS auf 192.168.0.2 zeigt), d.h., dass Anfragen vom internen Netzwerk auf die externe IP-Adresse auf die interne Adresse 192.168.0.2 des Servers weitergeleitet werden? Oder gibt es eine andere Loesung (ausser einen Eintrag in /etc/hosts)?
Hier die ganz pf.conf:
Danke
ich verwalte ein kleines Netzwerk aus etwa 10-20 Rechnern. Es gibt einen Server (Debian stable), vor dem noch eine OpenBSD 4.9 Firewall geschaltet ist. Bei der Firewall habe ich mich im grossen und ganzen an die Small-office Loesung der pf-FAQ gehalten.
Anfragen z.B. an Apache auf dem Server werden von pf weitergeleitet mit
Code:
pass in on egress inet proto tcp to (egress) port $tcp_redir \
rdr-to $shelx_srv synproxy state
Anfragen von innerhalb der Firewall werden nun nicht umgeleitet, was zur Folge hat, dass man per http auf die Firewall gelangt, wo kein httpd laeuft.
Im Moment ergibt ein nmap innerhalb der Firewall:
Code:
root@shelx-server:~# nmap shelx.uni-ac.gwdg.de
Starting Nmap 5.00 ( http://nmap.org ) at 2011-07-01 09:40 CEST
Interesting ports on shelx.uni-ac.gwdg.de (134.76.64.11):
Not shown: 996 closed ports
PORT STATE SERVICE
13/tcp open daytime
22/tcp open ssh
37/tcp open time
113/tcp open auth
Nmap done: 1 IP address (1 host up) scanned in 12.71 seconds
Code:
pass in quick on $int_if inet proto tcp from 192.168.0.0/24 \
to 134.76.64.11 port $tcp_redir_internal \
rdr-to $shelx_srv synproxy state
Code:
root@shelx-server:~# nmap shelx.uni-ac.gwdg.de
Starting Nmap 5.00 ( http://nmap.org ) at 2011-07-01 09:37 CEST
Interesting ports on shelx.uni-ac.gwdg.de (134.76.64.11):
Not shown: 990 closed ports
PORT STATE SERVICE
13/tcp open daytime
22/tcp open ssh
25/tcp open smtp
37/tcp open time
80/tcp open http
113/tcp open auth
443/tcp open https
465/tcp open smtps
993/tcp open imaps
995/tcp open pop3s
Nmap done: 1 IP address (1 host up) scanned in 12.60 seconds
Kann mir jemand sagen, wie ich dieses Problem loese (thunderbird/icedove funktionieren aus dem gleichen Problem innerhalb der firewall auch nur, wenn man den internen Namen des Server angibt, welcher von einem internen DNS auf 192.168.0.2 zeigt), d.h., dass Anfragen vom internen Netzwerk auf die externe IP-Adresse auf die interne Adresse 192.168.0.2 des Servers weitergeleitet werden? Oder gibt es eine andere Loesung (ausser einen Eintrag in /etc/hosts)?
Hier die ganz pf.conf:
Code:
# 9/04/2011
# pf.conf for shelx external network
# macro definitions
int_if = "em0" # external card
ext_if = "bge0" # onboard device
# redirected ports for server
# 22: sshd; 80: http; 443: https; 465: smtps
# 993: imaps; 995: pop3s 25: smtp
tcp_redir = "{ 22, 25, 80, 443, 465, 993, 995 }"
# internally: redirect everything except for ssh-port 22
tcp_redir_internal = "{ 25, 80, 443, 465, 993, 995 }"
icmp_types = "echoreq"
# IP address of actual server
shelx_srv = "192.168.0.2"
# options (copied from OpenBSD pf-FAQ)
set block-policy drop
set loginterface $ext_if
set skip on lo
# match rules
match out on egress inet from !(egress) to any nat-to (egress:0)
# filter rules
block in log
# redirect internal tcp_services back to shelx server
#pass in quick on $int_if inet proto tcp from 192.168.0.0/24 \
# to 134.76.64.11 port $tcp_redir_internal \
# rdr-to $shelx_srv synproxy state
pass out quick
antispoof quick for { lo $int_if }
# redirect tcp_services to actual shelx server
pass in on egress inet proto tcp to (egress) port $tcp_redir \
rdr-to $shelx_srv synproxy state
# "ping's"
pass in inet proto icmp all icmp-type $icmp_types
pass in on $int_if
Danke