Avatar billede sorenmh Nybegynder
22. maj 2002 - 23:04 Der er 40 kommentarer og
1 løsning

FTP Access

Jeg har en firewall sat op med IPTables, som kører ok - men jeg har følgende problem: Man kan ikke få adgang til min FTP udefra, man kan forbinde men ikke få directory listing eller noget som helst.

Jeg er godt klar over at FTP er meget usikkert at køre udefra sit lokale netværk, men jeg har brug for at køre det.

Hvilke kommandoer skal jeg køre på min IPTables for at give adgang til min FTP?
Avatar billede sorenmh Nybegynder
23. maj 2002 - 00:51 #1
Her er min configfil, den er noget rodet, da den er genereret af iptables selv, men mon ikke det går:

# Generated by iptables-save v1.2.3 on Thu May 23 00:07:16 2002
*nat
:PREROUTING ACCEPT [13107:857837]
:POSTROUTING ACCEPT [241:32725]
:OUTPUT ACCEPT [235:32341]
[1070:68275] -A POSTROUTING -s 192.168.0.0/255.255.255.0 -d ! 192.168.0.0/255.255.255.0 -j SNAT --to-source 80.196.115.86
COMMIT
# Completed on Thu May 23 00:07:16 2002
# Generated by iptables-save v1.2.3 on Thu May 23 00:07:16 2002
*mangle
:PREROUTING ACCEPT [4372416:190227261]
:OUTPUT ACCEPT [6619449:9079123636]
[0:0] -A PREROUTING -m state --state INVALID -j DROP
COMMIT
# Completed on Thu May 23 00:07:16 2002
# Generated by iptables-save v1.2.3 on Thu May 23 00:07:16 2002
*filter
:INPUT DROP [153:30985]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [6619274:9079096036]
:block - [0:0]
[291:492190] -A INPUT -i lo -j ACCEPT
[4346351:183721299] -A INPUT -i eth1 -j ACCEPT
[0:0] -A INPUT -d 80.196.115.86 -p tcp -m tcp --dport 22 -j ACCEPT
[820:91635] -A INPUT -d 80.196.115.86 -p tcp -m tcp --dport 80 -j ACCEPT
[188:9955] -A INPUT -d 80.196.115.86 -p tcp -m tcp --dport 21 -j ACCEPT
[0:0] -A INPUT -d 80.196.115.86 -p tcp -m tcp --dport 20 -j ACCEPT
[0:0] -A INPUT -d 192.168.0.10 -p udp -m udp --dport 514 -j DROP
[0:0] -A INPUT -d 192.168.0.10 -p tcp -m tcp --dport 901 -j DROP
[0:0] -A INPUT -d 192.168.0.10 -p tcp -m tcp --dport 515 -j DROP
[285:47363] -A INPUT -j block
[24285:5848622] -A FORWARD -j block
[0:0] -A FORWARD -j LOG
[23327:5795445] -A block -m state --state RELATED,ESTABLISHED -j ACCEPT
[1090:69555] -A block -i eth1 -m state --state NEW -j ACCEPT
COMMIT
# Completed on Thu May 23 00:07:16 2002
Avatar billede langbein Nybegynder
23. maj 2002 - 16:06 #2
Kjør følgende kommandoer og legg ut det svaret som kommer:
"iptables -L"
"iptables -t nat -L"
Det gir en bedre satus for din firewall.

Når det gjelder den ftp server som skal nås, ligger den på selve firewall maskinen eller på en egen server innefor firewall ?
(Framgangsmåten blir en del forskjellig av hengig av hvor ftp
server kjører.)
Avatar billede sorenmh Nybegynder
23. maj 2002 - 16:09 #3
[root@Vision root]# iptables -L
Chain INPUT (policy DROP)
target    prot opt source              destination       
ACCEPT    all  --  anywhere            anywhere         
ACCEPT    all  --  anywhere            anywhere         
ACCEPT    tcp  --  anywhere            0x50c47356.arcnxx9.adsl-dhcp.tele.dktcp dpt:ssh
ACCEPT    tcp  --  anywhere            0x50c47356.arcnxx9.adsl-dhcp.tele.dktcp dpt:http
ACCEPT    tcp  --  anywhere            0x50c47356.arcnxx9.adsl-dhcp.tele.dktcp dpt:ftp
ACCEPT    tcp  --  anywhere            0x50c47356.arcnxx9.adsl-dhcp.tele.dktcp dpt:ftp-data
DROP      udp  --  anywhere            192.168.0.10      udp dpt:syslog
DROP      tcp  --  anywhere            192.168.0.10      tcp dpt:swat
DROP      tcp  --  anywhere            192.168.0.10      tcp dpt:printer
block      all  --  anywhere            anywhere         
ACCEPT    all  --  anywhere            anywhere         

Chain FORWARD (policy DROP)
target    prot opt source              destination       
block      all  --  anywhere            anywhere         
LOG        all  --  anywhere            anywhere          LOG level warning

Chain OUTPUT (policy ACCEPT)
target    prot opt source              destination       

Chain block (2 references)
target    prot opt source              destination       
ACCEPT    all  --  anywhere            anywhere          state RELATED,ESTABLISHED
ACCEPT    all  --  anywhere            anywhere          state NEW
[root@Vision root]# iptables -t nat -L
Chain PREROUTING (policy ACCEPT)
target    prot opt source              destination       
DNAT      tcp  --  anywhere            0x50c47356.arcnxx9.adsl-dhcp.tele.dkmultiport dports 4661,4662,4663,4664,4665,4667 to:192.168.0.1

Chain POSTROUTING (policy ACCEPT)
target    prot opt source              destination       
SNAT      all  --  192.168.0.0/24      !192.168.0.0/24    to:80.196.115.86

Chain OUTPUT (policy ACCEPT)
target    prot opt source              destination       
[root@Vision root]#
Avatar billede sorenmh Nybegynder
23. maj 2002 - 16:11 #4
FTP serveren ligger på samme maskine... Jeg har også problemer med at modtage filer via. ICQ, eDonkey og mIRC... Der har jeg så forsøgt at DNAT'te portene: 4661,4662,4663,4664,4665,4667 - men jeg kan stadig ikke modtage filer.
Avatar billede langbein Nybegynder
23. maj 2002 - 16:57 #5
Helt ærlig .. synes ikke dette ser ut til å henge helt sammen.
Først så setter du policy til DROP slik at alle porter lukker, så i neste
så åper du alle porter to ganger:

Chain INPUT (policy DROP)
target    prot opt source              destination       
ACCEPT    all  --  anywhere            anywhere         
ACCEPT    all  --  anywhere            anywhere     

Der etter så følger en hel del regler som muliggens ikke har noe funksjon.

Skal ICQ osv kjøre på samme maskin ? I så fall så skulle ikke DNAT ha noen mening, vil jeg mene. (Forwarding til server bak firewall.)

Hvordan har dette (firewallen) blitt blitt satt opp, ved hjelp av grafisk konfigureringsverktøy eller hva ?

Synes det likner litt at du har behov for å sette det hele opp på nytt.
Avatar billede sorenmh Nybegynder
23. maj 2002 - 17:05 #6
Ja, det er vist noget skidt det jeg har sat op her.

Jeg har min server som skal fungere som router/firewall, webserver og ftpserver.

Den har 2 netkort det ene er internet (eth0) det andet er lokalnet (eth1).

Der skal være plads til mange computere på mit netværk.

På de andre computere har jeg brug for at kunne køre de mest almindelige ting (www, ftp, irc osv.), men der er også nogen på netværket der ønsker at køre eDonkey, Kazaa ol. - Det kører skam også udemærket så længe at man ønsker at hente filer fra andre, men lige så snart at andre ønsker at hente filer fra folk på netværket, så lukker det til. Det samme gælder for ICQ.

Kan du hjælpe mig med at sætte min firewall op? Hvis du kan levere et script som kan få det hele til at fungere 100% korrekt, så kan jeg godt afsætte ekstra point til dig.

Serveren har IP'en 80.196.115.86/192.168.0.10.
Avatar billede langbein Nybegynder
23. maj 2002 - 17:18 #7
Noe av det du spør etter er ganske realistisk og standard å sette opp. Andre ting har en litt usikker status. (eDonkey, Kazaa) Vet ikke hva dette er. Hvis det dreier seg om ting som kjører fra innsiden av nettverket og ut så kan det vel kanskje gå bra. Skal forsøke å se på tingne og legge ut et par forslag. Når du legger ut den virkelige ip sammen med en opplysninger om firewall så kan det bli litt enkelt for hackere. Hvis det bare er en server for uttesting så spiller det vel kanskje ikke så stor rolle. Hvis det dreir seg om en dynamisk ip som du kan skifte ut så er det jo også så og si problemfritt.
Avatar billede langbein Nybegynder
23. maj 2002 - 17:31 #8
Realistisk å få til:

FTP server på firewall maskin: ok (Ikke en sikkerhetsmessig optimal løsning, men for testing ok.
Web server på firewall maskin: ok.
Web browsing og ftp fra innvendige workstations og ut til omverdenen: ok
irc innefra og ut pleier også å gå bra.

Dersom det er snakk om å sette opp server funksjoner på innvendige workstations så kan dette ha en mer usikker status, dvs det vil kunne kreve ganske mye utvikling og uttesting.

(De tingene som er "standard" kan stort sett hentes ut av håndbøker. De tingene som ikke står beskrevet noen steder må kanskje utvikles linje for linje og det kan ta dager og måneder før det kjører som det skal.)
(Diskuterte med en som hadde skrevet en bok om Linux firewall. Han hadde brukt ca 6 mnd på heltid bare for uttesting, og det meste som står i boken hans er faktisk forholdsvis ordinære ting.)

Å få de ordinære standard ting til å fungere er en ting. Å skreddersy mere spesielle ting for "å få det hele til å kjøre 100% korrekt" det kan fort komme til å dreie seg om ganske mye tid og uttesting.

Det du nevner om å ha mange PC er på nettverket er problemfritt. Det er en standard ting så lenge det dreier seg om standard funksjoner.
Avatar billede sorenmh Nybegynder
23. maj 2002 - 17:37 #9
Hvis du kan give mig et script som kan få de ting du nævner til at fungere, så er pointene dine.

Mht. sikkerheden, serveren er blevet omkonfigureret siden, den skulle ikke være nær så usikker mere.
Avatar billede langbein Nybegynder
23. maj 2002 - 18:36 #10
Skal forsøke å få sett litt på dette. Har firewall bøkene hjemme.
Hvis man bygger opp tingene trinn for trinn så kan man saktens få det til å fungere. Problemet for enkelte som har lagt ut spørsmål her tidligere det har vært at de har ønsket å få alle mulige ting til å fungere samtidig ut i fra null jobbing. Vil forsøke å legge ut noen forholdsvis enkle eksempelscript som fikser de grunnleggende tingene.
Avatar billede sorenmh Nybegynder
23. maj 2002 - 18:49 #11
Det er skam ikke fordi at jeg ikke har brugt tid på det her... Jeg har selv sat mig ind IPchains, men så mente jeg at jeg ville udvide min horisont + at jeg mente ikke at det kørte optimalt.

Jeg har også haft en udemærket firewall til at køre, som virkede ganske udemærket med de mest almindelige ting, men udefrakommende havde ikke adgang til min FTP, hvilket er altafgørende. Jeg har behov for at kunne give min makker adgang til en række filer i forbindelse med et projekt jeg arbejder på som skal være færdigt om ganske kort tid.

Så det er skam ikke fordi at jeg ikke har tålmodighed til at sætte mig ind i tingene - Jeg er bare forholdsvis newbie på linux platformen og har, hvis jeg selv skulle sige det udviklet min viden på det område enormt meget indenfor de sidste 2 måneder.

Men jeg håber at du kan give mig et godt bud på en konfiguration.
Avatar billede swiff Nybegynder
23. maj 2002 - 20:29 #12
Hihi - Når serveren på den måde er bag firewall, skal ftp-klienten som bare sættes til at køre i passiv istedet for aktiv. Dette er som regel under indstillinger for proxy
Avatar billede swiff Nybegynder
23. maj 2002 - 20:31 #13
Eller du kan åbne for samtlige porte over 10000 (tror jeg nok det er) - For i aktiv prøver ftp-serveren at åbne en vilkårlig ledig port...
Avatar billede langbein Nybegynder
23. maj 2002 - 21:37 #14
"Hihi - Når serveren på den måde er bag firewall,"
Det stemmer muliggens ikke helt. Hvis man er bak firewall og firewall er satt opp med snat (source nat) så stemmer det, men der er vel foreløpig ikke tilfellet. Firewallen inn til server har foreløpig en noe uklar status og da kan man til tider tilfeldigvis få hva som helst til å fungere. Dette gir dog ikke en sikkerhet på et "ordinært nivå". Vil forsøke å legge ut de grunnleggende tingene trinn for trinn. Det finnes ellers også eksempelscript man kan se på:
http://www.linuxguruz.org/iptables/
Avatar billede swiff Nybegynder
23. maj 2002 - 21:40 #15
langbein, prøv at lave en lille test med det :)

Den er god nok - Hvis du bare åbner for port 21 (data control) og port 20 (aner det ikke - men skal bruges til ftp), så virker det ikke medmindre du er i passiv (og altså ikke bruger PORT-kommandoen).
Avatar billede langbein Nybegynder
23. maj 2002 - 21:48 #16
Passive mode og active mode ftp er vel bare en liten del av den totale problemstilling rundt det å sette opp en Linux firewall med et ok sikkerhetsnivå ? Hvis firewall i utgangpunktet har et noe problematisk oppsett så må man vel først "rydde opp" litt og få det hele "på spor" før man begynner å jobbe med detaljer rundt det å åpne for de forskjellige porter og/eller services ?? swiff -> Det kan godt være det er rett det du sier (husker ikke), men sammenhengen ..
Avatar billede langbein Nybegynder
23. maj 2002 - 21:50 #17
Jeg vil forresten forsøke å sjekke opp det med port 20 - husker som sagt ikke alle detaljer men har en del dokumentasjon.
Avatar billede langbein Nybegynder
23. maj 2002 - 21:53 #18
sviff -> bli gjerne med på diskusjon. Sitter man bare og leser så husker man 0,5 % Litt diskusjon og ideer så husker man en hel del mer.
Avatar billede swiff Nybegynder
23. maj 2002 - 22:14 #19
hehe :)
Avatar billede sorenmh Nybegynder
24. maj 2002 - 13:29 #20
Nu er det lidt svært for mig at teste om min FTP er tilgængelig udefra, men jeg har lavet PHP script som jeg har uploadet på en anden server som jeg har til at tjekke om det kan logge ind, det kan det godt, men det kan stadig ikke få directory listing.

Hvad er det forskellen er på active og passive FTP adgang?
Avatar billede swiff Nybegynder
24. maj 2002 - 14:11 #21
active, er når ftp-serveren har "lov" til at åbne en port over 10000 (tror det er 10000). Passiv, er hvis ftp-serveren kun bruger port 20+21 (standard)
Avatar billede langbein Nybegynder
24. maj 2002 - 20:02 #22
active og passive ftp mener jeg har å gjøre med rollefordelingen mellom klient og server hvem som er "den aktive part" og så og si "kontrollerer trafikken". Det er godt mulig at det benyttes forskjellige porter.

Har lagt ut litt info på dette spørsmålet:
http://www.eksperten.dk/spm/215654

Vil forsøke å få tid til å se litt på dette spørsmålet her i løpet av weekenden.
Avatar billede langbein Nybegynder
25. maj 2002 - 00:24 #23
swiff -> portnumrene dine ser ut til å være korrekte. Fant en ganske bra artikkel her:
http://slacksite.com/other/ftp.html
Avatar billede langbein Nybegynder
25. maj 2002 - 00:29 #24
.. Nesten. Prinsippene du beskriver er noenlunde rette. Dette er vel stadig vekk bare en del av den totale firewall problematikk ?! :)
Avatar billede swiff Nybegynder
25. maj 2002 - 12:15 #25
langbein, tjoe :)
Avatar billede langbein Nybegynder
25. maj 2002 - 12:17 #26
Active / passive ftp, funksjonalitet:

Active mode FTP:

1. Klient: Sender request til port 21 hos på server.
2. Server: Sender svar fra port 21 på server til port høyere enn 1024 hos klient.
3. Server: Sender nytt svar fra port 20 til port h e 1024 hos Klient.
4. Klient: Sender svar til port 20 på server.

Passive mode ftp:
1. Klient: Sender request til port 21 på server.
2. Server: Sender svar til port høyere enn 1024 hos klient.
3. Klient: Sender ny request til port høyere enn 1024 hos server.
4. Server: Sender svar tilbake til port høyere enn 1024 hos klient.

En ting jeg er litt usikker på: Blir alle port høyere enn 1024 adresseringen satt til en vilkårlig port hos klient / server. Har ikke lest særlig grundig om dette, men tror at porten settes vilkårlig, altså ingen fast eller forutsigbar port.
Avatar billede swiff Nybegynder
25. maj 2002 - 12:20 #27
langbein, det gør de
Avatar billede langbein Nybegynder
25. maj 2002 - 13:01 #28
#!/bin/bash

# Sette til forwarding
echo 1 > /proc/sys/net/ipv4/ip_forward

# Laste ekstra kernel modul for ftp
modprobe ip_contrack_ftp

# Bruker denne i en firewall, men må den være der ?
CONNECTION_TRACKING = 1

# Flushe chains
iptables --flush
iptables -t nat --flush
iptables -t mangle --flush

# Sette policies
iptables --policy INPUT DROP
iptables --policy OUTPUT ACCEPT
iptables --policy FORWARD ACCEPT

# Diverse aapninger i input chain
iptables -A INPUT -p tcp -dport 20 -j ACCEPT
iptables -A INPUT -p tcp -dport 21 -j ACCEPT
iptables -A INPUT -p tcp -dport 80 -j ACCEPT
iptables -A INPUT -p tcp -dport 1024:65535 -j ACCEPT

# Deling av statisk internettforbindelse:
iptables -t nat -A POSTROUTING -0 eth0 -j SNAT --to-source <ekstern ip>

sorenmh -> kan du testkjøre litt og legge en beskjed !?


Firewall over er ikke spesiel sikker men mer enkel og funksjonell, noe å komme i gang med.

Forutsetninger:
1. Statisk ekstern ip.
2. Web server og ftp server på firewall maskin. (Ikke en sikkerhetsmessig god løsning men for testing og læring ok)
3. Internett brukere bak firewall som deler felles internettlinje.
Avatar billede langbein Nybegynder
25. maj 2002 - 13:22 #29
Noen småfeil rettet:

#!/bin/bash

# Sette til forwarding
echo 1 > /proc/sys/net/ipv4/ip_forward

# Laste ekstra kernel modul for ftp
modprobe ip_conntrack_ftp

# Bruker denne i en firewall, men må den være der ?
CONNECTION_TRACKING = 1

# Flushe chains
iptables --flush
iptables -t nat --flush
iptables -t mangle --flush

# Sette policies
iptables --policy INPUT DROP
iptables --policy OUTPUT ACCEPT
iptables --policy FORWARD ACCEPT

# Diverse aapninger i input chain
iptables -A INPUT -p tcp -dport 20 -j ACCEPT
iptables -A INPUT -p tcp -dport 21 -j ACCEPT
iptables -A INPUT -p tcp -dport 80 -j ACCEPT
iptables -A INPUT -p tcp -dport 1024:65535 -j ACCEPT

# Deling av statisk internettforbindelse:
iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source <ekstern ip>

sorenmh -> kan du testkjøre litt og legge en beskjed !?
Avatar billede sorenmh Nybegynder
25. maj 2002 - 18:30 #30
Jeg kunne ikke køre scriptet, men jeg har indtastet kommandoerne + at jeg har sat eth1 til ACCEPT på alle områder.

Denne her fatter jeg ikke helt, hvad er det?
CONNECTION_TRACKING = 1

Den ser mærkelig ud og den kan heller ikke køres.
Avatar billede langbein Nybegynder
26. maj 2002 - 12:49 #31
"CONNECTION_TRACKING = 1"
Nei, jeg fatter den ikke helt selv heller. Den finnes på en firewall som jeg har kjørende og den er opprinnelig hentet fra boken: Robert Ziegler, second editoin. Det er sannsynligvis bare en variabel som i dette scriptet ikke har noen funksjon, slik at den kan utgå. (En ubrukt variabel skulle vel på den annen side ikke medføre noen problemer ?) Husket ikke sikkert, så jeg lot den stå. Skal forsøke å få tid til å kjøre testing av scriptet i dag. Jeg vil tro at den største sikkerhetsmessige svakhet ligger i mangelen på kontroll av utgående trafikk. Det kan imidlertid "bygges ut" eller legges til etter hvert. Er heller ikke helt bombe sikker på om du behøver å kjøre: "modprobe ip_conntrack_ftp". Det kommer vel an på hvordan kernel er kompilert hvovidt det er behov for dynamisk loading av denne kernel modulen. (Dette står i min firewall som kjører på Red Hat 7.2)
Ellers litt å la seg inspirere av:
http://www.linuxguruz.org/iptables/
Vil forsøke å få kjørt eksempel/start firewallen i løpet av dagen, og eventuelt rette opp feil.
Avatar billede langbein Nybegynder
26. maj 2002 - 13:30 #32
Har akkurat testkjørt denne (Det var skrivefeil i den over.) Web og FTP access fungerer. Har bare testet ftp i passive mode. Av en eller annen grunn så kjører ftp påloggingen ganske seint, men den fungerer.
"CONNECTION_TRACKING = 1" er tatt vekk. Har ikke testet snat setningen (på grunn av at jeg tester på en server som står bak en egen firewall maskin.)
Sjekker hvordan den er satt opp på firewall maskinen.

Altså testet og virker (copy - paste):

#!/bin/bash

# Sette til forwarding
echo 1 > /proc/sys/net/ipv4/ip_forward

# Laste ekstra kernel modul for ftp
modprobe ip_conntrack_ftp

# Bruker denne i en firewall, men m?den v?e der ?
# CONNECTION_TRACKING=1

# Flushe chains
iptables --flush
iptables -t nat --flush
iptables -t mangle --flush

# Sette policies
iptables --policy INPUT DROP
iptables --policy OUTPUT ACCEPT
iptables --policy FORWARD ACCEPT

# Diverse aapninger i innput chain
iptables -A INPUT -p tcp --dport 20 -j ACCEPT
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 1024:65535 -j ACCEPT
Avatar billede langbein Nybegynder
26. maj 2002 - 13:45 #33
Med tillegg for delt internett forbindelse:
(Hvorfot ftp pålogging passive mode kjører så langsomt det vet jeg ikke
helt, men tror active mode kjører greit nok. Kan du teste det ?)


#!/bin/bash

# Sette til forwarding
echo 1 > /proc/sys/net/ipv4/ip_forward

# Laste ekstra kernel modul for ftp
modprobe ip_conntrack_ftp

# Flushe chains
iptables --flush
iptables -t nat --flush
iptables -t mangle --flush

# Sette policies
iptables --policy INPUT DROP
iptables --policy OUTPUT ACCEPT
iptables --policy FORWARD ACCEPT

# Diverse aapninger i innput chain (lokalt til firewall / server prosesser)
iptables -A INPUT -p tcp --dport 20 -j ACCEPT
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 1024:65535 -j ACCEPT

#Delt internettforbindelse, rediger inn ekstern ip samt "rett kort ut".
iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source <ekstern ip>
Avatar billede langbein Nybegynder
26. maj 2002 - 13:50 #34
Kjør også kommandoer
"iptables -L"
og
"iptables -t nat -L"
Og sjekk at du har fått opp riktige firewall rules.
Den første gir status for trafikk til fra firewall / server maskinen.
Den neste gir status for trafikk til fra servere/arbeidstasjoner bak firewall.
Legg ut status her, men rediger gjerne om den eksterne ip slik at denne er "anonymisert" av hensyn til eventuelle hackerangrep.
Avatar billede langbein Nybegynder
26. maj 2002 - 14:58 #35
Det viser seg at CONNECTION_TRACKING ikke er en deklarert variabel, men en systemvariabel. Har ikke helt 100% oversikt over bruken men syntaks er slik CONNECTION_TRACKING="1" Mulig at det får opp speeden på ftp pålogging litt. (og Ziegler bruker den i boken sin) Scriptet blir da:

#!/bin/bash

# Sette til forwarding
echo 1 > /proc/sys/net/ipv4/ip_forward

# Laste ekstra kernel modul for ftp
modprobe ip_conntrack_ftp

# Saa den mystiske sysemvariabel
CONNECTION_TRACKING="1"

# Flushe chains
iptables --flush
iptables -t nat --flush
iptables -t mangle --flush

# Sette policies
iptables --policy INPUT DROP
iptables --policy OUTPUT ACCEPT
iptables --policy FORWARD ACCEPT

# Diverse aapninger i innput chain (lokalt til firewall / server prosesser)
iptables -A INPUT -p tcp --dport 20 -j ACCEPT
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 1024:65535 -j ACCEPT

#Delt internettforbindelse, rediger inn ekstern ip samt "rett kort ut".
iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source <ekstern ip>
Avatar billede langbein Nybegynder
26. maj 2002 - 16:23 #36
Har testkjørt litt mere og funnet ut av den langsomme ftp påloggingen:
Det kjører nå 100 % både i passive og active ftp mode. (Web server har hele tiden kjørt ok)

Grunnen til at tingene kjørte dårlig viste seg å være:

1. Banalt nok: Jeg hadde glemt å sette opp web browser til å kjøre i passive mode.
2. Viktigere: Det viste seg kommunikasjonen over port 1024 også kjører udp protokoll under pålogging. (Pussig nok for det finner jeg ikke dokumentert noe sted.)

De tingene du spurte om dvs deling av internettlinje (nat), ftp server og web server på firewall maskin skal nå kjøre greit. Gjetter på at irc og en del av de andre tingene du spurte etter også vil vise seg å kjøre ok (?)

Skal du ha en firewall med noe høyere sikkerhet så bør du bruke en egen firewall maskin og ftp/web server på egen maskin bak firewall.

Revidert og testkjørt script følger under:
Avatar billede langbein Nybegynder
26. maj 2002 - 16:37 #37
#!/bin/bash

# Sette til forwarding
echo 1 > /proc/sys/net/ipv4/ip_forward

# Laste ekstra kernel modul for ftp
modprobe ip_conntrack_ftp

CONNECTION_TRACKING="1"

# Flushe chains
iptables --flush
iptables -t nat --flush
iptables -t mangle --flush

# Sette policies
iptables --policy INPUT DROP
iptables --policy OUTPUT ACCEPT
iptables --policy FORWARD ACCEPT

# Diverse aapninger i innput chain
iptables -A INPUT -i eth0 -p tcp --dport 20 -j ACCEPT
iptables -A INPUT -i eth0 -p tcp --dport 21 -j ACCEPT
iptables -A INPUT -i eth0 -p tcp --dport 80 -j ACCEPT

iptables -A INPUT -i eth0 -p tcp -d 152.93.70.168 --dport 1024:65535 -j ACCEPT
iptables -A INPUT -i eth0 -p udp -d 152.93.70.168 --dport 1024:65535 -j ACCEPT

#Delt internettforbindelse, rediger inn ekstern ip samt "rett kort ut".
iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source <ekstern ip>
Avatar billede sorenmh Nybegynder
28. maj 2002 - 15:52 #38
Langbein >> Tak for dit script, jeg tror faktisk det meste virker ganske ok nu. Jeg har selv fundet nogle andre ting til at udbygge min firewall, men der er mere styr på den nu.

iptables -t nat -A PREROUTING -d 80.196.115.86 -p tcp --dport 4661 -j DNAT --to 192.168.0.1
iptables -t nat -A PREROUTING -d 80.196.115.86 -p tcp --dport 4662 -j DNAT --to 192.168.0.1
iptables -t nat -A PREROUTING -d 80.196.115.86 -p udp --dport 4665 -j DNAT --to 192.168.0.1

Disse ovenstående kommandoer giver adgang til eDonkey for 192.168.0.1, men kan man lave sådan at alle kan få adgang til eDonkey, altså fra alle IP'er - Jeg har prøvet at bare sige ACCEPT til disse porte i forard kæden, synes ikke rigtigt det virkede.

Jeg tester lige lidt ekstra, har ikke fået testet dit sidste indlæg, så skal du få dine point.
Avatar billede langbein Nybegynder
29. maj 2002 - 20:12 #39
De prerouting setningene du har satt opp ser ut til å virke på den måte at requester til ip 80.196.115.86 port 4661:4665 blir videresendt til intern ip 192.168.0.1 og det er vel meningen. (En enkel port for å teste ut om prerouting virker er port 80, altså en web server inn på LAN hvie du har det.)


"giver adgang til eDonkey for 192.168.0.1" Nei slik skal det vel ikke virke (??!). Tvert i mot alle requester til 80.196.115.86 port xx (fra "utsiden") blir videresendt til intern ip 192.168.0.1

FOWARD står allerede til ACCEPT via default policy.

"Jeg har prøvet at bare sige ACCEPT til disse porte i forard kæden, synes ikke rigtigt det virkede." Det skulle være helt unødvendig med mindre du setter policy (default regel) til drop for FORWARD policy. (Håper jeg husker rett, har ingen dokumentasjon her.)
Avatar billede sorenmh Nybegynder
20. december 2002 - 22:41 #40
Det er ved at være noget tid siden at jeg sidst var Eksperten kan jeg se, kan ikke huske om det var din hjælp der hjalp mig, men jeg fik det da til at køre til sidst.

Pointene er dine Langbein.
Avatar billede langbein Nybegynder
20. december 2002 - 23:21 #41
Ja, det er lenge siden .. takker :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester