Ero sivun ”TCP Wrapper” versioiden välillä

Siirry navigaatioon Siirry hakuun
345 merkkiä lisätty ,  12. maaliskuuta 2008
hups, hiukan täydennystä ja siistimistä
(→‎hosts.allow ja hosts.deny: tarkennusta, monipuolisemmat esimerkit)
(hups, hiukan täydennystä ja siistimistä)
Rivi 1: Rivi 1:
'''TCP Wrapper''' käsittää ohjelman '''tcpd''' ja kirjaston '''libwrap''', joilla rajoitetaan yhteydet koneen palvelimille mm. yhteyden ottavan koneen perusteella, ikään kuin palomuurilla. Asetustiedostoina ovat <tt>/etc/'''hosts.allow'''</tt> ja <tt>/etc/'''hosts.deny'''</tt>. Ohjelmaa tcpd käytetään [[inetd]]:n tai vastaavan yhteyksiä vastaanottavan "superpalvelimen" kautta, riipumatta palvelinohjelmasta. Kirjastoa libwrap käytetään kääntämällä palvelinohjelma käyttämään sitä suoraan.
'''TCP Wrapper''' käsittää ohjelman '''tcpd''' ja kirjaston '''libwrap''', joilla rajoitetaan yhteydet koneen palvelimille mm. yhteyden ottavan koneen perusteella, ikään kuin [[palomuuri]]lla. Asetustiedostoina ovat <tt>/etc/'''hosts.allow'''</tt> ja <tt>/etc/'''hosts.deny'''</tt>. Ohjelmaa tcpd käytetään [[inetd]]:n tai vastaavan yhteyksiä vastaanottavan "superpalvelimen" kautta, riipumatta palvelinohjelmasta. Kirjastoa libwrap käytetään kääntämällä palvelinohjelma käyttämään sitä suoraan.


==Käyttö==
==Käyttö==
Rivi 12: Rivi 12:
inetd:n kautta sopii käynnistää palvelimia, joita käytetään suhteellisen harvoin ja joiden käynnistäminen ei vie liikaa aikaa tai resursseja.
inetd:n kautta sopii käynnistää palvelimia, joita käytetään suhteellisen harvoin ja joiden käynnistäminen ei vie liikaa aikaa tai resursseja.


Muussa tapauksessa tämä lähestymistapa on epäkäytännöllinen, palvelin käynnistetään [[init]]-skripteistä (katso [[GNU/Linuxin käynnistysprosessi]]) ja ohjelmiston pitää itse huolehtia siitä, mitä yhteyksiä otetaan vastaan, usein käyttämällä libwrap-kirjastoa yhteyden alkuvaiheessa.
Muussa tapauksessa tämä lähestymistapa on epäkäytännöllinen, jolloin palvelin käynnistetään [[init]]-skripteistä (katso [[GNU/Linuxin käynnistysprosessi]]) ja palvelimen pitää itse huolehtia siitä, mitä yhteyksiä otetaan vastaan, usein käyttämällä libwrap-kirjastoa yhteyden alkuvaiheessa.


=== hosts.allow ja hosts.deny ===
=== hosts.allow ja hosts.deny ===
Rivi 21: Rivi 21:
  ALL: 127.0.0.1
  ALL: 127.0.0.1
  sshd:  minä@jokinkone.example.net .firma.example.fi EXCEPT UNKNOWN
  sshd:  minä@jokinkone.example.net .firma.example.fi EXCEPT UNKNOWN
  sshd fingerd nntpd: 192.168.1. 192.168.2
  sshd fingerd nntpd: 192.168.1. 192.168.2.


  # /etc/hosts.deny: list of hosts that are _not_ allowed to access the system
  # /etc/hosts.deny: list of hosts that are _not_ allowed to access the system
  ALL:ALL
  ALL:ALL


Tässä sallitaan kaikki yhteydet koneelta itseltään (localhost eli [[loopback]], 127.0.0.1), [[SSH]]-yhteydet tietyltä koneelta omalla tunnuskella sekä firman verkosta ja lopuksi yhteydet sshd-, finger- ja nyyssipalvelimeen lähiverkosta . Kaikki muut yhteydet kielletään.
Tässä sallitaan kaikki yhteydet koneelta itseltään (localhost eli [[loopback]], 127.0.0.1), [[SSH]]-yhteydet tietyltä koneelta omalla tunnuskella sekä firman verkosta kysymättä tunnusta ja lopuksi yhteydet sshd-, finger- ja nyyssipalvelimeen kahdesta lähiverkosta . Kaikki muut yhteydet kielletään.


Pisteet verkkotunnuksen edessä ja ip-osoitteen lopussa tarkoittavat, että sääntö koskee koko aliverkkoa.
Palvelin määritellään avainsanalla ALL tai sillä nimellä, jona se käynnistetään (exec-kutsun argv[0]).


(koneilta, joilla nimipalvelu toimii, katso alla, tunnusken tapauksessa)
Pisteet verkkotunnuksen edessä ja ip-osoitteen lopussa tarkoittavat, että sääntö koskee koko aliverkkoa. [[Käyttäjä]]tunnuksen käyttö vaatii toimivan [[identd]]-palvelun, joka kertoo tunnuksen. Käyttäjätunnuksena voi käyttää sanaa KNOWN, jolloin identd:n ei tarvitse kertoa itse tunnusta, mutta varmistaa, että yhteys on tältä koneelta. EXCEPT UNKNOWN tarkoittaa, että sääntö ei koske koneita, joiden nimipalvelimet eivät toimi oikein (katso alla).
(huomaa piste, jolla koko aliverkko sallitaan)


Palvelin määritellään avainsanalla ALL tai sillä nimellä, jona se käynnistetään (argv[0]).
ip-osoitteiden käyttö nimien sijaan on suositeltavaa, sillä nimi kysytään ip-osoitteen perusteella koneen oman verkon nimipalvelimelta ja on siten mahdollisesti yhteydenottajan hallinnassa. On mahdollista pyytää toinen nimipalvelukysely näin saadun nimen perustella käyttämällä koneen nimenä KNOWN, UNKNOWN tai PARANOID (tämän ominaisuuden voi myös [[kääntäminen|kääntövaiheessa]] määritellä aina käytettäväksi), jolloin ongelma poistuu, mutta samalla evätään pääsy koneilta, joiden ''[[nimipalvelin|nimipalvelimia]]'' ei ole oikein säädetty, mm. suurelta osalta kuluttajaliittymistä, sekä muualtakin tiettyjen verkko-ongelmien aikana.
 
ip-osoitteiden käyttö nimien sijaan on suositeltavaa, sillä nimi kysytään ip-osoitteen perusteella koneen oman verkon nimipalvelimelta ja on siten mahdollisesti yhteydenottajan kontrollissa. On mahdollista pyytää toinen nimipalvelukysely näin saadun nimen perustella määrittelemellä PARANOID (tämän ominaisuuden voi myös [[kääntäminen|kääntövaiheessa]] määritellä aina käytettäväksi), jolloin ongelma poistuu, mutta samalla evätään pääsy koneilta, joiden ''[[nimipalvelin|nimipalvelimet]]'' ei ole oikein säädetty, mm. suurelta osalta kuluttajaliittymistä.


Vaihtoehtoja määrityksiin on hyvin monipuolisesti, esimerkiksi [[NIS]]-verkkoryhmien käyttö ja lokittaminen onnistuu suoraan. Katso [[man]]uaalisivu hosts_access(5).
Vaihtoehtoja määrityksiin on hyvin monipuolisesti, esimerkiksi [[NIS]]-verkkoryhmien käyttö ja lokittaminen onnistuu suoraan. Katso [[man]]uaalisivu hosts_access(5).
==Katso myös==
* [[Palomuuri]]


[[Luokka:Tietoturva]]
[[Luokka:Tietoturva]]
[[Luokka:Palvelimet]]
[[Luokka:Palvelimet]]
[[Luokka:Asetustiedostot]]
[[Luokka:Asetustiedostot]]
785

muokkausta

Navigointivalikko