IIS veebiserveri turvamine: Difference between revisions
No edit summary |
|||
(15 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
Lembit Elmik AK21 | Lembit Elmik AK21 | ||
==Server== | ==Server== | ||
Samuti kui kõigi teiste, nii algab ka IIS serveri turvamine eelkõige serverist endast. See tähendab, et esimese asjana peab server ise turvaline olema. Peale seda alles on mõtet tegeleda serveril jooksva teenuse turvamisega. Seega enne IIS rolli installeerimist serverile tuleks kindlasti uuendada süsteem ning paigaldada turvapaigad. | |||
Samuti tuleks kasutada korralikku tulemüüri. Windows Serveril on selleks Windows Firewall and Advanced Security. Täpsemalt saab lugeda siit: http://technet.microsoft.com/en-us/library/cc732283%28WS.10%29.aspx | |||
Mida väiksem kogus funktsionaalsust, seda väiksem "pind" sissemurdmiseks. Silmas tuleks siiski pidada, et paigaldada tuleks nii palju kui vaja ning nii vähe kui võimalik. Seda nõuannet rakendades peaks kindlasti serveri installeerimisel mõtlema, kas on üldse enamat Server Core'st vaja. Server core puhul installeeritakse ainult minimaalne hulk komponente, mis on vajalikud kindla rolli tarbeks. See töötab küll väiksema "ründapinna" eesmärgi nimel. Kuid tegelikult on oluline ka see, et nii hoitakse kokku näiteks kettamahte, administreerimise ning halduse tegevusi. | Mida väiksem kogus funktsionaalsust, seda väiksem "pind" sissemurdmiseks. Silmas tuleks siiski pidada, et paigaldada tuleks nii palju kui vaja ning nii vähe kui võimalik. Seda nõuannet rakendades peaks kindlasti serveri installeerimisel mõtlema, kas on üldse enamat Server Core'st vaja. Server core puhul installeeritakse ainult minimaalne hulk komponente, mis on vajalikud kindla rolli tarbeks. See töötab küll väiksema "ründapinna" eesmärgi nimel. Kuid tegelikult on oluline ka see, et nii hoitakse kokku näiteks kettamahte, administreerimise ning halduse tegevusi. | ||
Line 11: | Line 12: | ||
Server Core paigaldusega Windows Server 2008 toetab näiteks DNS, faili ja veebiserveri rolle. Täpsema nimekirja saad lingilt http://go.microsoft.com/fwlink/?LinkId=99832. | Server Core paigaldusega Windows Server 2008 toetab näiteks DNS, faili ja veebiserveri rolle. Täpsema nimekirja saad lingilt http://go.microsoft.com/fwlink/?LinkId=99832. | ||
Server Core installatsion ei sisalda siiski GUI'd ehk graafilist kasutajaliidest. Seega kogu seadistamine toimub käsurea vahendite abiga. Puudub ASP.NET ja .NET raamistik. Seega ei ole võimalik kasutada PowerShell skripte ja loomulikult ei toimi rakendused, mis neid raamistikke | Server Core installatsion ei sisalda siiski GUI'd ehk graafilist kasutajaliidest. Seega kogu seadistamine toimub käsurea vahendite abiga. Puudub ASP.NET ja .NET raamistik. Seega ei ole võimalik kasutada PowerShell skripte ja loomulikult ei toimi rakendused, mis neid raamistikke kasutavad. | ||
==IIS== | ==IIS== | ||
Line 21: | Line 22: | ||
Kui pole vaja avalikku juurdepääsu veebile võib seadistada Windowsi autentimist nii, et juurdepääs on tagatud vaid volitatud isikutel. Autentimine on võimalik siduda nii Windowsi enda kui ka Active Directory teenusega. Sel juhul kõik kasutajad, kes soovivad veebi sisu näha, peabad ennast kõigepealt autentima veebiserveri või AD kaudu. | Kui pole vaja avalikku juurdepääsu veebile võib seadistada Windowsi autentimist nii, et juurdepääs on tagatud vaid volitatud isikutel. Autentimine on võimalik siduda nii Windowsi enda kui ka Active Directory teenusega. Sel juhul kõik kasutajad, kes soovivad veebi sisu näha, peabad ennast kõigepealt autentima veebiserveri või AD kaudu. | ||
* Windows Authentication installeerimiseks mine '''Start''' > '''Server Manager''', laienda '''Roles''' valikut ja klõpsa '''WebServer (IIS)'''. Paremas akna pooles klõpsa '''Add role Services'''. | |||
[[File:W2008instauthrole.jpg|border|Autentimise installeerimine]] | |||
* '''Add Role Services''' viisardis vali '''Windows Authentication''' ja klõpsa '''Next''' > '''Install''' > '''Close'''. | |||
[[File:W2008instauthrole2.jpg|border|Autentimise installeerimine]] | |||
* Et lubada Windowsi autentimine, ava '''Internet Information Services (IIS) Manager'''. '''Connections''' paanil klõpsa serveri nimel ja seejärel '''Home''' paanil tee topeltklõps '''Authentication''' peal. | |||
[[File:W2008instauthrole3.jpg|border|Autentimise installeerimine]] | |||
* '''Authentication''' paneelis vali '''Windows Authentication''' ja luba see valides paremalt '''Enable'''. Anonüümse ligipääsu keelamiseks klõpsa '''Anonymous Authentication''' ning paremalt '''Disable'''. | |||
[[File:W2008instauthrole4.jpg|border|Autentimise installeerimine]] | |||
==Konkreetse hostinimega sidumine== | ==Konkreetse hostinimega sidumine== | ||
Line 36: | Line 41: | ||
Siiski saab tõesti säherdune uss saata päringuid ja saada vastused, kuid sel juhul peab see olema juba keerulisema ehituse ja tarkusega. Konkreetse hostinimega teenuse sidumine ei tee veel serverit täiesti turvalist kasti, kuid raskendab selle ründamist. | Siiski saab tõesti säherdune uss saata päringuid ja saada vastused, kuid sel juhul peab see olema juba keerulisema ehituse ja tarkusega. Konkreetse hostinimega teenuse sidumine ei tee veel serverit täiesti turvalist kasti, kuid raskendab selle ründamist. | ||
* Ava '''IIS Manager''' ja vali veebiserveri nimi. Saitide all tee parem-klõps soovitud veebilehel ning vali '''Edit Bindings'''. | |||
[[File:W2008iisubind1.jpg|border|Unikaalne sidumine]] | |||
* '''Edit Site Binding''' dialoogi aknas vali tüüpide nimekirjast '''HTTP''' ning klõpsa '''Edit''' peal. Vali sellele lehele vajalik IP aadress ning kirjuta sobiv hosti nimi. | |||
[[File:W2008iisubind2.jpg|border|Unikaalne sidumine]] | |||
Selle tegevusega saab siis kaitsta serverit raskendades rünnakute läbiviimist. | Selle tegevusega saab siis kaitsta serverit raskendades rünnakute läbiviimist. | ||
==SSL== | ==SSL== | ||
Line 48: | Line 54: | ||
Käesolevas juhendis tuleb juttu enda signeeritud SSL sertifikaadi loomisest. | Käesolevas juhendis tuleb juttu enda signeeritud SSL sertifikaadi loomisest. | ||
* Ava '''Internet Information Services Manager'''. | |||
* Klõpsa hiirega oma masinal '''Connections''' puus ja siis topelt-klõps '''Server Certificates''' valikul. | |||
[[File:W2008SSSSL.jpeg|border|Self-Signed SSL|300px]] | |||
* Vali '''Actions''' paneelilt '''Create Self-Signed Certificate'''. | |||
[[File:W2008SSSSL2.jpeg|border|Self-Signed SSL|300px]] | |||
* Sisesta oma sertifikaadi nimi ning klõpsa peale seda '''OK'''. | |||
[[File:W2008SSSSL3.jpeg|border|Self-Signed SSL|300px]] | |||
Ongi kogu lugu. Omatehtud sertifikaat ongi loodud. Loomulikult korraliku ning tõsiseltvõetava sertifikaadi jaoks on tarvis siiski mõne Certification Authority poolt tunnustatud sertifikaati. Täpsema informatsiooni hankimisega võib alustada näiteks siit: http://msdn.microsoft.com/en-us/library/bb540797(VS.85).aspx | |||
==FTP== | ==FTP== | ||
FTP 7.5 | FTP 7.5 IIS 7.0 jaoks saab laadida näiteks siit: | ||
http://go.microsoft.com/fwlink/?LinkID=143197 | http://go.microsoft.com/fwlink/?LinkID=143197 | ||
Nüüd loome FTP teenuse, mis kasutab seda sama enda loodud SSL sertifikaati. | Nüüd loome FTP teenuse, mis kasutab seda sama enda loodud SSL sertifikaati. | ||
* Mine '''IIS Manageri'''. '''Connections''' paneelilt vali '''Sites'''. | |||
* Tee seal parem-klõps '''Sites''' peal ning vali hüpikmenüüst '''Add FTP Site'''. Teine võimalus selleks on '''Actions''' paneelilt valida '''Add FTP Site'''. | |||
[[File:W2008SSftp.jpeg|border|SSL FTP|300px]] | |||
* avanenud '''Add FTP Site''' viisardis sisesta kõigepealt nimi. Näiteks Minu FTP. Ja siis tuleb kindlasti määrata FTP kausta asukoht kettal (%SystemDrive%\inetpub\ftproot) | |||
[[File:W2008SSftp2.jpeg|border|SSL FTP|300px]] | |||
* Järgmisel lehel vali, millisele IP'le see FTP teenus vastama peab. Samuti on võimalik valida TCP/IP protokolli port, mida ühenduseks kasutatakse. | |||
** Samal lehel saad märkida, kas FTP teenus käivitatakse automaatselt või tuleb seda teha käsitsi. | |||
** Lisaks saad märkida sellel lehel '''Allow SSL'''. Ja sel juhul vali menüüst ka soovitud SSL sertifikaat. Näiteks eelmises punktis loodud enda allkirjastatud SSL sertifikaat. | |||
[[File:W2008SSftp3.jpeg|border|SSL FTP|300px]] | |||
* Järgmisel lehel vali '''Autentication''' all '''Basic'''. | |||
** '''Authorization''' jaotuses vali '''Specified users''' ning kirjuta soovitud kasutajanimi allolevasse lahtrisse. | |||
[[File:W2008SSftp4.jpeg|border|SSL FTP|300px]] | |||
Siinkohal oledki valmis saanud SSL-põhise FTP teenuse. | Siinkohal oledki valmis saanud SSL-põhise FTP teenuse. |
Latest revision as of 20:18, 5 April 2011
Lembit Elmik AK21
Server
Samuti kui kõigi teiste, nii algab ka IIS serveri turvamine eelkõige serverist endast. See tähendab, et esimese asjana peab server ise turvaline olema. Peale seda alles on mõtet tegeleda serveril jooksva teenuse turvamisega. Seega enne IIS rolli installeerimist serverile tuleks kindlasti uuendada süsteem ning paigaldada turvapaigad.
Samuti tuleks kasutada korralikku tulemüüri. Windows Serveril on selleks Windows Firewall and Advanced Security. Täpsemalt saab lugeda siit: http://technet.microsoft.com/en-us/library/cc732283%28WS.10%29.aspx
Mida väiksem kogus funktsionaalsust, seda väiksem "pind" sissemurdmiseks. Silmas tuleks siiski pidada, et paigaldada tuleks nii palju kui vaja ning nii vähe kui võimalik. Seda nõuannet rakendades peaks kindlasti serveri installeerimisel mõtlema, kas on üldse enamat Server Core'st vaja. Server core puhul installeeritakse ainult minimaalne hulk komponente, mis on vajalikud kindla rolli tarbeks. See töötab küll väiksema "ründapinna" eesmärgi nimel. Kuid tegelikult on oluline ka see, et nii hoitakse kokku näiteks kettamahte, administreerimise ning halduse tegevusi.
Server Core paigaldusega Windows Server 2008 toetab näiteks DNS, faili ja veebiserveri rolle. Täpsema nimekirja saad lingilt http://go.microsoft.com/fwlink/?LinkId=99832.
Server Core installatsion ei sisalda siiski GUI'd ehk graafilist kasutajaliidest. Seega kogu seadistamine toimub käsurea vahendite abiga. Puudub ASP.NET ja .NET raamistik. Seega ei ole võimalik kasutada PowerShell skripte ja loomulikult ei toimi rakendused, mis neid raamistikke kasutavad.
IIS
Järgmisena tulebki ette võtta IIS rolli paigaldamine. Vaikimisi installeeritakse vaid minimaalne IIS funktsionaalsus. See teenibki just turvalisuse eesmärke. Kui on vaja enamaid IIS võimalusi, saab need eraldi märkida ning installeerida.
Autentimine
Kui pole vaja avalikku juurdepääsu veebile võib seadistada Windowsi autentimist nii, et juurdepääs on tagatud vaid volitatud isikutel. Autentimine on võimalik siduda nii Windowsi enda kui ka Active Directory teenusega. Sel juhul kõik kasutajad, kes soovivad veebi sisu näha, peabad ennast kõigepealt autentima veebiserveri või AD kaudu.
- Windows Authentication installeerimiseks mine Start > Server Manager, laienda Roles valikut ja klõpsa WebServer (IIS). Paremas akna pooles klõpsa Add role Services.
- Add Role Services viisardis vali Windows Authentication ja klõpsa Next > Install > Close.
- Et lubada Windowsi autentimine, ava Internet Information Services (IIS) Manager. Connections paanil klõpsa serveri nimel ja seejärel Home paanil tee topeltklõps Authentication peal.
- Authentication paneelis vali Windows Authentication ja luba see valides paremalt Enable. Anonüümse ligipääsu keelamiseks klõpsa Anonymous Authentication ning paremalt Disable.
Konkreetse hostinimega sidumine
Teenuse sidumine konkreetse IP aadressiga tagav, et veebiserver teenindab vaid mingit konkreetset hosti vaid konkreetselt IP aadressilt, mitte kõigilt, mis on selle serverile antud.
Konkreetse IP aadressiga sidumine vähendab riske selliste rünnakute puhul, kus häkker või viirus skanneerib tervet IP alamvõrku enne kui ründab. Selline viirus proovib kõigepealt ühenduda näiteks aadressiga 192.168.1.1. Siis 192.168.1.2 jne. Seni kuni jõuab sinu serverini (selles subnetis).
Kui selline konkreetne sidumine on olemas, siis iga ühenduse võtmine näiteks aadressile http://192.168.1.253 kukuks läbi, sest sinu server on seadistatud vastama vaid hosti nimele, näiteks http://minudomeen.ee.
Siiski saab tõesti säherdune uss saata päringuid ja saada vastused, kuid sel juhul peab see olema juba keerulisema ehituse ja tarkusega. Konkreetse hostinimega teenuse sidumine ei tee veel serverit täiesti turvalist kasti, kuid raskendab selle ründamist.
- Ava IIS Manager ja vali veebiserveri nimi. Saitide all tee parem-klõps soovitud veebilehel ning vali Edit Bindings.
- Edit Site Binding dialoogi aknas vali tüüpide nimekirjast HTTP ning klõpsa Edit peal. Vali sellele lehele vajalik IP aadress ning kirjuta sobiv hosti nimi.
Selle tegevusega saab siis kaitsta serverit raskendades rünnakute läbiviimist.
SSL
SSL - Secure Socets Layer - on krüptograafia protokoll, mis pakub ühenduse turvalisust üle suure interneti. SSL krüpteerib võrguühendust transpordi kihi peal kasutades selleks sümmeetrilist krüptoalgoritmi ning sõnumi autentimise võtmehaldust. Edasi saab lugeda näiteks http://en.wikipedia.org/wiki/Secure_Sockets_Layer.
Käesolevas juhendis tuleb juttu enda signeeritud SSL sertifikaadi loomisest.
- Ava Internet Information Services Manager.
- Klõpsa hiirega oma masinal Connections puus ja siis topelt-klõps Server Certificates valikul.
- Vali Actions paneelilt Create Self-Signed Certificate.
- Sisesta oma sertifikaadi nimi ning klõpsa peale seda OK.
Ongi kogu lugu. Omatehtud sertifikaat ongi loodud. Loomulikult korraliku ning tõsiseltvõetava sertifikaadi jaoks on tarvis siiski mõne Certification Authority poolt tunnustatud sertifikaati. Täpsema informatsiooni hankimisega võib alustada näiteks siit: http://msdn.microsoft.com/en-us/library/bb540797(VS.85).aspx
FTP
FTP 7.5 IIS 7.0 jaoks saab laadida näiteks siit: http://go.microsoft.com/fwlink/?LinkID=143197
Nüüd loome FTP teenuse, mis kasutab seda sama enda loodud SSL sertifikaati.
- Mine IIS Manageri. Connections paneelilt vali Sites.
- Tee seal parem-klõps Sites peal ning vali hüpikmenüüst Add FTP Site. Teine võimalus selleks on Actions paneelilt valida Add FTP Site.
- avanenud Add FTP Site viisardis sisesta kõigepealt nimi. Näiteks Minu FTP. Ja siis tuleb kindlasti määrata FTP kausta asukoht kettal (%SystemDrive%\inetpub\ftproot)
- Järgmisel lehel vali, millisele IP'le see FTP teenus vastama peab. Samuti on võimalik valida TCP/IP protokolli port, mida ühenduseks kasutatakse.
- Samal lehel saad märkida, kas FTP teenus käivitatakse automaatselt või tuleb seda teha käsitsi.
- Lisaks saad märkida sellel lehel Allow SSL. Ja sel juhul vali menüüst ka soovitud SSL sertifikaat. Näiteks eelmises punktis loodud enda allkirjastatud SSL sertifikaat.
- Järgmisel lehel vali Autentication all Basic.
- Authorization jaotuses vali Specified users ning kirjuta soovitud kasutajanimi allolevasse lahtrisse.
Siinkohal oledki valmis saanud SSL-põhise FTP teenuse.
SSL sertificaatidega on võimalik juba täpsemalt edasi mängida. Edasist infot saab kasutatud kirjanduse loetelust.