Endlich wieder im Angebot: FTP geht nicht...

SteWo

OpenBSD User
Hallo Leute,

ich bin ziemlich frustriert und brauche leider mal wieder eure Hilfe: Nach dem Upgrade auf 4.1 geht FTP hinter einer PF-Firewall nicht mehr. Habe wohl an irgendeiner Stelle etwas verbockt und weiß nicht mehr weiter...

Mein Setup:
Internet => OBSD41-Rechner als Firewall => OBSD41-Laptop mit weiterer Firewall. Alle Patches eingespielt.
Folgende Proxy-Kette ist eingerichtet:
Internet => Tor => Privoxy => Squid => Browser(Laptop)

Intergalaktisch gesehen funktioniert FTP via Browser, soll heißen, daß ich z.B. auf
ftp://openbsd.informatik.uni-erlangen.de/pub/OpenBSD/4.1/packages/i386
gehen kann und eine Liste der dort abrufbaren Dateien sehen und ggf. auch herunterladen kann. Aber: Diese Adresse habe ich via PKG_PATH in meine .profile eingetragen. Wenn ich jetzt auf der Konsole pkg_add <Datei> eingebe, erhalten ich (hier für die digikam-docs):
$ sudo pkg_add digikam-doc
Can't resolve digikam-doc
Versuche ich es über /usr/ports/graphics/digikam-doc, kommt:
sudo make install clean
===> Checking files for digikam-doc-0.8.2
>> digikam-doc-0.8.2.tar.bz2 doesn't seem to exist on this system.
>> Fetch http://easynews.dl.sourceforge.net/sourceforge/digikam/digikam-doc-0.8.2.tar.bz2.
ftp: temporary failure in name resolution: easynews.dl.sourceforge.net
...
>> Fetch ftp://ftp.freebsd.org/pub/FreeBSD/distfiles//digikam-doc-0.8.2.tar.bz2.
ftp: ftp.freebsd.org: temporary failure in name resolution
ftp: Can't connect or login to host `ftp.freebsd.org'
*** Error code 1

Stop in /usr/ports/graphics/digikam-doc (line 2214 of /usr/ports/infrastructure/mk/bsd.port.mk).
*** Error code 1

Stop in /usr/ports/graphics/digikam-doc (line 1691 of /usr/ports/infrastructure/mk/bsd.port.mk).
*** Error code 1

Stop in /usr/ports/graphics/digikam-doc (line 1892 of /usr/ports/infrastructure/mk/bsd.port.mk).
*** Error code 1

Stop in /usr/ports/graphics/digikam-doc (line 1373 of /usr/ports/infrastructure/mk/bsd.port.mk).
*** Error code 1

Stop in /usr/ports/graphics/digikam-doc (line 1861 of /usr/ports/infrastructure/mk/bsd.port.mk).
*** Error code 1

Stop in /usr/ports/graphics/digikam-doc (line 1400 of /usr/ports/infrastructure/mk/bsd.port.mk).

Da das FTP-Geraffel unter 4.0 noch problemlos ging, stehe ich etwas auf dem Schlauch: Wieso funzt FTP aus dem Browser heraus, aber nicht von der Konsole??? Denn auch wget bringt nur eine Fehlermeldung.

Ich will jetzt nicht Unmengen an sinnlosen Konf-Dateien und logs mitsenden, aber ich gehe davon aus, daß die rc.conf.local und resolv.conf von Rechner1(=Firewall) und Rechner2(=Laptop) mindestens benötigt werden. Ihr findet sie in den Anhängen, jeweils mit "1" oder "2" gekennzeichnet. Die jeweiligen pf.conf-Dateien ebenfalls hochzuladen verweigert mit die ?"§$%&-Foren-Software (folgt - irgendwie...:grumble: ).

Bin für jede Anregung dankbar!

Gruß,
SteWo
 

Anhänge

  • rc.conf1.txt
    3,9 KB · Aufrufe: 353
  • resolv1.txt
    83 Bytes · Aufrufe: 307
  • rc.conf2.txt
    3,9 KB · Aufrufe: 309
  • resolv2.txt
    82 Bytes · Aufrufe: 325
PF auf Laptop:

Da ich dies vom Laptop aus poste, hier die entsprechende pf.conf als Kopie:
Code:
ext_if="pppoe0"
int_if="rl0"

#table <spamd> persist
#table <spamd-white> persist

set skip on { lo0 $int_if enc0 }

#scrub all random-id no-df
scrub in

nat-anchor "ftp-proxy/*"
rdr-anchor "ftp-proxy/*"
nat on $ext_if from !($ext_if) -> ($ext_if:0)
rdr pass on $int_if proto tcp to port ftp -> 127.0.0.1 port 8021
#rdr pass on $ext_if proto tcp from <spamd> to port smtp \
#	-> 127.0.0.1 port spamd
#rdr pass on $ext_if proto tcp from !<spamd-white> to port smtp \
#	-> 127.0.0.1 port spamd

anchor "ftp-proxy/*"
#block in quick inet6 all
block in
#block log all
pass out keep state

pass quick on $int_if
antispoof quick for { lo $int_if }

pass in on $ext_if proto tcp to ($ext_if) port ssh keep state
pass in log on $ext_if proto tcp to ($ext_if) port smtp keep state
pass out log on $ext_if inet proto tcp from ($ext_if) to port smtp keep state
Die entsprechenden Regeln für den Firewall-Rechner folgen gleich...
SteWo
 
PF auf Firewall

Der guten Vollständigkeit halber, hier jetzt die pf.conf des Firewall-Rechners:

Code:
Ext="pppoe0"                # Device an dem das Internet angeschlossen ist
Int="rl1"                # Device an dem das interne Netz haengt
Ftp="10.10.10.1"
IntNet="192.168.10.0/24"   # Adressraum des internen Netzes
RouterIP="192.168.10.1"  # IP Adresse des Routers
Loop="lo0"                # Loopback Device
Server="192.168.10.50"     # Interner server fuer mail usw...

# Adressen die auf dem externen Device nicht geroutet werden
# (Adressbereich des internen Netzes muss man wegen der Weiterleitungen zulassen)
table <NoRoute> { 127.0.0.1/8, 172.16.0.0/12, 192.168.0.0/16, !$IntNet, 10.0.0.0/8, 255.255.255.255/32 }

# Ports die geoeffnet werden sollen
#InServicesTCP="{ ssh, smtp, ftp, auth, 222, https, imaps, pop, pop3 }"
# Port 21	FTP
# Port 25	?
# Port 80	Apache, HTTPS
# Port 110	POP3
# Port 443	Apache
# Port 2000
# Port 2047
# Port 2350
# Port 5190
# Port 6699
# Port 8500
# Port 10000
# Port 15106
# Port 15200
# Port 15300
# Port 15800
# Port 20941
# Port 24500 - 24505
# Port 33334 - 33336
# Port 58282
InServicesTCP="{ 21, 25, 80, 110, 443, 2000, 2047, 2350, 5190, 6699, 8021,8080, 8500, 10000, 15106, 15200, 15300, 15800, 19999><20020, 20941, 24499><24506, 33334, 33335, 33336, 58282 }"
# Port 2350	?
# Port 4672	?
# Port 6112	Company of Heroes
# Port 6257	?
# Port 12345	?
# Port 30260	?
# Port 30275 	Company of Heroes
# Port 33334	Empire Earth
# Port 33336	Empire Earth
#InServicesUDP="{ imaps }"
InServicesUDP="{ 2350, 4672, 6112, 6257, 12345, 30260, 30275, 33334, 33336 }"


### OPTIONS ###

# Macht Statistiken fuer die DSL-Verbindung (pfctl -s info)
set loginterface $Ext

# Beendet inaktive Verbindungen schneller - geringerer Speicherverbrauch.
set optimization aggressive

# Fragmentierte Pakete saeubern
scrub on $Ext all fragment reassemble random-id

# Queueing
#altq on $Ext cbq bandwidth 2Mb queue { std_out, ack_out, ssh_out, ssh_ack_out }

#queue std_out                cbq(red default)
#queue ack_out     priority 2 cbq(red)
#queue ssh_out     priority 4 cbq(red)
#queue ssh_ack_out priority 6 cbq(red)


### NAT & FORWARD ###

# NAT aktivieren (unter Linux als Masquerading bekannt)
nat on $Ext from $IntNet to any -> $Ext static-port

# Active FTP - Umleitung zu unserem ftp-proxy
#rdr on $Int proto tcp from !$RouterIP to !$IntNet port 21 -> $Server port 8021
rdr on $Int proto tcp from any to any port 21 -> $Server port 8021

# WWW - Umleitung zu squid
rdr on $Int proto tcp from !$RouterIP to !$IntNet port 80 -> $Server port 8080

# SMTP - Umleitung zu -> $server
rdr on $Ext proto tcp from !$IntNet to any port smtp -> $Server port smtp

# https - Umleitung zu -> $server
rdr on $Ext proto tcp from !$IntNet to any port https -> $Server port https

# Mops ICQ
#rdr on $Ext proto tcp from any to any port $InServicesTCP -> 192.168.10.70 port $InServicesTCP
#rdr on $Ext proto udp from any to any port $InServicesUDP -> 192.168.10.70 port $InServicesUDP
#rdr on $Ext proto tcp from any to any port 24502 -> 192.168.10.70 port 24502
#rdr on $Ext proto tcp from any to any port 24503 -> 192.168.10.70 port 24503
#rdr on $Ext proto tcp from any to any port 24504 -> 192.168.10.70 port 24504
#rdr on $Ext proto tcp from any to any port 24505 -> 192.168.10.70 port 24505

#rdr on $Ext proto tcp from any to any port 110 -> 192.168.10.60 port 110
rdr on $Ext proto tcp from any to any port 110 -> $Server port 110

# imaps - Umleitung zu -> $server
rdr on $Ext proto tcp from !$IntNet to any port imaps -> $Server port imaps
rdr on $Ext proto udp from !$IntNet to any port imaps -> $Server port imaps

# ssh - Umleitung zu -> bull
rdr on $Ext proto tcp from !$IntNet to any port ssh -> $Server port ssh

rdr-anchor redirect

nat-anchor "ftp-proxy/*"
nat on $Ext inet from $Int -> ($Ext)
rdr-anchor "ftp-proxy/*"
#rdr pass on $Int proto tcp to port ftp -> 127.0.0.1 port 8021
#rdr pass on $Int proto tcp from any to any port 21 -> 127.0.0.1 port 8021 
pass in on $Ext inet proto tcp to $Ext port 21 
pass out on $Int inet proto tcp to $Ftp port 21 user proxy

### FILTER ###

# Generelle Block Regel
block on $Ext

# Freiwillig machen wir keinen mucks ;)
block return log on $Ext

# Wir wollen kein IPv6.0
block quick inet6
block in from no-route to any

# Loopback Device darf alles
pass quick on $Loop

# Erschwert scannen mit nmap und co.
block in log quick on $Ext inet proto tcp from any to any flags FUP/FUP
block in log quick on $Ext inet proto tcp from any to any flags SF/SFRA
block in log quick on $Ext inet proto tcp from any to any flags /SFRA
block in log quick on $Ext os NMAP

# IP Spoofing verhindern
block in log quick on $Ext inet from <NoRoute> to any
block in log quick on $Ext inet from any to <NoRoute>

# MS-Geroedel blocken
#block in quick on $Int inet proto tcp from $IntNet to any port { 134 >< 140, 445 }
#block in quick on $Int inet proto udp from $IntNet to any port { 134 >< 140, 445 }

# Active FTP erlauben
pass in quick on $Ext inet proto tcp from any to any port > 49151 user proxy flags S/SAFR 

# Ping akzeptieren (ablehnen ist uebrigends wenig sinnvoll)
pass in quick on $Ext inet proto icmp all icmp-type 8 code 0 

# Ports nach aussen oeffnen
pass in quick on $Ext inet proto tcp from any to any port $InServicesTCP flags S/SAFR  label ServicesTCP
pass in quick on $Ext inet proto udp from any to any port $InServicesUDP label ServicesUDP

anchor passin
anchor "ftp-proxy/*"

# Raus darf (fast) alles
#pass out quick on $Ext  queue (q_def,q_pri)

# Outgoing SSH always gets the highest priority.
pass out quick on $Ext proto tcp from any to  any port ssh queue ( ssh_out, ssh_ack_out )

# outgoing TCP
pass out quick on $Ext proto tcp all  queue ( std_out, ack_out )
#pass out proto tcp from $proxy to any port 21 

# outgoing UDP
pass out quick on $Ext proto udp all  queue std_out

Ich hätte dies ja lieber als Datei-Anhang gepostet, aber die Foren-Software wollte es nicht...

Dank an alle, die immerhin bis hier gelesen haben. Vielleicht fällt euch etwas unmittelbar auf...

Gruß,
SteWo
 
Neuer Versuch...

Also, ich vermute einmal, daß meine ersten Postings euch irgendwie zuviel des Guten waren... Last mich mein Problem noch einmal darstellen:

Ich habe da einen alten AMD-Athlon-Rechner, der mein zentrales OpenBSD-Internet-Gateway und gleichzeitig zentraler Lan-Server ist. Soll heißen, darauf läuft Tor, Privoxy, Squid, PF, Cups, FTP usw. "Dahinter" verbergen sich ein OpenBSD-Laptop und zwei M$-Rechner, von denen einer heftig nach Online-Spielen verlangt. Reduzieren wir zunächst das Problem auf die zwei OpenBSD-Rechner - den Server und das Laptop.

Vom Server aus kann ich ohne Probleme FTP-Dateien sowohl aus dem Browser (FF, Opera) heraus als auch von der Konsole abgreifen. Vom Laptop aus jedoch kann ich FTP nur per Browser machen. Damit funktioniert insbesondere ein "sudo make install clean" aus den ports heraus nicht (aber auch z.B. kein wget!).

Ich habe in den letzten Tagen ziemlich heftig an allen denkbaren "Schrauben" gedreht - ohne jeglichen sichtbaren Erfolg.

Worum ich euch zunächst bitte, ist eine Hilfestellung bei der weitern Fehlersuche: Ich habe alle relevanten man-Pages, How-Tos und Wikis durch - keine Ahnung, womit ich noch substantiell weiterkomme...

Also, was mir aufgefallen ist: Auf dem Server läuft kein ftpd. In der /etc/rc.conf.local ist dieser eigentlich aktiviert, wie auch auf dem Laptop, wo ftpd problemlos gestartet wird. Der Vollständigkeit halber, hier die relevanten Einstellungen aus der Server-/etc/rc.conf.local:
Code:
ftpproxy_flags="-R 192.168.10.50 -p 21 -b 192.168.10.50"
...
ftpd_flags="-D"
In der /etc/inetd sind alle ftp-relevanten Zeilen auskommentiert. /etc/ftpusers ist auf beiden Rechnern identisch (weil unverändert aus 4.1 übernommen). /etc/ftpchroot hat auf beiden Systemen als einzigen Eintrag den Laptop-User (welcher auch auf beiden System sich identisch anmelden kann...)

Wenn ich z.B. GeoIP aus der ftp.openbsd.org-Domain per wget versuche zu beziehen, erhalten ich nur ein
Resolving ftp.openbsd.org...
Wieso geht dies so nicht, aber aus dem Browser heraus kann ich dies Verzeichnis ansteuern und die Datei laden???
:mad:

Könnt ihr mich verstehen???

Was braucht Ihr noch an Input???

Danke für eure Hilfe,
SteWo
 
Zuletzt bearbeitet:
Warum machst du keinen Transparenten Proxy? Dann ersparst du dir das Konfigurieren der Clients.
 
oehm...

ist das deine richtige rc.conf?
weil... die rc.conf1 hat irgendwie zerschossene zeichen am ende.
bist du sicher dass das nicht vielleicht auch in anderen dateien im /etc verzeichnis passiert sein koennte?

ausserdem sehe ich da drinne ftp_proxy-flags.

was passiert bei einem normalen ping?
was passiert wenn du auf der konsole ftp eingibst?
was passiert wenn du fetch startest?

also hotfix wuerde aber imho auch ein
Code:
129.128.5.191 ftp.openbsd.org
in der /etc/hosts reichen.
 
Guten Morgen!

@Kamikaze: Ich nehme mal an, mit "Transparentem Proxy" meinst Du den Squid - aber genau den habe ich als package installiert (konkret: squid-2.6.STABLE9-transparent-snmp.tgz). Allerdings muß ich im Browser ausdrücklich den Proxy mit port 3128 angeben. Also so richtig transparent ist das dann auch nicht... Aber immerhin geht mit dieser Einstellung FTP über den FF. Nur eben nicht von der Konsole...

@dettus: Dank für den Hinweis, daß die Dateien zerschossen sind. Da muß ich zu später Stunde irgendwie Mist gemacht haben (was auch immer bei einem cp rc.conf.local rc.conf1.txt daneben gehen mag...). Die rc.conf.local-Dateien sind auf beiden Rechnern im Orginal technisch OK - nur kann ich sie so hier im Forum nicht anhängen, sondern muß eine txt-Datei daraus machen.
Da ich im Moment nicht daheim an den OpenBSD-Boxen sitze, kann ich erst heute abend Deine Anregungen aufnehmen und natürlich korrekte Dateien senden.

Um noch einmal kurz das angegebene Beispiel mit wget aufzunehmen: Wenn ich auf einer Server-Konsole dies versuche, klappt es prima - nur nicht auf dem Laptop. Also scheint das Problem im lokalen Netz zu liegen...

DANKE, daß Ihr euch Gedanken gemacht habt!

Gruß,
SteWo
 
Guten Morgen!

@Kamikaze: Ich nehme mal an, mit "Transparentem Proxy" meinst Du den Squid - aber genau den habe ich als package installiert (konkret: squid-2.6.STABLE9-transparent-snmp.tgz). Allerdings muß ich im Browser ausdrücklich den Proxy mit port 3128 angeben. Also so richtig transparent ist das dann auch nicht... Aber immerhin geht mit dieser Einstellung FTP über den FF. Nur eben nicht von der Konsole...
Du musst halt mit PF den Verkehr zu Port 21 auf Port 3128 umleiten.
 
Port 21 auf Port 3128 umleiten

Hi Kamikaze,

Danke für den Hinweis!
Das sollte dann also etwa so aussehen:
Code:
pass in on $int_if proto tcp from any to any port 21 -> $Server port 3128

Könnte dies evtl. auch das Problem an der Konsole beheben? In /etc/services ist (aus der Erinnerung) für FTP ja der Port 21 definiert. Jetzt könnte ich mir vorstellen, daß der FTP-Verkehr auf den Squid umgebogen ist und daher zwar der Browser etwas findet (dem ich ja ausdrücklich Port 3128 für FTP genannt habe), aber bspw. wget findet nix. Aber warum funzt es dann auf dem Server???

Und warum läuft auf dem Server lt. "ps aux" überhaupt kein FTP-Server - wird der vom Squid abgefangen?

Gruß,
SteWo
 
Nix geht...

Moin, Moin!

Also, nachdem ich mir die halbe Nacht "um die Ohren" geschlagen habe, bin ich leider kein Stück weiter gekommen. Eher sogar bin ich einen Schritt zurück...

Also nach der Anregung von Kamikaze habe ich mal meine Konfigurationen noch einmal überarbeitet (oder bin ich es ...:rolleyes:). Orinetiert habe ich mich im wesentlichen an der PF-FAQ, an Daniel Hartmeiers Hinweisen und an der offiziellen Squid-Doku.

Auf dem Laptop habe ich PF deaktiviert, so daß nur noch PF auf dem Server/Firewall läuft. Vom Server kann ich nachwievor prima sowohl von der Konsole also auch aus dem Browser heraus FTP-Downloads starten. Allerdings funktioniert das mit dem transparenten Squid irgendwie nicht. Nach meiner Vorstellung sollte ich doch eigentlich in der Lage sein, im Client-Browser "Direkte Internetverbindung" anzugeben und der Squid fängt dies ab. Geht aber nicht... :confused: Nur wenn ich im Client-Browser auch den Proxy expressis verbis angebe, kommt die Verbindung zustande. Dabei habe ich die rdr-Regeln _eigentlich_ richtig aufgesetzt (aber eben nur _eigentlich_ ...).

Ping zwischen den Geräten funktioniert prima, aber ping vom OpenBSD-Laptop auf T-Online oder openbsd.org geht nicht (aber vom M$-Rechner des Filius geht es einwandfrei). Zusammen mit der notorischen Fehlermeldung bei wget
Resolving openbsd.informatik.uni-erlangen.de ... failed: no address associated with name
läßt es mich vermuten, daß die resolv.conf bei transparentem Squid irgendie anders laufen muß ...

Ich hänge mal ein paar Dateien an. Hoffe, ihr könnt da etwas herauslesen...

Vielen Dank (und Gute Nacht für den Moment...),
SteWo
 

Anhänge

  • rc_conf_local.txt
    4 KB · Aufrufe: 289
  • pfconf.txt
    1,1 KB · Aufrufe: 302
  • pfctl-s_show.txt
    4,3 KB · Aufrufe: 373
  • resolv_conf.txt
    83 Bytes · Aufrufe: 300
  • squid_conf.txt
    1,8 KB · Aufrufe: 286
Ich poste hier einfach mal Heute Abend meine pf.conf. Die ist ziemlich simpel, deckt aber dein Szenario trotzdem ab.
 
hi stewo.
auf die schnelle deine squid.conf:

#httpd_accel_host virtual
#httpd_accel_port 80
#httpd_accel_with_proxy on
#httpd_accel_uses_host_header on

die sachen müssen aktiviert sein, für einen reverse-proxy (s. squid-handbuch)

hth, marc
 
httpd_accel

#httpd_accel_host virtual
#httpd_accel_port 80
#httpd_accel_with_proxy on
#httpd_accel_uses_host_header on

die sachen müssen aktiviert sein, für einen reverse-proxy (s. squid-handbuch)

Hi marc,

danke für Deinen Hinweis: Ich hätte sicherlich schon vorher erwähnen müssen, daß beim Systemstart dazu eine Fehlermeldung kommt. Bin im Moment nicht daheim am System, aber die Meldung sagt sinngemäß "unbekannte Einstellung". Daher habe ich die Zeilen auskommmentiert, da ich davon ausging, daß dies nur bei Auslieferung eigener www-Seiten benötigt wird. Da dies nicht der Fall ist, hielt ich das auskommentieren für unschädlich.

[Edit] Der Apache wird lt. rc.conf.local jedoch gestartet. Kann ich aber erst heute abend verifizieren. In diesem Zusammenhang: Den ftpd sehe ich mit "ps aux" auf dem Server nicht, wohl aber auf dem Client.

Abgesehen davon: Du schreibst, daß dies für einen reverse-proxy nötig sei. Habe ich da die verschiedenen Begriffe durcheinander gebracht? Ich will doch eigentlich einen Transparenten Proxy? Oder geht das nur zusammen ... oder ist es eigentlich das gleiche? :confused:

Gruß,
SteWo
 
Zuletzt bearbeitet:
hallo stewo,

ich werde mal das handbuch zu den einstellungen zitieren (ich hatte das hier in der firma auf nem linux auf unterschiedlichen kisten laufen, habs aber abgestellt, da die werbung im icq nervte ;)):
httpd_accel_host virtual
diese option gibt an, an welchen host die anfrage geleitet werden soll[...] für transparente proxy gibt "virtual" an, dass der hostname aus dem "host:"-feld des headers genommen werden soll.
httpd_accel_port 80
diese option gibt[...] den port an. es gibt diese angabe nicht im http-header, daher muss der zielport hier fest vorgegeben werden. es kann hier auch nur ein port angegeben werden, der für alle zielhosts benutzt wird.
httpd_accel_with proxy on
wenn squid transparenter und normaler proxy sein soll, muss diese option angeschaltet werden
httpd_accel_uses_host_header on
mit dieser option wird squid angewiesen, das "host:"-feld aus dem http-header auszulesen und den hier angegebenen server als ziel anzusprechen. diese option *muss* bei einem transparenten proxy auf on gesetzt sein.

allerdings weiss ich nicht genau, ob das was bei deinem ftp-problem bringt, aber so wird der "standard-squid" zu einem transparenten (mit diesen optionen macht man ihn auch zu nem httpd-accelerator vor nem webserver, daher müssen diese optionen genutzt werden). der nachteil eines transparenten proxys ist, dass der browser nicht explizit den proxy-cache erneuern kann, weil er nicht weiss, das er mit nem proxy redet und der proxy liefert dann eben die seiten aus nem cache, wenn er sie dort hat.
startest du den ftpd vielleicht aus inetd heraus? dann siehst du den prozess natürlich nicht.
wir setzen hier den ftp-proxy von pf ein, für die ftp-geschichten. ich weiss allerdings nicht, ob der gleichzeitig als reverse-proxy und normaler proxy genutzt werden kann (deine startparameter sagen ihm, er soll als reverseproxy arbeiten)
 
transparenter Squid und PF

Hi marc,

vielen Dank für die Zeit, die Du Dir genommen hast!

Ich werde heute abend mal die genaue Fehlermeldung des boot-Protokolls heraussuchen, mit der das System diese Parameter anmeckert. Weiterhin habe ich mir überlegt, daß ich den Squid noch einmal neu aus den ports übersetzen werde. Vielleicht ist ja beim Upgrade auf 4.1 irgendwo etwas schief gelaufen...

Die inetd.conf hatte ich nicht zusätzlich gepostet, da darin alle FTP-bezogenen Zeilen auskommentiert sind. Über die rc.conf.local wird dann der ftpd mit der Option "-D" gestartet. Muß ich dann zusätzlich via rc.local etwas anstoßen???

Weiterhin irritiert mich mächtig, daß der Client auf Konsolenebene die Adressen nicht auflösen kann... Die gepostete resolv.conf ist auf Server und Client identisch.

Und schließlich werde ich Kamikazes pf.conf analysieren (@Kamikaze: Schon einmal DANKE dafür!). Habe mir eben noch einmal die Firewall-Regeln aus dem Wiki ausgedruckt, damit ich die dann heute abend ebenfalls zur Hand habe.

Gruß,
SteWo
 
wegen dem dns kannst du mit tcpdump auf den interfaces dir mal anschauen, was da abgeht. ich hatte das problem mal, als ich mit altq experimentiert habe, das der router nichts mehr ins interne netz lassen durfte (der macht bei mir auch den dns-server) und ich hab auch nen bischen gebraucht, bis ich den fehler gefunden hatte. habe aber altq im moment noch deaktiviert, bis ich mal zeit hab, mir das mit den begrenzungen mal richtig auszuloten; ansonsten ist der downstream zu gering.
 
Kein httpd_accel nötig

#httpd_accel_host virtual
#httpd_accel_port 80
#httpd_accel_with_proxy on
#httpd_accel_uses_host_header on

die sachen müssen aktiviert sein, für einen reverse-proxy (s. squid-handbuch)

Hi marc,

ich habe die Mittagspause genutzt, um im Squid-Handbuch noch einmal nachzulesen. Diese Einstellungen brauche ich nicht, da auch meinem System Squid in der Version 2.6 läuft! Sie hier. Jetzt muß es danach nur noch heißen (auf mein System angepaßt):
Code:
http_port 192.168.10.50:3128 transparent
Das steht so noch nicht in Daniel Hartmeiers Anleitung.
Bei mir steht allerdings derzeit verkürzt:
Code:
http_port 3128 transparent
IMHO sollte dies identisch sein, aber ich werde mal heute abend die Langfassung einstellen.

Gruß,
SteWo
 
Locher für die Füße

warum? warum schießt du dir selbst in die füße?

auf bald
oenone

Hi oenone,

die Einstellung habe ich mal aus der Filterregeln übernommen, die hier im Wiki angeboten werden. Dort steht der Hinweis, daß dies die Resourcen etwas schont. Und da die Kiste nun auch bald 10 Jährchen auf dem Buckel hat, fand ich den Gedanken erst einmal nicht schlecht. Was ist das Problem damit?

Danke und Gruß,
SteWo
 
man pf.conf schrieb:
aggressive
Aggressively expire connections. This can greatly reduce the
memory usage of the firewall at the cost of dropping idle
connections early.

okay, ich hatte bisher nur squid 2.5 im einsatz. da die anscheinend einiges an den configs geändert haben, werde ich das auch erst ändern, wenn ich zeit habe, mir das ein wenig anzusehen...
 
... greatly reduce the memory usage of the firewall at the cost of dropping idle connections early

Mmmh ... das klingt für mich im Kontext dieses Threads erst einmal nicht fürchterlich dramatisch: Da auf der Kiste neben PF nun mal auch noch diverse andere Serverdienste bereitgestellt werden, vermag ich nicht unmittelbar die negativen Konsequenzen zu erkennen. Warum sollte dies den Squid blockieren? Oder die Namensauflösung auf dem Client? <Wunder/>

Cheers,
SteWo
 
ftp-proxy broken?

Hi,

ich habe mal schnell auf MARC die misc@-Mailings nach ftp durchsucht. Und das erste gefundene Posting war von Stuart Henderson zum Thema "NAT / FTP - specific server".
I'd say the server is probably broken here - it seems odd that it should open the data connection before it's told to
Ob dies auch mein Problem ist... :confused:

Cheers,
SteWo
 
Code:
ext_if="ed0"	# replace with actual external interface name i.e., dc0
int_if="fxp0"	# replace with actual internal interface name i.e., dc1
internal_net="192.168.1.0/24"
internal_addr="192.168.1.11"
external_addr="172.20.15.152"
forbidden_if="{ ed0, tun0 }"
proxy_ports="{ http, ftp }"
proxy="127.0.0.1 port 3128"

# Normalization: reassemble fragments and resolve or reduce traffic ambiguities.
scrub in all

# Translation: specify how addresses are to be mapped or redirected.
nat on $ext_if from $internal_net to any -> ($ext_if)

rdr on $int_if proto tcp from $internal_net to any port $proxy_ports -> $proxy

pass in on $int_if inet proto tcp from any to 127.0.0.1 port 3128 keep state
pass in on $int_if all
pass out quick on $int_if all

block in on $forbidden_if all
pass out all keep state
Hier ist meine recht simple config, vielleicht hilft das ja weiter.
 
Zurück
Oben