- Lähtökohta
- Pakettienhallinnassa
firehol
on asennettuna. - Ongelma
- Käynnistyksen yhteydessä
FireHOL
antaa seuraavanlaisen varoituksen:WARNING File '/etc/firehol/RESERVED_IPS' is more than 90 days old. You should update it to ensure proper operation of your firewall. Run the supplied get-iana.sh script to generate this file.
Get-iana.sh
-komentojono on tallennettu/sbin/get-iana
-tiedostoon, joten sen suorittaminen tapahtuusudo get-iana
-komennolla. Komennon suorittaminen antaa kuitenkin seuraavanlaisen virheilmoituksen:Failed to find reserved IPs. Possibly the file format has been changed, or I cannot fetch the URL.
- Ongelman syy
- FireHOLin asetustiedostoihin kuuluva
RESERVED_IPS
on vanhentunut, samoin kuin sen päivittämiseen käytettävä komentojonotiedosto. - Ratkaisu
- Lataan tuoreen version komentojonotiedostosta, ja suoritan sen.
- Lataan get-iana.sh -tiedoston uusimman version suoraan FireHOLin versionhallintajärjestelmästä, ja tallennan sen kotihakemistooni.
- Korvaan järjestelmässäni olevan, vanhentuneen version komentojonotiedostosta sen uudella versiolla, seuraavalla komennolla:
sudo cp ~/get-iana.sh /sbin/get-iana
- Suoritan komentojonotiedoston varattujen IP-osoitteiden listan päivittämiseksi:
sudo get-iana
Ladattuaan tarvitsemansa tiedot Internetistä komentojono esittää seuraavan kysymyksen:
Would you like to save this list to /etc/firehol/RESERVED_IPS so that FireHOL will automatically use it from now on? yes or no >
Vastaan myöntävästi kirjoittamalla
yes
ja painamalla sen jälkeen rivinvaihtonäppäintä.
Tämän jälkeen FireHOL ei enää käynnistyksen yhteydessä näytä varoitustaan, ennen kuin yhdeksänkymmentä päivää on kulunut, jonka jälkeen sudo get-iana -komento täytyy suorittaa jälleen.
- Huomautus
- Tuntuisi luontevalta määrätä get-iana suoritettavaksi automaattisesti vaikkapa kerran kuussa, mutta komentojonotiedostossa ei ole valitsinta, jota käyttämällä se kirjoittaisi muutokset asetustiedostoon kysymättä varmistusta. Olisi ilmeisesti varsin yksinkertaista muokata komentojonoa tältä osin, mutta aion toistaiseksi suorittaa komentojonon komentoriviltä aina 90 päivän välein.
Tag: FireHOL
-
[Ratkaisu] FireHOL varoittaa RESERVED_IPS-tiedoston vanhentumisesta
-
[Ratkaisu] Tiedoston lähettäminen IRC-tuttavalle ei onnistu Pidginissä
- Lähtökohta
- Olen asentanut
firehol
-paketin, asettanut/etc/default/firehol
-tiedostossa olevanSTART_FIREHOL
-parametrin arvoksi YES ja muokannut/etc/firehol/firehol.conf
-tiedostoa niin, että lähtökohtaisesti useimmat verkkoyhteyteni porteista on suljettu.Olen käynnistänyt
Pidgin-pikaviestimen
. Olen lisännyt Pidginiin IRC-protokollan välityksellä yhdistettävän tuttavan. Olen avannut keskustelun tuttavan kanssa, ja keskusteluyhteys toimii.Haluan lähettää tuttavalle kuvatiedoston, joten valitsen keskusteluikkunan
Keskustelu
-valikostaLähetä tiedosto...
-kohteen, etsin avautuneesta tiedostonvalitsimesta lähetettävän tiedoston, valitsen sen ja painanAvaa
-nappia. Tiedostonsiirtoikkuna avautuu, ja sen listalla valitsemani tiedoston mainitaan odottavan lähetyksen alkamista. - Ongelma
- Tiedoston lähetys ei käynnisty. Mikäli tuttavani saa ilmoituksen tiedostonsiirtopyynnöstäni, sen hyväksymisellä ei ole vaikutusta yhteyden tässä päässä. Joillain yrityskerroilla tuttava ei saa edes ilmoitusta tiedostonsiirtopyynnöstäni.
- Ongelman syy
FireHOL
-palomuuri on tukkinut portit, joita Pidgin yrittää käyttää tiedoston siirtämiseen.- Ratkaisu
- Avaan palomuurista yhden portin ja määrään sen jälkeen Pidginin käyttämään juuri sitä porttia tiedostonsiirtoihin.
- Avaan portin muokkaamalla /etc/firehol/firehol.conf -tiedostoa komentamalla
sudo gedit /etc/firehol/firehol.conf
avaamastaniPäätteestä
. Asetustiedoston avauduttua tekstieditorissa lisään siihen määrittelyn palvelulle, jonka nimeänpdcc
:ksi:
# Pidgin file transfer server_pdcc_ports="tcp/2048" client_pdcc_ports="any"
Sen jälkeen määrittelen tämän portin
interface any world
-osion alla avattavaksi:# Let Pidgin file transfer through server "pdcc" accept client "pdcc" accept
Muutosten jälkeen tiedoston keskiosa näyttää tässä tapauksessa seuraavalta, kun edellä lisäämäni rivit on korostettu lihavoinnilla:
# Windows Live Messenger server_wlm_ports="tcp/1863 tcp/443" client_wlm_ports="any" # Pidgin's file transfer server_pdcc_ports="tcp/2048" client_pdcc_ports="any" interface any world # Accept all client traffic on any interface #client all accept # Let Windows Live Messenger through server "wlm" accept client "wlm" accept # Let Pidgin's file transfer through server "pdcc" accept client "pdcc" accept
- Muutokset tehtyäni ja tallennettuani käynnistän FireHOL-palomuurin uudestaan
sudo /etc/init.d/firehol restart
-komennolla. - Palomuurin käynnistyttyä uudestaan avaan Pidginin pääikkunan, ja otan Pidginin asetukset esille valitsemalla
Työkalut
-valikosta kohdanAsetukset
. Avautuvasta ikkunasta otan esilleVerkko
-välilehden. - Valitsen
Portit
-otsikon alla olevanAseta kuunneltava porttialue
-kohdan käyttöönotetuksi. - Edelleen Portit-otsikon alla olevan porttialueen
Ensimmäiseksi portiksi
asetan edellä palomuurista avaamani portin2048
. Varmistan, että myös porttialueenViimeinen portti
on2048
. - Suljen asetusikkunan sen
Sulje
-napista, jonka jälkeen sammutan Pidginin valitsemalla sen pääikkunanTuttavat
-valikosta kohdanLopeta
. Pidginin sulkeuduttua käynnistän sen uudestaan.
Tämän jälkeen tiedostojen siirtäminen IRC-protokollaa käyttävälle tuttavalleni onnistuu.
- Avaan portin muokkaamalla /etc/firehol/firehol.conf -tiedostoa komentamalla
- Huomautus
- En ole varma, mutta epäilen, että mikäli tiedostonsiirtoon varattuja portteja on vain yksi kuten yllä olevan ratkaisun jälkeen on, tiedostoja voi siirtää Pidginissä vain yhden kerrallaan. Lisäksi tiedostojen siirtäminen ei onnistu, mikäli jokin toinen ohjelma käyttää sekin ratkaisussa valitsemaani porttia.
Mikäli näin on, ja mikäli minulla ilmenee tarvetta useammille yhtäaikaisille tiedostonsiirroille Pidginissä, tai tarvetta käyttää tiedostonsiirron tapahtuessa muita ohjelmia, jotka käyttävät samaa porttia, voin määrätä yhden portin sijasta haluamani kokoisen porttialueen avatuksi palomuurin asetuksissa. Sen jälkeen kerron Pidginille (ja mahdollisesti myös toiselle ohjelmalle) sen asetuksissa, että se voi käyttää tätä porttialuetta tiedostojen siirtämiseen.
-
[Ratkaisu] FireHOL (iptables) täyttää dmesgin ja syslogin
- Lähtökohta
- Haluan katsoa käynnistyksen aikana ylöskirjattuja tapahtumia
dmesg
-komennolla ja/var/log/syslog
-tiedoston sisältöä lukemalla.
Olen asentanutFireHOL-palomuurin
ja asettanut sen käynnistymään järjestelmän käynnistymisen yhteydessä. - Ongelma
- Dmesg-komennon antama tuloste on täynnä palomuurin ylöskirjaamia tietoja pakettien välityksestä. Tuloste sisältää pelkästään seuraavan kaltaisia rivejä:
:08:00 SRC=130.234.192.48 DST=130.234.195.255 LEN=211 TOS=0x00 PREC=0x00 TTL=128 ID=63892 PROTO=UDP SPT=138 DPT=138 LEN=191
Myös /var/log/syslog on täynnä samanlaisia rivejä niin, että lokin muu sisältö hukkuu kokonaan niiden sekaan.
Haluan, että palomuurin ilmoitukset kirjataan erilliseen lokitiedostoon. Jos tämä ei ole mahdollista, haluan, että palomuuri kirjaa ylös ainoastaan nykyistä rajaa tärkeämmät toimet pakettien kanssa niin, että palomuurin ilmoitukset eivät hukuta lokeissa olevaa muuta tietoa alleen. Jos tämäkään ei ole mahdollista, haluan, että palomuuri ei kirjaa lokiin mitään.
- Ongelman syy
- FireHOL käyttää lokinpitoon
syslogd
:tä. - Ratkaisu
- Asennan pakettienhallinnassa
ulogd
-paketin, ja asetan sen jälkeen FireHOLin käyttämäänulogd
:tä lokinpidossaan.
Asetan FireHOLin käyttämään ulogd:tä avaamalla/etc/default/firehol
-tiedoston muokattavaksisudo gedit /etc/default/firehol
-komennolla ja lisäämällä siihen sitten seuraavan rivin:FIREHOL_LOG_MODE="ULOG"
Tallennettuani muutokset tiedostoon käynnistän FireHOLin uudestaan
sudo /etc/init.d/firehol restart
-komennolla. Tämän jälkeen palomuurin ilmoitukset tallentuvat/var/log/ulog/syslogemu.log
-tiedostoon, eivätkä enää tallennu /var/log/syslog -tiedostoon tai dmesgin puskuriin.
-
[Ratkaisu] Windows Live Messenger -tili ei toimi FireHOLin asennuksen jälkeen
- Lähtökohta
- Olen määritellyt
Pidgin-pikaviestimessä
Windows Live Messenger -tilin. Pystyn kirjautumaan tilille, jos en asenna palomuuria.Olen asentanut
firehol
-paketin, asettanut/etc/default/firehol
-tiedostossa olevanSTART_FIREHOL
-parametrin arvoksiYES
, asentanutmoblock-nfq
-paketin ja muokannut/etc/firehol/firehol.conf
-tiedostoa niin, että sen sisältö on Ubuntu Forumilla annetun esimerkin mukainen:version 5 # Moblock chain iptables --new MOBLOCK iptables -A MOBLOCK -j NFQUEUE # Example udp ports server_exampleport_ports="udp/15001:15011" client_exampleport_ports="any" # "any" means any interface, you can substitute it # for eth0 or whatever. interface any world # Let torrent and exampleport through, and # filter them in moblock. server "exampleport" MOBLOCK # This will send http traffic directly # to accept instead of moblock # thus whitelisting it... client http accept # Filter all outgoing connections, and their replies. client all MOBLOCK
Olen käynnistänyt järjestelmän uudelleen ja kirjautunut sisään. Sisäänkirjautumisen yhteydessä käynnistyväksi ja pikaviestitileilleni sisäänkirjautuvaksi asetettu Pidgin käynnistyy, ja siihen asettelemieni IRC- ja Gtalk-tilien sisäänkirjautuminen onnistuu.
- Ongelma
- Windows Live Messenger -tilin sisäänkirjautuminen ei onnistu. Pidgin ilmoittaa pitkän yhteydenottoyrityksen lopuksi
Yhteys katkennut
jaYhteysvirhe palvelimelta Notification: Yhteyden muodostaminen epäonnistui.
- Ongelman syy
- Firehol-palomuuri on sulkenut Windows Live Messenger -tilille kirjautumisessa käytettävät portit
443
ja1863
. - Ongelman ratkaisu
- Avaan tarvittavat portit, jonka jälkeen käynnistän palomuurin uudelleen ja käsken Pidginin kirjautumaan Windows Live Messenger -tililleni uudestaan.
- Avaan tarvittavat portit muokkaamalla /etc/firehol/firehol.conf -tiedostoa komentamalla
sudo gedit /etc/firehol/firehol.conf
avaamastaniPäätteestä
. Asetustiedoston avauduttua tekstieditorissa lisään siihen määrittelyn palvelulle, jonka nimeänwlm
:ksi:
# Windows Live Messenger server_wlm_ports="tcp/1863 tcp/443" client_wlm_ports="any"
Sen jälkeen määrittelen nämä portit
interface any world
-osion alla avattaviksi:# Let Windows Live Messenger through server "wlm" accept client "wlm" accept
Muutosten jälkeen tiedoston keskiosan tulisi näyttää seuraavalta, kun Lähtökohta-osiossa annettuun listaukseen lisäämäni rivit on korostettu lihavoinnilla:
# Example udp ports server_exampleport_ports="udp/15001:15011" client_exampleport_ports="any" # Windows Live Messenger server_wlm_ports="tcp/1863 tcp/443" client_wlm_ports="any" interface any world # Let Windows Live Messenger through server "wlm" accept client "wlm" accept # Let torrent and exampleport through, and
- Muutokset tehtyäni ja tallennettuani käynnistän
FireHOL
-palomuurin uudestaan komentamalla Päätteestäsudo /etc/init.d/firehol restart
- Palomuurin käynnistyttyä uudestaan otan Windows Live Messenger -tilini pois käytöstä Pidginissä valitsemalla
Tuttavalista
-näkymänKäyttäjätilit
-valikosta Windows Live Messenger -tilini alta kohdanPoista käytöstä
. Sen jälkeen otan tilin uudestaan käyttöön valitsemalla Windows Live Messenger -tilini Käyttäjätilit-valikonOta tili käyttöön
-alivalikosta.
Tämän jälkeen sisäänkirjautuminen Windows Live Messenger -tililleni onnistuu.
- Avaan tarvittavat portit muokkaamalla /etc/firehol/firehol.conf -tiedostoa komentamalla
- Huomautus
- Fireholissa on varattu MSN:ää varten oma nimetty porttinsa,
msn
, mutta Windows Live Messenger käyttää eri portteja.