cesam Skrevet 27. oktober 2011 Del Skrevet 27. oktober 2011 Hei Jeg strever med iptables kommandoene. Jeg har prøvd mange forskjellige måter å skrive dem på men jeg for det ikke til å funke. Jeg vil at brannmuren skal stenge for all input, output og all forwarding, slik at jeg kan kun slippe igjennom det jeg vil: ssh, http, https, dns, vnc, rdp og icmp. Noen som kunne tenke seg å se på et script? Lenke til kommentar
BlueEAGLE Skrevet 27. oktober 2011 Del Skrevet 27. oktober 2011 Jeg anbefaler Shorewall. Den er veldig fleksibel og mye enklere å bruke enn å sette opp egne tabeller. Lenke til kommentar
cesam Skrevet 27. oktober 2011 Forfatter Del Skrevet 27. oktober 2011 Jeg anbefaler Shorewall. Den er veldig fleksibel og mye enklere å bruke enn å sette opp egne tabeller. Takk for svar. Interessant, den skal jeg teste ut. Men jeg prøver å lære meg routing og hvordan dette funker, så det er mest for å skjønne dette at jeg bruker et iptables script. Lenke til kommentar
krrm Skrevet 27. oktober 2011 Del Skrevet 27. oktober 2011 Da jeg hadde brannmur kjørende på serveren min brukte jeg fwbuilder til å lage scriptene. Syntes den var ganske grei da, men det er noen år siden jeg har prøvd den. 1 Lenke til kommentar
BlueEAGLE Skrevet 27. oktober 2011 Del Skrevet 27. oktober 2011 Vel, du trenger ikke bruke assemblerkode for å lære deg programmering (ja, det er å trekke det langt). Med Shorewall så setter du først opp grensesnitt (les nettverkskort), så definerer du soner og knytter sonene mot grensesnitt, så definerer du grunnregler (policy) for sonene til slutt lager du unntak (regler) som gjør at trafikk oppfører seg anneledes en policy. Etter at du har installert Shorewall så finner du gode eksempler i /usr/share/docs/shorewall/examples og manualen på nett inneholder mange gode eksempel. Forskjellen på å sette opp Shorewall fremfor å lage IP-Tables skript for hånd er at syntaksen er mer oversiktlig. Når det gjelder routing så gjøres dette som oftest hovedsaklig igjennom grunnregler av typen #SOURCE DEST POLICY LOG LEVEL LIMIT:BURST $FW net ACCEPT $FW loc ACCEPT $FW rem ACCEPT loc net ACCEPT loc $FW ACCEPT loc rem ACCEPT rem $FW ACCEPT rem loc ACCEPT net all DROP info # The FOLLOWING POLICY MUST BE LAST all all REJECT info Her har jeg definert fire soner. $FW er brannveggen, altså maskinen hvor Shorewall kjører loc er det lokale nettet hos meg rem er nettet hos en kamerat som er koblet til via VPN net er internet Som du ser så er trafikk fra @FW til alle andre tillat. Trafikk fra loc til alle andre er tillat. Trafikk fra rem til $FW og til loc er tillat (men ikke til net da han har sin egen gateway og ikke skal gå igjennom meg) og trafikk fra net til alle blir kastet ut av vinduet. Når det gjelder regelsett så har jeg her satt opp unntak som gir net tilgang til tjenester på $FW. Ideelt sett så skulle disse kjørt på en dmz, men det ble overkill for mitt nett. #ACTION SOURCE DEST PROTO DEST SOURCE ORIGINAL RATE USER/ MARK # PORT PORT(S) DEST LIMIT GROUP # Drop Ping from the "bad" net zone.. and prevent your log from being flooded.. Ping(DROP) net $FW # Permit all ICMP traffic FROM the firewall TO the net zone ACCEPT $FW net icmp #Notify servers that we do not provide these services so they do not have to time out Auth(REJECT) net $FW DCC(REJECT) net $FW DNS(REJECT) net $FW #Public services FTP(ACCEPT) net $FW HTTP(ACCEPT) net $FW HTTPS(ACCEPT) net $FW IMAP(ACCEPT):info net $FW IMAPS(ACCEPT) net $FW POP3(ACCEPT):info net $FW POP3S(ACCEPT) net $FW SMTP(ACCEPT) net $FW SSH(ACCEPT):info net $FW # Do NOT send mail EVER! SMTP(REJECT) $FW net #Give access to Petter for magic mushrooms DNAT:info net:88.91.xxx.yyy loc:10.50.50.227 TCP DNAT:info net:88.91.xxx.yyy loc:10.50.50.227 UDP Som du ser helt på slutten her så har jeg en stygg hack for å gi en kamerat tilgang til erhmm... "feriebilder" som ligger på en maskin i lokalnettet. Når det gjelder tjenester som Bittorrent og venner så vil du nok DNAT dem på samme måte mot noe annet enn $FW. Håper det hjelper. 1 Lenke til kommentar
cesam Skrevet 28. oktober 2011 Forfatter Del Skrevet 28. oktober 2011 Vel, du trenger ikke bruke assemblerkode for å lære deg programmering (ja, det er å trekke det langt). Med Shorewall så setter du først opp grensesnitt (les nettverkskort), så definerer du soner og knytter sonene mot grensesnitt, så definerer du grunnregler (policy) for sonene til slutt lager du unntak (regler) som gjør at trafikk oppfører seg anneledes en policy. Etter at du har installert Shorewall så finner du gode eksempler i /usr/share/docs/shorewall/examples og manualen på nett inneholder mange gode eksempel. Forskjellen på å sette opp Shorewall fremfor å lage IP-Tables skript for hånd er at syntaksen er mer oversiktlig. Når det gjelder routing så gjøres dette som oftest hovedsaklig igjennom grunnregler av typen #SOURCE DEST POLICY LOG LEVEL LIMIT:BURST $FW net ACCEPT $FW loc ACCEPT $FW rem ACCEPT loc net ACCEPT loc $FW ACCEPT loc rem ACCEPT rem $FW ACCEPT rem loc ACCEPT net all DROP info # The FOLLOWING POLICY MUST BE LAST all all REJECT info Her har jeg definert fire soner. $FW er brannveggen, altså maskinen hvor Shorewall kjører loc er det lokale nettet hos meg rem er nettet hos en kamerat som er koblet til via VPN net er internet Som du ser så er trafikk fra @FW til alle andre tillat. Trafikk fra loc til alle andre er tillat. Trafikk fra rem til $FW og til loc er tillat (men ikke til net da han har sin egen gateway og ikke skal gå igjennom meg) og trafikk fra net til alle blir kastet ut av vinduet. Når det gjelder regelsett så har jeg her satt opp unntak som gir net tilgang til tjenester på $FW. Ideelt sett så skulle disse kjørt på en dmz, men det ble overkill for mitt nett. #ACTION SOURCE DEST PROTO DEST SOURCE ORIGINAL RATE USER/ MARK # PORT PORT(S) DEST LIMIT GROUP # Drop Ping from the "bad" net zone.. and prevent your log from being flooded.. Ping(DROP) net $FW # Permit all ICMP traffic FROM the firewall TO the net zone ACCEPT $FW net icmp #Notify servers that we do not provide these services so they do not have to time out Auth(REJECT) net $FW DCC(REJECT) net $FW DNS(REJECT) net $FW #Public services FTP(ACCEPT) net $FW HTTP(ACCEPT) net $FW HTTPS(ACCEPT) net $FW IMAP(ACCEPT):info net $FW IMAPS(ACCEPT) net $FW POP3(ACCEPT):info net $FW POP3S(ACCEPT) net $FW SMTP(ACCEPT) net $FW SSH(ACCEPT):info net $FW # Do NOT send mail EVER! SMTP(REJECT) $FW net #Give access to Petter for magic mushrooms DNAT:info net:88.91.xxx.yyy loc:10.50.50.227 TCP DNAT:info net:88.91.xxx.yyy loc:10.50.50.227 UDP Som du ser helt på slutten her så har jeg en stygg hack for å gi en kamerat tilgang til erhmm... "feriebilder" som ligger på en maskin i lokalnettet. Når det gjelder tjenester som Bittorrent og venner så vil du nok DNAT dem på samme måte mot noe annet enn $FW. Håper det hjelper. Det er sant, man trenger ikke å lære seg assembler kode for å lære seg å programmere. Jeg skjønner poenget, og det hjelper på forståelsen av hvordan brannmurer fungerer ved å se på hvordan din brannmur er satt opp. Jeg ser likheter med iptables her ja. Soner - Chains, net - input regler, loc - output regler osv. Hvis jeg har forstått dette riktig. Uansett i dag hadde jeg et stOrt gjennombrudd med iptables reglene mine, da jeg fant ut at dns trafikk brukte udp protokollen og ikke tcp. VNC derimot er kranglete! Takk for innblikket, kommer til å skjekke ut shorewall! feriebilder....ja akkurat. Lenke til kommentar
BlueEAGLE Skrevet 29. oktober 2011 Del Skrevet 29. oktober 2011 feriebilder....ja akkurat. Jepp! Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå