Uvod
Sigurnost u online okruženju ima ključnu važnost u savremenom digitalnom dobu. Web stranice koje ne koriste SSL sertifikate su izložene riziku od hakerskih napada i mogu obeshrabriti korisnike. SSL sertifikati osiguravaju enkriptovanu vezu između web servera i korisnikovog pretraživača, čime štite osetljive informacije poput lozinki i brojeva bankovnih kartica.
U ovom uputstvu, korak po korak, objasnićemo kako kreirati samopotpisani SSL sertifikat za Nginx web server koji radi na Ubuntu operativnom sistemu. Samopotpisani SSL sertifikati ne izdaju se od strane proverenog sertifikacionog tela i neće biti prikazani kao „zeleni“ u pretraživačima, ali će i dalje omogućiti enkriptovanu komunikaciju i zaštititi vaše podatke.
Neophodni uslovi
Pre nego što započnete, proverite da li ispunjavate sledeće uslove:
* Računar sa instaliranim Ubuntu 20.04 ili novijom verzijom
* Web server Nginx instaliran na sistemu
* Administratorski pristup (root prava)
Postupak
1. Generisanje privatnog ključa
Za početak, kreirajte privatni ključ za vaš SSL sertifikat koristeći sledeću komandu:
openssl genrsa -out server.key 2048
2. Generisanje CSR-a (Zahteva za potpisivanje sertifikata)
Nakon toga, generišite zahtev za potpisivanje sertifikata (CSR) koji će sadržati detalje o vašem domenu i organizaciji:
openssl req -new -key server.key -out server.csr
Sistem će vas tražiti da unesete informacije o vašoj kompaniji i domenu. Navedite sledeće:
* Uobičajeno ime (CN): Naziv domena za koji kreirate sertifikat (npr. www.primerdomena.com)
* Organizacija (O): Naziv vaše organizacije
* Organizacioni sektor (OU): Određeni deo vaše organizacije (npr. IT odeljenje)
* Grad (L): Grad u kom se nalazi vaša organizacija
* Država (ST): Država u kojoj se nalazi vaša organizacija
3. Kreiranje samopotpisanog SSL sertifikata
Kada generišete CSR, možete kreirati samopotpisani SSL sertifikat koristeći naredbu:
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
4. Instaliranje SSL sertifikata
Zatim, instalirajte SSL sertifikat u konfiguraciju Nginx-a. Otvorite konfiguracioni fajl Nginx-a:
sudo nano /etc/nginx/sites-available/default
Pronađite blok server {}
i dodajte sledeće linije na kraj:
listen 443 ssl;
ssl_certificate /etc/nginx/certs/server.crt;
ssl_certificate_key /etc/nginx/certs/server.key;
Sačuvajte promene i zatvorite datoteku.
5. Ažuriranje Nginx konfiguracije i restartovanje servisa
Ažurirajte konfiguraciju Nginx-a:
sudo nginx -t
Ukoliko nema grešaka, restartujte Nginx servis:
sudo systemctl restart nginx
Testiranje SSL sertifikata
Da biste proverili da li je SSL sertifikat ispravno instaliran, posetite vaš domen u sigurnom režimu (https://). Trebalo bi da vidite ikonu katanca u pretraživaču, što ukazuje da je veza enkriptovana.
Zaključak
Uspešno ste kreirali i instalirali samopotpisani SSL sertifikat za vaš Nginx web server na Ubuntu sistemu. Ovaj sertifikat će šifrovati komunikaciju između vašeg sajta i posetilaca, čime se štite njihovi podaci i povećava sigurnost vašeg web sajta.
Važno je napomenuti da samopotpisani SSL sertifikati nisu izdati od strane pouzdanog sertifikacionog tela i stoga ih neki pretraživači mogu tretirati kao nepouzdane. Za pouzdanije rešenje preporučuje se korišćenje SSL sertifikata od proverenog sertifikacionog tela.
Često postavljana pitanja (FAQ)
1. Koja je razlika između samopotpisanog SSL sertifikata i SSL sertifikata izdatog od proverenog tela?
Samopotpisani SSL sertifikati nisu izdati od strane proverenog tela i nisu povezani sa vašom organizacijom. SSL sertifikati izdati od proverenog sertifikacionog tela izdaju se od strane treće strane i pružaju veći nivo poverenja.
2. Zašto se može pojaviti upozorenje o sigurnosti kada posetim web stranicu sa samopotpisanim SSL sertifikatom?
Kada pristupite web stranici sa samopotpisanim SSL sertifikatom, vaš pretraživač može prikazati upozorenje o sigurnosti jer sertifikat nije izdat od strane proverenog tela.
3. Kako mogu sprečiti pojavu upozorenja o sigurnosti za samopotpisane SSL sertifikate?
Možete instalirati samopotpisani SSL sertifikat u vaš pretraživač ili dodati izuzetak za taj domen. Međutim, imajte na umu da time smanjujete sigurnost vašeg pretraživača.
4. Koji su rizici korišćenja samopotpisanih SSL sertifikata?
Samopotpisani SSL sertifikati povećavaju rizik od man-in-the-middle napada, gde napadač presreće enkriptovanu komunikaciju i postavlja lažni sertifikat.
5. Kako se obnavlja samopotpisani SSL sertifikat?
Da biste obnovili samopotpisani SSL sertifikat, morate generisati novi privatni ključ, CSR i SSL sertifikat.
6. Da li mogu koristiti samopotpisani SSL sertifikat za domen koji ukazuje na Google Cloud ili Amazon AWS?
Ne, samopotpisani SSL sertifikati nisu prihvatljivi za domene koji su usmereni na Google Cloud ili Amazon AWS.
7. Koje su prednosti korišćenja SSL sertifikata?
SSL sertifikati omogućavaju enkriptovanu vezu, štite korisničke podatke, poboljšavaju rangiranje u pretraživačima i povećavaju poverenje korisnika.
8. Da li se može koristiti isti privatni ključ za više domena?
Ne preporučuje se korišćenje istog privatnog ključa za više domena jer to može umanjiti sigurnost vaših sertifikata.
9. Koja je najbolja praksa za čuvanje SSL sertifikata?
Čuvajte SSL sertifikate na sigurnom mestu, kao što je upravitelj tajnama ili aplikacija za upravljanje sertifikatima.
10. Kako mogu onemogućiti SSL za Nginx?
Da biste onemogućili SSL za Nginx, uklonite linije listen 443 ssl
, ssl_certificate
, i ssl_certificate_key
iz konfiguracije Nginx-a.