Ubuntu Suomen keskustelualueet
Ubuntun kehittäminen ja yhteisö => Oppaiden kehittäminen => Arkisto: wikiin siirrettävät => Aiheen aloitti: raimo - 11.07.06 - klo:12.58
-
Tämä ohje ei sovellu aloittelijalle. Opiskele Ubuntun perusasiat ennen tämän ohjeen noudattamista.
Tutustu ensin näihin ohjeisiin: http://fi.wikibooks.org/wiki/Ubuntu_tutuksi ja http://linux.fi
Firestarter (http://forum.ubuntu-fi.org/index.php?threadid=1984) on olemassa, ja hyvä niin, mutta entäpä jos sitä ei halua käyttää?
Tässä yksi vaihtoehto rakentaa netfilter/iptables -palomuuri,
ja ehkä hiukan erilainen lähestymistapa kuin yleensä -- me nimittäin mennään nyt piiloon! ;)
Testaa ensin nykyinen systeemisi vaikkapa tällä testerillä:
(kts. alta Ubuntun oletusasetusten palautus jos haluat testata asiaa oletusasetuksin)
http://probe.hackerwatch.org/probe/probe.asp
Jos iptables asetukset ovat Ubuntun oletukset (kaikki ACCEPT), kaikki testerin
testaamat portit ovat keltaisena. Tilanne ei sinänsä ole vaaraallinen koska
mitään palveluita ei ole käynnissä portteja kuuntelemassa (oletuksena).
Mutta me kuitenkin näymme selkeästi internettiin.
Piilossa olisi jotenkin mukavampi olla, ja vihreä on kauniimpi värikin kuin keltainen?
Joten säädetään iptables-asetuksia hiukan, tai oikeastaan aika raskaallakin kädellä.
Periaate on että ensin pudotetaan kaikki pois, ja sitten sallitaan vain tarpeellinen.
Käytetään ainoastaan DROP -sääntöä, koska silloin sisäänpyrkijä ei havaitse meitä ollenkaan.
HUOM, asetukset tulevat käyttöön heti kun ne lisätään.
# tarkastele tilannetta aina halutessasi:
sudo iptables -L
#tallennetaan nykyinen tilanne, ihan vain varulta
sudo iptables-save > ~/.palomuuri_backup
#poistetaan käytöstä kaikki olemassa olevat säännöt
sudo iptables --flush
#sallitaan lo, tämä on TÄRKEÄ rivi, koska kaikki INPUT pudotetaan kohta
#suorita siis EHDOTTOMASTI TÄMÄ komento NYT:
sudo iptables -I INPUT 1 -i lo -p all -j ACCEPT
#pudotetaan kaikki sisääntuleva
sudo iptables -P INPUT DROP
#pudotetaan kaikki forward
sudo iptables -P FORWARD DROP
#pudotetaan kaikki ulospyrkivä
sudo iptables -P OUTPUT DROP
# nyt mikään ei toimi, ei sisään eikä ulos, joten:
#sallitaan ainoastaan itseaiheutettu INPUT (selaimet yms.)
sudo iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
#sallitaan ainoastaan itseaiheutettu OUTPUT
sudo iptables -A OUTPUT -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
#katsellaan lopputulosta:
sudo iptables -L --line-numbers
Kokeillaan taas testerillä:
http://probe.hackerwatch.org/probe/probe.asp
Tasaisen kauniin vihreää kaikkialla, olemme piilossa, NAM! ;)
Selaimet kuitenkin toimivat ja kaikki muukin itseaiheutettu liikenne.
Tilanne muuttui ratkaisevasti (paremmaksi) noilla muutamalla muutoksella.
Tässä olisi minusta se piste jossa Ubuntun(kin) palomuuri voisi aivan hyvin olla oletuksena.
Jos käytät/lisäät palveluita tms. pitää niiden käyttämille porteille asettaa ACCEPT erikseen.
Joten jos käytössä on vaikkapa www-serveri, säädetään hiukan lisää:
#sallitaan www-serveri portissa 80, lisää tämä vain jos käytät www-serveriä
sudo iptables -A INPUT -p tcp -s 0/0 -d 0/0 --dport 80 --syn -j ACCEPT
#sallitaan sisääntuleva (vieras) FTP, lisää tämä vain jos FTP serveri tms. on käytössä
sudo iptables -A INPUT -p tcp --dport 21 -j ACCEPT
#sallitaan SSH, lisää tämä vain jos käytät SSH:ta
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
#katsellaan taas lopputulosta:
sudo iptables -L --line-numbers
Voit poistaa sääntöjä (rivejä) komennolla sudo iptables -D XXX RIVINUMERO
Jossa XXX on joko INPUT, FORWARD, tai OUTPUT
Katso rivinumerot aina komennolla sudo iptables -L --line-numbers
Muokkaaminen tapahtuu helpoiten poistamalla rivi (-D valitsin) ja luomalla uusi,
tai korvaamalla olemassa oleva rivi uudella (-R valitsin, kts. lisää alta)
Tallennetaan asetukset jotta saadaan ne käyttöön heti koneen käynnistyksessä,
sudo komento ei toimi tässä (jostakin kumman syystä), joten sudoudu kokonaan komennolla sudo su
sudo su
iptables-save > /etc/palomuuri
exit
Tarkista syntynyt tallennus:
cat /etc/palomuuri
(älä muokkaa tiedostoa käsin)
Muokataan käynnistyskäsky tiedostoon /etc/network/interfaces
lisää tämä rivi siten että se on juuri ennen internet yhteyttä hoitavan verkkokortin asetusrivejä
(siis auto ethX rivin yläpuolelle, jossa X = verkkokorttisi jolla olet yhteydessä internettiin [auto eth0]).
pre-up iptables-restore < /etc/palomuuri
Eli näin:
auto lo
iface lo inet loopback
pre-up iptables-restore < /etc/palomuuri
auto eth0
iface eth0 inet dhcp
(muitakin tapoja varmasti on käynnistää ko. juttu, mutta näin se ainakin lähtee ajoissa)
edit: voit testata tuon asetusrivin näin:
------------------------------------------------------------
sudo /etc/init.d/networking restart
jos netti toimii tuon jälkeen, kaikki on hyvin. Jos netti ei toimi, poista ko. rivi ja aja
sudo /etc/init.d/networking restart uudelleen jolloin netti taas toimii, huuda sitten apua! :)
------------------------------------------------------------
Homma on valmis, ja se on jo käytössäkin, mutta myös koneen käynnistyksessä
palomuuri säätyy näille asetuksille automaattisesti.
Tarkista asetusten latautuminen 1. buutin jälkeen komennolla: sudo iptables -L
Alkutilanteeseen pääset koska vain komennolla:
sudo iptables-restore < ~/.palomuuri_backup
Voit kätevästi tallettaa erilaisia asetuksia:
sudo iptables-save > ~/.palomuuri1
ja ottaa tarvittaessa käyttöön halutun tallennuksen:
sudo iptables-restore < ~/.palomuuri1
Ubuntun oletusasetusten palautus:
sudo iptables -P INPUT ACCEPT
sudo iptables -P FORWARD ACCEPT
sudo iptables -P OUTPUT ACCEPT
sudo iptables --flush
Komennot:
#pikaohje
iptables -h
#ohje
man iptables
#listaus
sudo iptables -L
#listaus rivinumeroilla
sudo iptables -L --line-numbers
# tallenna nykyinen tilanne
sudo iptables-save > /polku/tiedostonimi
# ota tallennettu tilanne käyttöön
sudo iptables-restore < /polku/tiedostonimi
# poista kaikki säännöt
sudo iptables --flush
# vaihda INPUT lohkon oletussääntöä
sudo iptables -P INPUT ACCEPT
# lisää uusi rivi viimeiseksi
sudo iptables -A INPUT -p icmp --icmp-type echo-request -j DROP
# lisää uusi rivi valittuun kohtaan (X = rivinumero)
sudo iptables -I INPUT X -p udp --dport 137 -s 0/0 -j DROP
# korvaa valittu rivi uudella (X = rivinumero)
sudo iptables -R INPUT X -p udp --dport 139 -s 0/0 -j DROP
# poista rivi (X = rivinumero)
sudo iptables -D INPUT X
Testerit:
http://probe.hackerwatch.org/probe/probe.asp
http://www.grc.com/default.htm valitse ShieldsUp! -> Proceed -> All Service Ports
http://www.dslreports.com/scan (vaatii Javan)
https://whacker4.hackerwhacker.com/quickscan.php
Linkit:
http://www.netfilter.org/
http://iptables-tutorial.frozentux.net/iptables-tutorial.html
http://en.wikipedia.org/wiki/Netfilter
edit: hyvä porttilista löytyy tiedostosta:
/etc/services
Jos on tarvetta niin sieltä voi katsoa mitä portteja pitää päästää sisään millekin asialle.
tai sitten ihan IANAn porttilistasta:
http://www.iana.org/assignments/port-numbers
Firestarter Howto: http://forum.ubuntu-fi.org/index.php?threadid=1984
---
PS. komentteja / parannusehdotuksia saa antaa.
Ohjeen lisenssi : Public domain (http://creativecommons.org/licenses/publicdomain)
-
Tämä oli hyvä howto. Toimiiko muuten BitTorrent tms. tämän jälkeen?
-
Tämä oli hyvä howto. Toimiiko muuten BitTorrent tms. tämän jälkeen?
hmm, periaatteessa kaikki minkä itse käynnistät toimii sekä sisään että ulos, joten pitäisi toimia.
Varmaksi en tuota sano, kun itse en ole BitTorrentia koskaan käyttänyt.
Mutta periaatteessa mikään muu, kuin jokin serveri johon tulee ulkopuolisia pyyntöjä
(www, FTP yms), ei tarvi toimiakseen erillistä sääntöä.
Mutta voi tuosta olla poikkeuksiakin, ja silloin kannattaa vaikkapa googlella katsella mitä
portteja ko. hommalle pitää avata.
edit:
samma på engelska: http://dash.atspace.org/firewall.html
-
Törmäsin nyt sitten itse pienoiseen ongelmaan tuon kanssa.
FTP-aktiivimoodi ei toimi tuolla iptables -virityksellä välttämättä.
Tuo ei sinänsä FTP siirtoon tarkoitettuja oikeita ohjelmia haitanne, osaavat vaihtaa / ovat jo passive-modessa...
Mutta kun minä haluan hakea Perlillä ja LWP::Simple get:llä säätietoja NOAA anonyymi-FTP -palvelimelta niin tämäpä muuri ei päästäkkään läpi. Hmm, jos käyttäisin Net::FTP palikkaan niin voisin vaihtaa passive moden päälle, sitten se toimisi. Mutta miten sen vaihdat tuollaisessa get/ftp hässäkässä (ei mitenkään).
Jonkun aikaa piti tuumailla, mutta lopulta ratkaisin tilanteen näinkin helposti:
#sallitaan aktiivinen FTP, mutta vain tietyltä halutulta serveriltä
sudo iptables -A INPUT -p tcp -s 205.156.51.200 --sport 20 -j ACCEPT
eli INPUT:iin sallimussääntö: halutusta IP osoitteesta päästetään lähdeportista 20 (ftp-data) tuleva juttu sisään.
Ja taas toimii säätietojen imutus ja portit on avoinna vain luotetulle taholle jos ko. taho lähestyy portistaan 20.
Lisää säätelyä, osa 0.2 ;)
Estetään tuhman IP:n pääseminen www-serverille, ja koska portille 80 on olemassa ACCEPT-sääntö niin
katso ensin komennolla sudo iptables -L --line-numbers millä rivillä lukee tcp dpt:www ja ACCEPT
Esto(t) pitää saada ko rivin yläpuolelle, leikitään että tcp dpt:www rivi on 4, ja kun lisäät eston samalle riville (4) se menee oikeaan paikkaan (vrt. -I = insert)
sudo iptables -I INPUT 4 -p tcp -s XX.XX.XX.XX --dport 80 -j DROP
jossa XX.XX.XX.XX on estettävä IP
Tuota(kin) voit testata vaikkapa tällä palvelulla (ei vaadi kirjautumista tms ainakaan nyt):
http://www.the-cloak.com/login.html tuolla anonyymipalvelulla saat oman IP osoitteen "vaihdetuksi" toiseksi, eli pääset testaamaan itse serveriäsi ikäänkuin vieraana "ulkoa päin".
Katso ensin IP serverisi lokista ja sitten estät sen ja kokeilet sitten ladata sivuasi uudelleen.
0.3 samba?
Joku jolla samba on voisi kokeilla toimiiko se tällä säädöllä jos INPUT on asennossa DROP, kiitos?
#HUOM laita vieras IP(t) ensin tuohon LÄHDE.IP(t).TÄHÄN tilalle,
#jos haluat koko maailman sambaavan kanssasi (älä halua!) poista -s LÄHDE.IP(t).TÄHÄN osuus riveistä
sudo iptables -A INPUT -p tcp -s LÄHDE.IP(t).TÄHÄN -m multiport --dports 135,139,445 -j ACCEPT
sudo iptables -A INPUT -p udp -s LÄHDE.IP(t).TÄHÄN -m multiport --dports 137,138 -j ACCEPT
-
Tosi hyvä howto. Mutta kun tein tämän niin en pääse enään xboxiini ftp:llä. Mitenkäs se saatais taas kulkemaan?
-
Hmmm? paha sanoa mitään, siis tuntematta ko. vehjettä mitenkään. :)
Epäilempä kuitenkin että voisi johtuu juuri tuosta aktiivisen FTP:n "toimintatavasta",
joten kokeile ensin:
sudo iptables -A INPUT -p tcp -s XBOX.IP.TÄHÄN --sport 20 -j ACCEPT
jos ei auta, niin sitten ainakin tällä pitäisi lähteä toimimaan:
sudo iptables -A INPUT -p tcp -s XBOX.IP.TÄHÄN -j ACCEPT
jolloin kaikki TCP portit pääsevät Xlootan IP:stä sisään, mutta muualta ei.
Ja jollei tuollakaan lähde, niin sama homma kokkeeksi OUTPUT:lle
sudo iptables -A OUTPUT -p tcp -d XBOX.IP.TÄHÄN -j ACCEPT
Huomaa -d valitsin koska nyt boxi on "destination"
Vai onko siinä poksissa joku DHCP systeemi tms? kun en tiedä siitä värkistä yhtään mitään. ::)
Tuolta varmaan löytyy vinkkiä jos ei lähde toimimaan:
http://forums.afterdawn.com/thread_view.cfm/228294
-
Hmmm? paha sanoa mitään, siis tuntematta ko. vehjettä mitenkään. :)
Epäilempä kuitenkin että voisi johtuu juuri tuosta aktiivisen FTP:n "toimintatavasta",
joten kokeile ensin:
sudo iptables -A INPUT -p tcp -s XBOX.IP.TÄHÄN --sport 20 -j ACCEPT
jos ei auta, niin sitten ainakin tällä pitäisi lähteä toimimaan:
sudo iptables -A INPUT -p tcp -s XBOX.IP.TÄHÄN -j ACCEPT
jolloin kaikki TCP portit pääsevät Xlootan IP:stä sisään, mutta muualta ei.
Ja jollei tuollakaan lähde, niin sama homma kokkeeksi OUTPUT:lle
sudo iptables -A OUTPUT -p tcp -d XBOX.IP.TÄHÄN -j ACCEPT
Huomaa -d valitsin koska nyt boxi on "destination"
Vai onko siinä poksissa joku DHCP systeemi tms? kun en tiedä siitä värkistä yhtään mitään. ::)
Tuolta varmaan löytyy vinkkiä jos ei lähde toimimaan:
http://forums.afterdawn.com/thread_view.cfm/228294
Tuolla ensimmäisellä lähti toimimaan. kiitoksia vain :)
Xboxissa on lähiverkon ip sekä dhcp hakee sille julkisen.
Tuota yhtä kohtaa en ymmärrä tossa ekassa esimerkissä. Siinä on "--sport 20" kohta joka ilmeisesti viittaa porttiin? Miksi se on 20 eikä 21?
-
20 on FTP-DATA -portti, ja -sport 20 on vastaanottopään portti 20 (siis sen FTP-serverin portista on kyse),
eli sallitaan kaikki portit jos kutsu tulee sallitun FTP-vastapelurin portista 20
(sport = source port ts. lähdeportti (ei sentään tähtiportti)). :)
Tämä tuolta http://slacksite.com/other/ftp.html lainaamani kaavio selventänee
Active FTP :
command : client >1023 -> server 21
data : client >1023 <- server 20
Passive FTP :
command : client >1023 -> server 21
data : client >1023 -> server >1023
En minä nyt tiedä onko tuosta kaaviosta mitään iloa, mutta siis kuitenkin:
portit pitää avata silloin kun FTP-serverin (tms boxin) source-portista 20 tulee älämölöä jotta aktiivinen FTP toimii.
Mukavempaa olisi tietenkin sallia vain tietyt portit, vaan mistäpä sen tietää etukäteen mikä se pitäisi olla.
Joten siis päästetään kaikista omista porteista, mutta vain ko. IP:lle ja vain jos se vikisee portistaan 20.
edit: se portti 21 aukeaa siis sillä INPUTin "itseaiheutussäännöllä", mutta tämä portista 20 tuleva paluuliikenne ei ole itseaiheutettua netfilterin mielestä koska kutsu tulee ulkoa (eikä se tule porttiin 21 eikä 20, vaan "johonkin" porttiin) joten se ei päästä sitä sisään ilman erillistä käskyä, vaikka FTP-yhteys sinänsä kyllä syntyykin. (koskee siis VAIN aktiivista FTP-yhteyttä, passiivinen toimii ilmankin).
-
Tuo selvensi asiaa. En tiennytkään tuosta DATA portista.
Hieman asian vierestä, miten voi vaihtaa lähiverkon ip:n? Kde käytössä. Kokeilin System settings/Verkko-asetukset vaihtaa ja vaihtukin mutta kun laitan dhcp:n takasi päälle, vaihtuu se lähiverkon ip ennalleen.
-
Tuo selvensi asiaa. En tiennytkään tuosta DATA portista.
Hieman asian vierestä, miten voi vaihtaa lähiverkon ip:n? Kde käytössä. Kokeilin System settings/Verkko-asetukset vaihtaa ja vaihtukin mutta kun laitan dhcp:n takasi päälle, vaihtuu se lähiverkon ip ennalleen.
Perustetaan "virtuaaliverkkokortti", ilmaus ei liene virallinen, mutta se on kuvaava.
Jos verkkokortti on eth0 ja halutaan olla pysyvästi vaikkapa 192.168.1.13 niin eth0:1 virtuaalikortti lähtee päälle näin:
sudo ifconfig eth0:1 192.168.1.13 netmask 255.255.255.0 up
No kas, nyt se toimiikin jo.
Vaikkapa selaimella http://192.168.1.13/ voi sen testata jos www-serveri on käynnissä.
Mokoman saa käynnistyksessä käyntiin monellakin tavalla, mutta tehdään nyt näin:
Editoi /etc/network/interfaces tiedostoa (eth0 määritysten alapuolelle nämä)
auto eth0:1
iface eth0:1 inet static
address 192.168.1.13
netmask 255.255.255.0
#gateway 192.168.1.1
Ja sitten käynnistetään verkotus uudelleen.
sudo /etc/init.d/networking restart
Jos virheitä ei näy, soon siinä ja pysyynee vaikka mikä dhcp pomppisi, koska on static:kiksi määrätty.
Tuon gatewayn kommentoin tuohon, koska toiminee ilmankin? (ellei, ota # pois edestä ?? en tiedä kun en oo verkkokurko) :)
Ps.
Ko. virtuaalikortin IP-osoitetta voi lennossa vaihtaa näppärästi näin:
sudo ifconfig eth0:1 192.168.1.21 netmask 255.255.255.0 up
Nyt .13 lakkasi toimimasta, ja .21 alkoi toimimaan.
Alas/Ylös luonnollisesti näin:
sudo ifdown eth0:1
sudo ifup eth0:1
Ylösnousu noin toimii vain jos asetukset on määritetty interfaces -tiedostossa, jos ei ole niin sitten ifconfig:lla kuten yllä.
Niin ja /etc/hosts tiedostoon rivi
192.168.1.13 teletappilandia
Jolloin http://teletappilandia/ toimii. ;D
-
Kiitos ja kumarrus :)
-
Firestarterin käynnistys näyttää pistävän em. asetukset uusiksi... vai olenko erehtynyt?
rIlmeisesti jatkossa "palomuurin" säädöt tuleekin tehdä juuri how-to:n antaman mallin mukaan eikä Firestarterilla?
-
Firestarterin käynnistys näyttää pistävän em. asetukset uusiksi... vai olenko erehtynyt?
rIlmeisesti jatkossa "palomuurin" säädöt tuleekin tehdä juuri how-to:n antaman mallin mukaan eikä Firestarterilla?
Joo, riippuen ainakin osin siitä minkälaisia asetuksia Firestarterilla asettaa.
Firestarterin jäljiltä pääsee palautumaan milloin tahansa tähän systeemiin näin:
sudo iptables-restore < /etc/palomuuri
sikäli mikäli nämä asetukset on tallennettu /etc/palomuuri -tiedostoon.
Ja tietenkin sitten Firestarter service pitää olla pois käynnistä (sysv-rc-conf ohjelmalla on helppo säätää se) jos haluaa tämän muurin pitää käytössä koneen käynnistyksen jälkeen.
En kylläkään ole testannut mitä se FS tekee, koska en asenna sitä, koska en halua! :)
(pitäisi kyllä haluta niin sitten tietäisi)
-
Kiitoksia hyvästä ohjeesta. Aiemmin olen palomuuria säädellyt Firestarterin avulla, kun en ole hyvää iptables-ohjetta vielä löytänyt, mutta näiden ohjeiden avulla säätö onnistui kivuitta. Firestarterista jäin kuitenkin vielä kaipaamaan logeja, eli mistä niitä pystyisi katselemaan/ minne logit tallennetaan, ja mistä pystyy säätelemään, mitä niihin tallennetaan?
-
Firestarterista jäin kuitenkin vielä kaipaamaan logeja, eli mistä niitä pystyisi katselemaan/ minne logit tallennetaan, ja mistä pystyy säätelemään, mitä niihin tallennetaan?
/var/log/messages ja /var/log/syslog (/var/log/kern.log ?) tiedostoihin taitavat mennä oletuksena.
Mutta niihin menee paljon muutakin.
Yksinkertaisimmillaan lokitusta voisi käsipelissä säätää vaikka näin, sysklogd ja klogd servicet pitää olla käynnissä.
Säädä ne halutuille runleveleille sysv-rc-conf työkalulla jotta lähtee buutissa lokittamaan.
Oletuksena nuo varmaan onkin käynnissä?
Tehdään lokitiedosto:
sudo touch /var/log/palomuuri
Lisää /etc/syslog.conf tiedoston alkuosaan (HUOM! ennen *.=debug;\ riviä!),
Tai vaikka ihan ensimäiseksikin tämä:
kern.=debug /var/log/palomuuri
Sitten lokituksen uudelleenkäynnistys:
sudo /etc/init.d/sysklogd restart
Iptables säädöt, voisi (pitäisi) tehdä niin että oma lohkonsa
jonne sitten lokitettavat ohjataan, mutta aluksi nyt näin (vaihda eth0 oikeaksi jos verkkokorttisi on jokin muu)
# INPUT lokitus
sudo iptables -A INPUT -i eth0 -m limit --limit 30/s -j LOG --log-level 7 --log-prefix "iptables INP: "
# OUTPUT lokitus
sudo iptables -A OUTPUT -o eth0 -m limit --limit 30/s -j LOG --log-level 7 --log-prefix "iptables OUT: "
eli hypätään LOG sääntöön, jolloin kerneli käskee lisäämään tekstiä lokitiedostoon.
--log-level 7 on olennainen, se ohjaa jutun /var/log/palomuuri -tiedostoon (7 = debug)
Se kehittyneempi ja tulevaisuuden kannalta parempi/monipuolisempi vaihtoehto olisi sitten tämmöinen:
lisätään oma LOKI-lohko ja ohjataan siihen tulevat asiat -> LOG
sudo iptables -N LOKI
sudo iptables -A LOKI -m limit --limit 30/s -j LOG --log-level 7 --log-prefix "iptables: "
sudo iptables -A LOKI -j DROP
#ohjataan halutut asiat LOKI-lohkoon
sudo iptables -A INPUT -i eth0 -m state --state INVALID -j LOKI
sudo iptables -A INPUT -i eth0 -p icmp -j LOKI
sudo iptables -A OUTPUT -o eth0 -m state --state INVALID -j LOKI
#vaihtoehtoisesti ohjataan kaikki asiat LOKI-lohkoon (käytä tätä aluksi)
sudo iptables -A INPUT -i eth0 -j LOKI
sudo iptables -A OUTPUT -o eth0 -j LOKI
Esimerkiksi jotenkin noin, jolloin vain invalidisoituneet paketit ja icmp lokittuu.
Aluksi kannattaa käyttää kahta alimmaista jotta näkee että systeemi toimii.
Kovin kauheasti en nyt tuota testannut mutta toimii se. ;)
--limit -aikaa ja --limit-burst X voi säätää haluamakseen.
(--limit 30/s --limit-burst X = X täpahtumaa, jos --limit-burst ei mainita se on 5)
Muistin virkistykseksi:
sudo iptables -N NIMI # luo uuden NIMI nimisen "lohkon" (chain)
sudo iptables -L --line-numbers # listaus rivinumeroilla.
sudo iptables -D LOKI 2 # poista LOKI-lohkon rivi 2
Ko. LOKI-lohkon voi poistaa vain jos kaikki viittaukset
siihen on ensin poistettu = (0 references), ja se itsekin on tyhjä.
Sitten se poistuu näin: sudo iptables -X LOKI
Jos jostakin syystä poistat /var/log/palomuuri -tiedoston,
sysklogd saattaa seota, sen uudelleenkäynnistys auttaa:
sudo /etc/init.d/sysklogd restart
edit: ARGH! klogd pitää olla käynnissä myös (sysv-rc-conf sekin päälle jos on pois)
uudelleenkäynnistelyyn: sudo /etc/init.d/klogd restart
edit2: lokiin tunkee riviä IP:llä 192.168.1.1, no sehän on kai jotakin ADSL-mölinää vain :)
häivytin sen lokista näin:
sudo iptables -A INPUT -i eth0 -s ! 192.168.1.1 -j LOKI
! merkki aiheuttaa sen että jos sourceosoite on 192.168.1.1 ei lokia kasvateta, muuten kyllä.
edit3: tämä ei paljon selityksiä kaivanne (ainakaan lapsiperheissä?)
sudo iptables -I OUTPUT 1 -d habbo.fi -j LOKI
selitykseksi riittänee että habbo on mennyt ilmeisesti rikki, kun se ei enää toimi. ;D
I OUTPUT 1 siksi että kielto saadaan sallivan säännön yläpuolelle.
eeh:
Väkersin portinmetsästystyökalun (etsii /etc/services tiedostosta, sekä IANA listalta, ja jopa Googlellakin):
http://dash.atspace.org/kvaak/ports.txt
Lokisuodatin on tulossa sekin, jotta saa lokin ihmisen luettavaan muotoon .. :)
-
Hyvät ja selkeät ohjeet olivat!
Mutta mutta... olen laittanut palvelimeni (LAMP-asennus) pystyyn, tein ohjeittesi mukaan iptables-säädöt ja siirsin sivuni WINscp:llä palvelimelleni. Kattelin tässä Apachen error.log -tiedostoa ja sinne nyt näyttäs paukkuvan sekunnin välein ilmoitus [warn] (101)Network is unreachable: connect to listener on [::]:80
eli portti 80:ssä mättää jokin... mitenkäs tämä korjataan?
ymmärsin, että tuo error.log kasvaa aina silloin kun sivuillani käydään, koska tilanne rauhoittuu aina aika ajoin kuitenkin.
-
Hyvät ja selkeät ohjeet olivat!
Mutta mutta... olen laittanut palvelimeni (LAMP-asennus) pystyyn, tein ohjeittesi mukaan iptables-säädöt ja siirsin sivuni WINscp:llä palvelimelleni. Kattelin tässä Apachen error.log -tiedostoa ja sinne nyt näyttäs paukkuvan sekunnin välein ilmoitus [warn] (101)Network is unreachable: connect to listener on [::]:80
eli portti 80:ssä mättää jokin... mitenkäs tämä korjataan?
ymmärsin, että tuo error.log kasvaa aina silloin kun sivuillani käydään, koska tilanne rauhoittuu aina aika ajoin kuitenkin.
Hmm, mikäs siinä nyt voisi mättää jos portti 80 on ACCEPT, no kokeile säätää sitä sääntöä "jotenkin"?
Vaikka näin:
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
(poista alkuperäinen rivi ensin)
Jollei tokene, muuta INPUT sallituksi -> sudo iptables -P INPUT ACCEPT
ja tarkkaile tilannetta, jos jatkuu muuta FORWARD ja OUTPUT samalla tavalla jotta nähdään
mistä se warninki nyt tulee.
Tarkista myös mitä lukee Apache:n ports.conf tiedostossa. (Listen 80 pitäisi lukea)
Toisaalta mokomasta pääsenee eroon jos muutat Apachen LogLevel:in hiukan tiukemmaksi
Eli LogLevel error kun se nyt lienee LogLevel warn
-
Äh. Sain korjattua jo tilanteen... oli unohtunu sivujen siirron yhteydessä chmodata tilastointia tekevät .php ja .txt tiedostot ... ainakaan enää ei mokomia erroreita pauku lokiin.
Tällaista sattuu vain kun unohtelee asioita :-X
Anteeksi sekaannus
-
Kiitos tarpeellisesta ja hyvästä ohjeesta, mutta
Muokataan käynnistyskäsky tiedostoon /etc/network/interfaces
lisää tämä rivi siten että se on juuri ennen internet yhteyttä hoitavan verkkokortin asetusrivejä
(siis auto ethX rivin yläpuolelle, jossa X = verkkokorttisi jolla olet yhteydessä internettiin [auto eth0]).
miten muokkaan /etc/network/interfaces tiedostoa? Kun yritän muokata sitä, en pysty tallentamaan sitä, koska se on
vain luku tiedosto. Minulla oli ylläpito-oikeudet päällä, mutta ei toimi. Ubuntun olen asentanut tänään ja se on ensimmäinen
kerta, kun olen tekemisissä Linuxin kanssa, joten olen aivan kuutamolla Linux jutuissa.
-
miten muokkaan /etc/network/interfaces tiedostoa? Kun yritän muokata sitä, en pysty tallentamaan sitä, koska se on
vain luku tiedosto. Minulla oli ylläpito-oikeudet päällä, mutta ei toimi. Ubuntun olen asentanut tänään ja se on ensimmäinen
kerta, kun olen tekemisissä Linuxin kanssa, joten olen aivan kuutamolla Linux jutuissa.
Komentojen edessä pitää olla sudo jos komennolla on tarkoitus tallentaa jonekin muualle kuin käyttäjän kotihakemistoon. Ja lisäksi pitää käyttää jotakin editoria että tiedostoa saa muokattua (vrt. notepad)
Avaa menusta Pääte (eng. Terminal) tai paina Alt+F2 -> x-terminal-emulator -> Enter
ja syötä ko. päätteeseen komento:
sudo gedit /etc/network/interfaces nyt voit muokata sitä, mutta älä muokkaa! :)
0. Perusasiat pitäisi olla ensin opittu, ennen tälläisiä monimutkaisempia juttuja.
1. lue Ubuntu tutuksi oheistus kokonaan kaikessa rauhassa ihan aluksi,
http://fi.wikibooks.org/wiki/Ubuntu_tutuksi/ tutustu myös http://linux.fi tarjontaan.
2. Ubuntun palomuuria ei tarvitse säätää jos mitään portteja kuuntelevia palveluita ei erikseen oteta käyttöön.
Joten voit rauhassa opetella perusasiat ilman mitään muureja.
3. Asenna Firestarter, se antaa mielenrauhaa "windows-pöpömaailmaan" tottuneelle.
Siitä ohjetta tällä samalla alueella (linkki on tämän ohjeen alussa).
-
Tein kaiken mitä käskettiin mutta silti näyttää keltaista >:/ Pitääkö boottia?
-
Tein kaiken mitä käskettiin mutta silti näyttää keltaista >:/ Pitääkö boottia?
Ei tarvitse buuttia, mitäpä komento sudo iptables -L näyttää?
Ja jos nyt arvaan, niin sinulla voisi olla Firestarter käytössä,
se sotkee tämän säädön sekaisin käynnissä ollessaan/käynnistyessään.
Pysäytä sen ensin näin komentaen: sudo /etc/init.d/firestarter stop
Ja tee säädöt sitten. Mutta se käynnistyy uudelleen seuraavassa buutissa, joten
pidemmän päälle, jos tätä tms. systeemiä käytät poista Firestarterin
käynnistyminen vaikkapa sysv-rc-conf apuohjelmalla.
(katso foorumin haulla sysv-rc-conf hakusanalla ohjetta sen käyttöön yms.)
Tai vaihtoehtoisesti, poista Firestarter sudo apt-get remove firestarter
Sen saa aina hetkessä asennettua takaisin.
Ja kuten ohjeen alussa todetaan "tämä ohje ei sovellu aloittelijalle"
Perusasiat pitää olla hallussa, ja lisäksi mielellään vielä vähän lisääkin saa olla.
Tosin vain säätämällä oppii säätämään. :)
Eli jos et saa toimimaan, on parempi käyttää Firestarteria.
-
Kysehän tässä on siitä, että saanko HomePNA toimimaan bootin jälkeen. Sitä pelkään :D
-
Joku joka omistaa HomePNA ja on conffannut palomuurinsa näin, toimiiko bootin jälkeen?
-
Joku joka omistaa HomePNA ja on conffannut palomuurinsa näin, toimiiko bootin jälkeen?
Miksi ei toimisi, ja jos ei toimi niin miksi et sitten voisi ottaa tätä pois päältä jos ei toimi?
Eihän se sen kummempi ole kuin poistat /etc/network/interfaces tiedostosta sinne lisäämäsi latausrivin
ja palautat Ubuntun oletusasetukset (lue ohje tämän ohjeen alussa), tai/ja asennat Firestarterin.
Ihan oikeasti, ÄLÄ noudata tätä ohjetta jos et osaa, kiitos! :)
-
Mihin väliin tungen tuon aloitus jutun kun /etc/network/interfaces näyttää tältä
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet dhcp
auto eth1
iface eth1 inet dhcp
auto eth2
iface eth2 inet dhcp
iface ath0 inet dhcp
auto wlan0
iface wlan0 inet dhcp
auto dsl-provider
iface dsl-provider inet ppp
provider dsl-provider
pre-up /sbin/ifconfig eth0 up # line maintained by pppoeconf
----------
Firestarteria en halua enään käyttää >:/
-
Mihin väliin tungen tuon aloitus jutun kun /etc/network/interfaces näyttää tältä
Firestarteria en halua enään käyttää >:/
Käsittääkseni juuri siihen väliin joka ohjeessa mainitaankin, eli näin:
auto lo
iface lo inet loopback
# lisää rivi tämän alle
pre-up iptables-restore < /etc/palomuuri
# lisää rivi tämän yläpuolelle
auto eth0
iface eth0 inet dhcp
#älä muuta mitään tämän alta
Vaikka kyseessä näyttää olevan pppoe (yök), niin kyllä se sen tuosta lukee/tekee.
Ja sitten joskus kun buuttaa, niin katsot komennolla sudo iptables -L tuliko asettamasi asiat käyttöön.
Iptables-komennot tulevat käyttöön heti kun ne syötetään. Joten jos netti toimii komentojen syöttämisen jälkeen,
se mitä suurimmalla todennäköisyydellä toimii myös buuttauksen/ko. tallennuksen uudelleenlataamisen jälkeen.
(edellyttää että tallensit sen oikein, luonnollisesti.)
Ellei se kuitenkaan toimisi, säädetään se sitten toimimaan, eli rohkeasti kokeilemaan, mutta vain jos osaat. :)
-
Näin?
auto lo
iface lo inet loopback
pre-up iptables-restore < /etc/palomuuri
auto eth0
iface eth0 inet dhcp
auto eth1
iface eth1 inet dhcp
auto eth2
iface eth2 inet dhcp
iface ath0 inet dhcp
auto wlan0
iface wlan0 inet dhcp
auto dsl-provider
iface dsl-provider inet ppp
provider dsl-provider
pre-up /sbin/ifconfig eth0 up # line maintained by pppoeconf
Kerrostalossa kun asustaa niin HomePNA.. :F
-
Näin?
Juuri noin, ja jos ei toimi kilju kuuluvasti. :)
-
Dodii, kaiken tein mitä käskettiin ja varmasti oikein. Mutta silti näyttää keltaista.. :-\
-
Dodii, kaiken tein mitä käskettiin ja varmasti oikein. Mutta silti näyttää keltaista.. :-\
Mikä? siis tuoko testerilinkki?
Laitapa tänne (tai privana) sudo iptables -L komennon palauttama listaus.
-
Hmm hyvä postaus. Mutta pystyykö tuolla iptablesilla rajoittamaan internet yheyden nopeutta?
ja voiko iptablesilla kääntää portin joksikin muuksi esim että 80 olisi vaikka 111 tyyliin?
-
juu kiitosta sulle oivasta ohjeesta jostain kumman syystä firestarter ei suostunu asentumaan mutta kai nämä ohjeet ajaa saman asian
-
Mitenkäs tämä toimii Gutsyn kanssa koska minulla ainakin tuo network/interfaces tiedosto on tyhjä, muttei ollut feistyssä???
-
Mitenkäs tämä toimii Gutsyn kanssa koska minulla ainakin tuo network/interfaces tiedosto on tyhjä, muttei ollut feistyssä???
Mulla taas näyttää kaikki vihreetä tossa porttiskannerissa, enkä ole tehny mitään muutoksia palomuuriin. Eli nyt on asetukset oletuksena jo hyvin?
elias@ubuntu:~$ sudo iptables -L
[sudo] password for elias:
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
-
Eli nyt on asetukset oletuksena jo hyvin?
elias@ubuntu:~$ sudo iptables -L
[sudo] password for elias:
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Samaa näyttää mulla kyseinen koodin pätkä, halusin vain varmistua että, tämä on oikein??
-
Minen sano tuohon mitään, tai siis jos luvat on ACCEPT niin skanneri ei voi näyttää vihreetä, ja jos se silti näyttää vihreetä se on rikki, siis sese skanneri.
Toinen vaihtoehto on että näkyjä näette! :)
Itse en ole vielä gutsyyn ryhtynyt, mutta eihän tässä ole kuin 2 päivää niin siihen on ryhdyttävä.
Vaan ihan järjellä ACCEPT = hyväksy, olkoon ubu-versio mikä hyvänsä.
Edittiä: se on seonnut tuo skanneri, testasin aivan itse (feisty)
ja kaikki on komean vihreää vaikka on ACCEPT säännöt.
Joo, en kommentoi, nimittäin 3 kokeilemaani skanneria näyttää pelkkää vihreää, olis kiva tietää mitä on muutettu...
-
Ilmoitusluontoinen asia koskien iptablesin muokkausta Raimon ohjeilla,
Seuraavan versioon ubuntusta Hardy Heron on mukaan laitettu ufw
jolla on helppo tehdä haluamansa säännöt
https://wiki.ubuntu.com/UbuntuFirewall
-
Voisiko ohjeen kirjoittaja/täydentäjät kirjoittaa viestin jossa vahvistavat että
a) ohje on edelleen käyttökelpoinen eli uudet ominaisuudet eivät ole poistaneet tarvetta ohjeelle tai että ohjeessa käytetyt työkalut jne ovat edelleen Hardyssä käytössä
b) antavat luvan ohjeen siirtämiseen Ubuntu Suomen wikiin (http://wiki.ubuntu-fi.org). Kts. Wikin lisenssistä jne lisätietoja täältä: http://wiki.ubuntu-fi.org/#head-867666147f48c6b667ec0f6be3f5f16852046770
Kiitos!
r
-
Ai että toimiiko, mitä kummaa hä? ;)
Tottakai toimii ja tulee toimimaan tulevaisuudessakin (tuskin poistavat netfiltriä kernelistä koskaan) ja siten eivät poista iptablesiakaan.
Eli A-kysymyksen vastaus oli siinä.
Ja B-kysymyksen vastaus on että lisenssi on kyllä 1. viestin lopussa, se on ollut siellä jo
muistini mukaan loppuvuodesta 2006 asti. Eli on "Public domain" == saa julkaista ja muokata
kääntää ja vääntää ihan kuka vaan ja missä vaan ja jopa kaupallisessakin tarkoituksessa saa.
Suomeksi sama, ehdottomasti saa julkaista Wikissä yms.
Lisenssilinkki vielä uudelleen (johan on kumma jos tuo ei Wikiin kelpaa lisenssinsä puolesta).
http://creativecommons.org/licenses/publicdomain (http://creativecommons.org/licenses/publicdomain)
Joo, muutetaan sitä sitten jos ei muka jotenkin kelpaa.
syysterveisin raimo ;)
-
Ai että toimiiko, mitä kummaa hä? ;)
Tottakai toimii ja tulee toimimaan tulevaisuudessakin (tuskin poistavat netfiltriä kernelistä koskaan) ja siten eivät poista iptablesiakaan.
Eli A-kysymyksen vastaus oli siinä.
Ja B-kysymyksen vastaus on että lisenssi on kyllä 1. viestin lopussa, se on ollut siellä jo
muistini mukaan loppuvuodesta 2006 asti. Eli on "Public domain" == saa julkaista ja muokata
kääntää ja vääntää ihan kuka vaan ja missä vaan ja jopa kaupallisessakin tarkoituksessa saa.
Suomeksi sama, ehdottomasti saa julkaista Wikissä yms.
Lisenssilinkki vielä uudelleen (johan on kumma jos tuo ei Wikiin kelpaa lisenssinsä puolesta).
http://creativecommons.org/licenses/publicdomain (http://creativecommons.org/licenses/publicdomain)
Joo, muutetaan sitä sitten jos ei muka jotenkin kelpaa.
syysterveisin raimo ;)
Terve raimo pitkästä aikaa. Taisi Risto laittaa ton vähän jokaiseen How To - alueen säikeeseen.
Joku tosiaan voisi kirjoittaa ko. opuksen Wikiin. Siis mielellään sellainen, joka käyttää suoraan iptablesia.
raimo sanoo: poistelen noita Riston laittamia [Kysytty] juttuja.
Voisi käyttää moiseen yksityisviestiä tai mailia ko. Risto ja muutkin modet kuten esim minä.
-
sudo komento ei toimi tässä (jostakin kumman syystä), joten sudoudu kokonaan komennolla sudo su
sudo su
iptables-save > /etc/palomuuri
exit
Ton "sudo su":n voinee kiertää näin:
sudo iptables-save | sudo tee /etc/palomuuri
En ole nyt koneella, voi olla että ensimmäistä sudo:a ei edes tarvitse.
-
Ton "sudo su":n voinee kiertää näin:
Ei voine! Tekeepi näin:
[sudo] password for tiivitaavi: [sudo] password for tiivitaavi:
Sorry, try again.
[sudo] password for tiivitaavi:
Sorry, try again.
[sudo] password for tiivitaavi:
TÄSSÄ EI TAPHDU MITÄÄN ENÄÄ ... KUNNES PAINAA CTRL+C NIIN SITTEN TULEE SEURAAVA ILMOITUS:
sudo: pam_authenticate: Conversation error
Salasana on 1426% varmasti oikea ;)
Edit: jos jättää 1. sudon pois tekee kyllä /etc/palomuuri -tiedoston, mutta se on täysin tyhjä.
kun alunperin ohjeessa mainittu tapa:
sudo su
iptables-save > /etc/palomuuri
exit
tallentaa palomuurin "tiedot" tiedostoon (ei ole tyhjä).
Niin ja terve terve Peran ym. olen ollut sairaalassa kuukausia, veriarvot tipahtivat yhtenä yönä jostakin syystä
täysin alas (valkosoluja 0.1 kun pitäisi olla yli 3.0 ja hemoglobiini ~60 kun pitäisi olla ~140 vähintään ja tuli veren myrkytys/taju pois, melkein kuolin (hoitajat kertoivat jälkeenpäin ollensa melkovarmoja että kuolee se). Mutta enpäs kuollut, näin kuolleeksi jo luultuna, unta että minua ei tapa mikään ei siis kertakaikkiaan mikään, ei edes ydinpommi yms! No lääkäri päätti vielä kerran yrittää (yli 20 minuutia oli jo mennyt ilman pulssia): imurilla keuhkot tyhjäksi ja sitten isoin sähköälaaki sydämeen, ja PUMTSIPUM, heräsin henkiin. Tiputtivat 8 eri antibioottia vereen peränjälkeen jonkun viikon, sitten veritankkausta 3 kertaa. ym kaikenmaailman lääkkeet. No nyt on valkosolut jo 3 ja hemoglobiini nousussa pikkuhiljaa 82 viime viikolla.
Syytä moiseen eivät lääkärit tiedä enkä edes minä tiedä. Enää en siis ole sairaalassa vaan kotona, NAM!)
-
Ton "sudo su":n voinee kiertää näin:
Ei voine!
jussi@one:~$ sudo -k
jussi@one:~$ sudo iptables-save | sudo tee /etc/palomuuri
[sudo] password for jussi: [sudo] password for jussi:
asd
Sorry, try again.
[sudo] password for jussi:
# Generated by iptables-save v1.4.0 on Sun Aug 2 15:16:19 2009
*filter
:INPUT ACCEPT [2674:2922005]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [2390:227518]
COMMIT
# Completed on Sun Aug 2 15:16:19 2009
jussi@one:~$ ls -l /etc/palomuuri
-rw-r--r-- 1 root root 199 2009-08-02 15:16 /etc/palomuuri
jussi@one:~$ cat /etc/palomuuri
# Generated by iptables-save v1.4.0 on Sun Aug 2 15:16:19 2009
*filter
:INPUT ACCEPT [2674:2922005]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [2390:227518]
COMMIT
# Completed on Sun Aug 2 15:16:19 2009
jussi@one:~$
No tuo "sudo su" -tapa taitaa olla parempi, vaikka toi toinenkin jotenkin toimii. Jos kirjoittaa salasanan oikein kahdesti peräkkäin niin toimii ilman tuota herjaa, mutta jälkimmäisellä tulee salasana näkyviin näytölle. Ei hyvä.
-
Minen sano tuohon mitään, tai siis jos luvat on ACCEPT niin skanneri ei voi näyttää vihreetä, ja jos se silti näyttää vihreetä se on rikki, siis sese skanneri.
Toinen vaihtoehto on että näkyjä näette! :)
Itse en ole vielä gutsyyn ryhtynyt, mutta eihän tässä ole kuin 2 päivää niin siihen on ryhdyttävä.
Vaan ihan järjellä ACCEPT = hyväksy, olkoon ubu-versio mikä hyvänsä.
Edittiä: se on seonnut tuo skanneri, testasin aivan itse (feisty)
ja kaikki on komean vihreää vaikka on ACCEPT säännöt.
Joo, en kommentoi, nimittäin 3 kokeilemaani skanneria näyttää pelkkää vihreää, olis kiva tietää mitä on muutettu...
Valitan tämän aiheen nostamista, kun on vähän vanha.
Olen nyt käsittänyt seuraavaa:
- Näillä tämän ketjun säännöillä oma järjestelmä on näkymätön muualle, elikkä "internettiin".
- Kyseiset säännöt toimivat oikein, kun koneen verkkokortilta otetaan IP-osoite. (ts. modeemi on siltaavassa tilassa, eikä näin ollen NAT ole modeemissa päällä
Jos modeemi laitetaan reitittävään tilaan, koneen verkkokortille tulee vain yksi osoite modeemilta. (ja jos NAT / pingauksen esto ovat modeemissa päällä, testeri näyttää vihreää riippumatta siitä mitä sääntöjä on iptablesiin laitettu?)
Kun koneeseen on laitettu tämän ketjun mukaiset säädöt JA modeemi laitetaan reitittävään tilaan, hyväksyvätkö koneen säännöt kaiken modeemilta tulevan liikenteen, koska ko. sääntöjen piti sallia kaikki itseaiheutettu in ja out? ( Eli jos jokin pääsee modeemin läpi, se pääsisi sen jälkeen esteettä koneelle? )
Olenko ihan pihalla?
Edit;-D Olen ihan pihalla ;D.... koska tämä koko ketju olikin jo siirretty arkistoon... No, en silti poista tätä, sillä asia ei ole selvinnyt
-
Kun koneeseen on laitettu tämän ketjun mukaiset säädöt JA modeemi laitetaan reitittävään tilaan, hyväksyvätkö koneen säännöt kaiken modeemilta tulevan liikenteen, koska ko. sääntöjen piti sallia kaikki itseaiheutettu in ja out? ( Eli jos jokin pääsee modeemin läpi, se pääsisi sen jälkeen esteettä koneelle? )
Periaatteessa kyllä, koska NAT-boksilta tuleva liikenne kuuluu aina johonkin koneella aloitettuun yhteyteen (ellei boksiin ole asetettu porttiohjauksia koneelle). Jos joku kuitenkin onnistuisi murtautumaan NAT-boksiin, koneen palomuuri olisi taas edessä, eli suorat yhteydenotot NAT-boksilta estettäisiin aivan kuten yhdeytenotot netistä silloin kun boksi on siltaavassa tilassa.
-
Millä periaatteella oma kone ei blokkaa boksista käsin porttiohjattua liikennettä? Eli kysessä HTTP palvelin NAT:in takana, niin että olen linkannut yhden suuren portin tuohon porttiin 80. Nyt liikenne ei ole itseaiheutettua pääse boksista läpi, mutta silti oman koneenkin palomuuri hyväksyy liikenteen, eli palauttaa kyselyn (portista 80) haluaman sivuston? En ole muutellut koneen palomuurin asetuksia alkuperäisestä ja kyseisen portin pitäisi olla kiinni.
Toisin sanoen:
#sallitaan www-serveri portissa 80, lisää tämä vain jos käytät www-serveriä
sudo iptables -A INPUT -p tcp -s 0/0 -d 0/0 --dport 80 --syn -j ACCEPT
Tuota liutaa en ole ikinä kirjoittanut ja homma toimii siitä huolimatta
-
Millä periaatteella oma kone ei blokkaa boksista käsin porttiohjattua liikennettä?
Pitäisi kyllä blokata, jos Netfilter on asetettu niin etkä ole tehnyt erikseen reikää portille 80. Mitä sudo iptables -L sanoo?
En ole muutellut koneen palomuurin asetuksia alkuperäisestä ja kyseisen portin pitäisi olla kiinni.
Mitä palomuuriskriptiä käytät?
-
Pitäisi kyllä blokata, jos Netfilter on asetettu niin etkä ole tehnyt erikseen reikää portille 80. Mitä sudo iptables -L sanoo?
Chain INPUT (policy ACCEPT)
target prot opt source destination
fail2ban-ssh tcp -- anywhere anywhere multiport dports ssh
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Chain fail2ban-ssh (1 references)
target prot opt source destination
RETURN all -- anywhere anywhere
Pakko tunnustaa, että tuosta en ymmärrä juurikaan mitään.
Mitä palomuuriskriptiä käytät?
En ole erikseen asennellut mitään, eli onko silloin muuta käytössä kuin tuo netfilter/iptables -palomuuri?
-
En ole erikseen asennellut mitään, eli onko silloin muuta käytössä kuin tuo netfilter/iptables -palomuuri?
Ubuntussa ei silloin ole mitään palomuuria, vaan kaikki liikenne sallitaan, kuten iptablesin listauksesta näkyy. Jos tarvitset palomuuria, se on asetettava erikseen joko manuaalisesti iptablesilla tai jollain yksinkertaistetulla skriptillä/ohjelmalla. Ufw (https://help.ubuntu.com/9.10/serverguide/C/firewall.html) tai gufw ovat suositeltavia vaihtoehtoja aloittelijalle. NAT-boksin palomuurin pitäisi kyllä riittää kotikäytössä.
-
Ubuntussa ei silloin ole mitään palomuuria, vaan kaikki liikenne sallitaan, kuten iptablesin listauksesta näkyy.
Ok, kuvittelin että tähän kernel:iin olisi valmiiksi upotettu/rakennettu jonkin sortin palomuuri. Sinänsä mielenkiintoista, minulla on ollut käytössä myös toinen Linux läppäri, johon en myöskään ollut asennellut erikseen mitään. Ajoin siltaavassa tilassa tuon testerin läpi ja näytti vihreää. Olisikohan kyse sitten pingauksen estosta kun noin hyvän tuloksen antoi.. Pitää tähän koneelle kasata kyllä jonkinlainen muuri, niin on vähän turvallisempi olla :)
-
Ok, kuvittelin että tähän kernel:iin olisi valmiiksi upotettu/rakennettu jonkin sortin palomuuri.
Kernelissä on kyllä Netfilter-palomuurijärjestelmä, mutta siinä ei ole vakiona mitään sääntöjä, eikä Ubuntu aseta sellaisia.
-
Pitää tähän koneelle kasata kyllä jonkinlainen muuri, niin on vähän turvallisempi olla :)
Jos siinä koneella ei ole portteja kuuntelevia ohjelmia asennettuna, niin eipä sieltä mikään pääse läpikään, oli muuria tai ei.
-
Kun koneeseen on laitettu tämän ketjun mukaiset säädöt JA modeemi laitetaan reitittävään tilaan, hyväksyvätkö koneen säännöt kaiken modeemilta tulevan liikenteen, koska ko. sääntöjen piti sallia kaikki itseaiheutettu in ja out? ( Eli jos jokin pääsee modeemin läpi, se pääsisi sen jälkeen esteettä koneelle? )
Periaatteessa kyllä, koska NAT-boksilta tuleva liikenne kuuluu aina johonkin koneella aloitettuun yhteyteen (ellei boksiin ole asetettu porttiohjauksia koneelle). Jos joku kuitenkin onnistuisi murtautumaan NAT-boksiin, koneen palomuuri olisi taas edessä, eli suorat yhteydenotot NAT-boksilta estettäisiin aivan kuten yhdeytenotot netistä silloin kun boksi on siltaavassa tilassa.
Kiitos vastauksesta. Kyllä tässä nyt usko alkaa palaamaan järjestelmään. Itse kun en näistä juurikaan käsitä, vaikka kesän koetin selvittää "jotain"** tämän tietoverkon toiminnasta :o. Tuo ajatukseni oli siis ihan maalaisjärjellä päättelyn tulos tuosta "itseaiheutetun liikenteen hyväksyminen"-lauseesta :D.
--
**Jotain: Lueskelin sieltä täältä asioita netin toiminnasta, eli aiheesta, etsien informaatiotulvasta kohtaa josta voisi aloittaa ja jopa päästä jonkinlaiseen käsitykseen aiheesta. Logiikka ei muutenkaan ole vahvimpia puoliani ja into loppui siihen kohtaan missä aloin päästä jonkinlaiseen käsitykseen aiheen laajuudesta ja monimutkaisuudesta.
Ja sama ongelma noissa jutuissa oli kuin muissakin ohjeissa. Ohjeen kirjoittaja osaa asiansa jo niin hyvin, ettei sitä osaa enää ilmaista aloittelijamaisesti.
Sellainenkin sivuvaikutus tällä opiskelulla oli, että aikojen saatossa muokkautunut käsitys, (ilmeisen vääristynyt), omasta älykkyydestä romuttui melko huolella :(. Siinä tuli mieleeni: Miltä tuntuu olla älykäs? Saisipa olla yhden päivän älykäs!!
-
Kiitokset ensin hyvästä ohjesivusta.
Lainaus Raimolta
Tallennetaan asetukset jotta saadaan ne käyttöön heti koneen käynnistyksessä,
sudo komento ei toimi tässä (jostakin kumman syystä), joten sudoudu kokonaan komennolla sudo su
Koodia:
sudo su
iptables-save > /etc/palomuuri
exit
Tarkista syntynyt tallennus:
cat /etc/palomuuri
(älä muokkaa tiedostoa käsin)
Iptables asiani
Esim. Ubuntu 9.04 tuo /etc kansio on se oikea paikka ja talletus nimellä palomuuri tms.
Lähtökohta tietysti että bootissa käynnistyy joka kerta.
Silmään on pistänyt iptables asioissa mm. seuraavat eroavaisuudet ?
Miten nuo eroavat toisistaan onko kaksoispisteet tai taala merkki onko pakollinen mihin vaikuttaa.
Iptables kansiona on nähnyt ubuntu foorumeilla myös /sbin/iptables tai /etc/init.d/
IPT lyhenne tietty iptables sanasta.
versio 1.
IPT=" /sbin/iptables " #välilyönneillä vai ilman
$IPT
IPT="/sbin/iptables" #ilman välilyöntiä
$IPT
versio 2.
IPT=/sbin/iptables
IPT
Pikku asioita mutta haluaisin selvyyden.
Haulla foorumilta ja iptables netfilter kotisivuiltakaan en vastausta löytänyt.
Nimimerkillä ensimmäinen iptables.
Ilmeisesti windows koneesta pystyy SSH :n avulla Pytty :llä copy paste koko .txt iptables litanian kopioimaan serverille.
Kiitokset arvon raadille.
-
Onkohan mun asennuksissa jotain "vikaa", mutta minusta uudessa ubuntuasennuksessa on tullut aina ufw mukana? sitten vaan kirjottaa:
sudo ufw enable
niin alkaa testit näyttelemään vihreää?
-
Juu, ufw:tä suosittelisin minäkin, jos on tarvetta pystyttää palomuuri nopeasti ja helposti. Iptables sopii Netfilterin lähempään opiskeluun ja yksityiskohtaiseen säätämiseen, kun ufw, Shorewall tai jokin muu korkeamman tason skripti ei riitä.
Silmään on pistänyt iptables asioissa mm. seuraavat eroavaisuudet ?
Miten nuo eroavat toisistaan onko kaksoispisteet tai taala merkki onko pakollinen mihin vaikuttaa.
Iptables kansiona on nähnyt ubuntu foorumeilla myös /sbin/iptables tai /etc/init.d/
IPT lyhenne tietty iptables sanasta.
versio 1.
IPT=" /sbin/iptables " #välilyönneillä vai ilman
$IPT
IPT="/sbin/iptables" #ilman välilyöntiä
$IPT
versio 2.
IPT=/sbin/iptables
IPT
Nämä ovat komentotulkin toimintaan ja (ympäristö)muuttujien käyttöön liittyviä kysymyksiä.
x=merkkijono asettaa skriptissä muuttujan x arvoksi =-merkin oikealla puolella olevan merkkijonon. Jos merkkijonossa on välejä tai erikoismerkkejä, se pitää suojata lainausmerkeillä. Muuten komentotulkki yrittää ajaa välin jälkeen tulevan osan komentona. Esimerkkitapauksessasi lainausmerkkejä ei välttämättä tarvita, eikä niiden sisällä olevilla välilyönneillä ole merkitystä, koska komentotulkki jättää ne pois suorittaessaan komentoa.
$-merkkiä tarvitaan silloin kun muuttujaan viitataan myöhemmin. Yllä antamasi versio 2 ei siis toimi, vaan komentotulkki herjaa puuttuvasta IPT-komennosta.
Linux.fi:n Wikissä on suomenkielinen perusopas bash-skriptien kirjoittamiseen: http://linux.fi/wiki/Bash-skriptaus
-
Kiitos nopeasta vastauksesta.
Pieni tarkennus viellä iptables asiaan.
Kun iptables esimerkkejä katselee eri foorumeilla niin lähes aina $ merkki puuttuu tuosta komento rivin alusta.
$ merkki on siis oltava jokaisella komentorivilla palomuurissa valmiina ennen kuin tekee esim. palomuuri.sh scriptiksi.
Eli tässä kohdat 1, 2 toimii mutta kohta 3 heittää herjan sääntöä ei ole.
#!/bin/bash
#muutama rivi kokonaisuudesta
#http://linux.fi/wiki/Iptables
IPTABLES=/sbin/iptables
#Putsataan taulukko 1
${IPTABLES} -F #Sulkujahan ei tarvitse välttämättä
${IPTABLES} -X #Sulkujahan ei tarvitse välttämättä
#Putsataan taulukko 2
$ IPTABLES -F
$ IPTABLES -X
#Putsataan taulukko 3
IPTABLES -F
IPTABLES -X
Kiitokset arvon raadille. Kyllä se tästä.
-
Kiitos nopeasta vastauksesta.
Pieni tarkennus viellä iptables asiaan.
Kun iptables esimerkkejä katselee eri foorumeilla niin lähes aina $ merkki puuttuu tuosta komento rivin alusta.
$ merkki on siis oltava jokaisella komentorivilla palomuurissa valmiina ennen kuin tekee esim. palomuuri.sh scriptiksi.
Eli tässä kohdat 1, 2 toimii mutta kohta 3 heittää herjan sääntöä ei ole.
#!/bin/bash
#muutama rivi kokonaisuudesta
#http://linux.fi/wiki/Iptables
IPTABLES=/sbin/iptables
#Putsataan taulukko 1
${IPTABLES} -F #Sulkujahan ei tarvitse välttämättä
${IPTABLES} -X #Sulkujahan ei tarvitse välttämättä
#Putsataan taulukko 2
$ IPTABLES -F
$ IPTABLES -X
#Putsataan taulukko 3
IPTABLES -F
IPTABLES -X
Kiitokset arvon raadille. Kyllä se tästä.
Alussa määrittelet IPTABLES-muuttujalle arvon /sbin/iptables. Sitten kutsut sitä kirjoittamalla $IPTABLES tai ${IPTABLES}. Ei ole kyse mistään magiikasta, että palomuuriskripteissä pitäisi olla aina taalanmerkki alussa.
Kohta 3 sinulla ei toimi sen takia, että kutsut ohjelmaa IPTABLES, jota ei ole olemassakaan (ohjelman nimi on iptables pienellä kirjoitettuna). Jos kirjoittaisit sen pienellä niin se toimisi, mikäli sinun PATH-muuttujassa on polku tuonne /sbin -hakemistoon.
Kohdan 2 ei pitäisi tuollaisenaan toimia, koska sinulla on väli $-merkin ja muuttujan nimen välissä.
Toki on aina parempi viitata suoraan tuonne oikeaan polkuun niin kuin olet tehnytkin tuon IPTABLES-muuttujan kautta. Halusin vain tarkentaa miksi sitä ei ohjeissa aina ole.
-
jep tämä selvä.
Kiitokset tarkennuksesta.
Nyt muurin kirjoitukseen.