Kuidas tagada võrguteenuseid Linuxi TCP-mähiste abil
Selles artiklis selgitame, mis on TCP ümbrised ja kuidas neid konfigureerida tulemüüriks.
Selles osas võite mõelda, et see tööriist on teie süsteemi ülim turvameede. Kasutades tulemüüri ja TCP-mähiseid, selle asemel, et eelistada üksteist, veendute, et teie serverisse ei jääks ükski rikke punkt.
Host.allow ja hosts.deny mõistmine
Kui võrgutaotlus teie serverisse jõuab, kasutavad TCP-mähised hosts.allow
ja hosts.deny
(selles järjekorras), et teha kindlaks, kas kliendil peaks olema lubatud antud teenust kasutada .
Vaikimisi on need failid tühjad, kõik on kommenteeritud või neid pole olemas. Seega on kõik lubatud TCP-mähiste kihi kaudu ja teie süsteem jääb täieliku kaitse saamiseks tuginema tulemüürile. Kuna see pole sissejuhatuses märgitud põhjusel soovitav, veenduge, et mõlemad failid oleksid olemas:
# ls -l /etc/hosts.allow /etc/hosts.deny
Mõlema faili süntaks on sama:
<services> : <clients> [: <option1> : <option2> : ...]
kus
- teenused on komadega eraldatud teenuste loend, millele praegust reeglit tuleks rakendada.
- kliendid esindavad komaga eraldatud hostinimede või IP-aadresside loendit, mida reegel mõjutab. Aktsepteeritakse järgmisi metamärke:
- KÕIK sobib kõigega. Kehtib nii klientide kui ka teenuste kohta.
- LOCAL vastab võõrustajatele, kelle FQDN-is pole perioodi, näiteks localhost.
- TEADLIK näitab olukorda, kus hostinimi, hostiaadress või kasutaja on teada.
- Tundmatu on vastand teadmusele.
- PARANOID põhjustab ühenduse katkemise, kui vastupidised DNS-otsingud (esmalt IP-aadressil hosti nime määramiseks, seejärel hosti nimel IP-aadresside saamiseks) tagastavad igal juhul erineva aadressi.
Peaksite meeles pidama, et reegel, mis lubab juurdepääsu teenusele
/etc/hosts.allow
antud teenusele, on ülimuslik reegli suhtes, mis keelab/etc/hosts.deny
seda. Lisaks, kui sama teenuse kohta kehtivad kaks reeglit, võetakse arvesse ainult esimest.Kahjuks ei toeta kõik võrguteenused TCP-ümbriste kasutamist. Tehke kindlaks, kas antud teenus neid toetab.
# ldd /path/to/binary | grep libwrap
Kui ülaltoodud käsk tagastab väljundi, saab selle TCP-ga mähkida. Selle näiteks on sshd ja vsftpd, nagu siin näidatud:
Kuidas kasutada teenustele juurdepääsu piiramiseks TCP-mähisteid
Redigeerides
/etc/hosts.allow
ja/etc/hosts.deny
, lisage kindlasti uus rida, vajutades Enter pärast viimast mittetühja rida.Kui lubate SSH-le ja FTP-le juurdepääsu ainult 192.168.0.102-le ja localhostile ning keelate kõik teised, lisage need kaks rida jaotisse
/etc/hosts.deny
:sshd,vsftpd : ALL ALL : ALL
ja järgmine rida jaotises
/etc/hosts.allow
:sshd,vsftpd : 192.168.0.102,LOCAL
# # hosts.deny This file contains access rules which are used to # deny connections to network services that either use # the tcp_wrappers library or that have been # started through a tcp_wrappers-enabled xinetd. # # The rules in this file can also be set up in # /etc/hosts.allow with a 'deny' option instead. # # See 'man 5 hosts_options' and 'man 5 hosts_access' # for information on rule syntax. # See 'man tcpd' for information on tcp_wrappers # sshd,vsftpd : ALL ALL : ALL
# # hosts.allow This file contains access rules which are used to # allow or deny connections to network services that # either use the tcp_wrappers library or that have been # started through a tcp_wrappers-enabled xinetd. # # See 'man 5 hosts_options' and 'man 5 hosts_access' # for information on rule syntax. # See 'man tcpd' for information on tcp_wrappers # sshd,vsftpd : 192.168.0.102,LOCAL
Need muudatused toimuvad kohe, ilma et oleks vaja uuesti käivitada.
Järgmisel pildil näete sõna
LOCAL
eemaldamise mõju viimaselt realt: FTP-server ei ole localhosti jaoks saadaval. Pärast metamärgi lisamist muutub teenus uuesti kättesaadavaks.Kõigi teenuste lubamiseks hostidele, kus nimi sisaldab
example.com
, lisage see rida jaotissehosts.allow
:ALL : .example.com
ja et keelata 10.0.1.0/24 masinatele juurdepääsu vsftpd-le, lisage see rida
hosts.deny
:vsftpd : 10.0.1.
Kahe viimase näite puhul märkige klientide loendi alguses ja lõpus olevat punkti. Seda kasutatakse\"KÕIK hostid ja/või kliendid, kus nimi või IP sisaldab seda stringi".
Kas see artikkel oli teile kasulik? Kas teil on küsimusi või kommentaare? Heitke meile märkus, kasutades allolevat kommentaarivormi.