Localhost Trafiğini Şifrelemek | Apache SSL

Merhaba dostlar,
Girişi nasıl yapsam diye düşünmedim. Direk girişi atladım :)

SSL Sertifikasını oluşturmadan önce sistemimize apache'yi kuruyoruz. Daha önce burada Lamp kurulumundan bahsetmiştik. Eğer sisteminizde apache kurulu değilse bağlantıya tıklayarak kurun.

Başlayalım.
İlk olarak aşağıdaki komutları sırasıyla uçbirimde çalıştıralım.
sudo apt-get install nginx
sudo mkdir /etc/nginx/ssl
cd /etc/nginx/ssl
sudo openssl genrsa -des3 -out server.key 2048
sudo openssl req -new -key server.key -out server.csr

En son komutu çalıştırdığımızda bizden sertifika bilgilerini girmemizi isteyecektir.

You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:TR
State or Province Name (full name) [Some-State]:Seyhan
Locality Name (eg, city) []:Turkiye
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Hacker Adana
Organizational Unit Name (eg, section) []: Computer
Common Name (e.g. server FQDN or YOUR name) []:localhost              
Email Address []:gizlimanyak@gmail.com
Kırmızı kısımları kendinize göre dolduruyorsunuz. Sertifikayı oluşturduktan sonra aşağıdaki komutları çalıştırıyoruz.
sudo cp server.key server.key.org
sudo openssl rsa -in server.key.org -out server.key
sudo openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/example
sudo nano /etc/nginx/sites-available/example

Şimdi açılan metin editörünün en alt satırına aşağıdaki satırları ekleyip Ctrl+O > Enter ile kayıt ediyoruz.
# HTTPS server
server {
        listen 443;
        server_name localhost;
        root /usr/share/nginx/www;
        index index.html index.htm;
        ssl on;
        ssl_certificate /etc/nginx/ssl/server.crt;
        ssl_certificate_key /etc/nginx/ssl/server.key;
}
Devam edelim.
sudo ln -s /etc/nginx/sites-available/example /etc/nginx/sites-enabled/example
sudo service nginx restart

Şimdi tarayıcımızın adres çubuğuna https://localhost yazıp girelim.
Chrome'den giriş yaptığımız zaman yukarıdaki gibi uyarı verecektir. Bu normaldir. Oluşturduğumuz anahtarın, bize ssl hizmeti veren bir firma tarafından imzalanmadığı için böyle diyor. Localhost trafiği şu anda şifreli. Gelişmişlocalhost sitesine ilerle (güvenli değil) yazılarına tıklayarak devam edelim.
Görüldüğü gibi bağlantı şifreli. Bir de Firefox'ta bu duruma bakalım.
1 Ardından 2 yazan yazılara tıklayalım.
Karşımıza yukarıdaki pencere gelecektir. En alttaki butona tıklayalım.
Ve görüldüğü gibi Firefox localhost'u tamamen güvenli olarak algıladı.
Bu kadar dostlar. Hepinize kolay gelsin. Bir sorun yaşarsanız bizlere sormaktan çekinmeyin.
#Jack