SSL SERTİFİKASI İÇİN

Öncelikle csr dosyası oluşturmamız gerekiyor. SSL kullanacağım sunucu ya bağlandım, ubuntu server kurulu olan cihazda  komut satırına geçiyorum.

openssl req -new -newkey rsa:2048 -nodes -keyout SERVER.key -out SERVER.csr 

Yukarıdaki kod cümlesini çalıştırıyoruz SERVER kısmına kendinize ait server adını yazmanız gerekmekte. Bu kodu çalıştırdıktan sonra sırasıyla bilgi girişi yapmamızı isteyecek ve aşağıdaki görüntüyü elde edeceğiz.

csr

Sırasıyla bizden Country Name, State or Province Name, Locality Name, Organization Name, Organizational Unit Name, Common Name ve email address  verilerini girmemizi isteyecek.

Bu verilerin SSL hizmeti aldığımız firmaya verdiklerimizle aynı olması büyük önem taşıyor. İstenilen alanların denk geldikleri kısa kodları da şu şekilde

Country Name–>C,

State or Province Name–>S,

Locality Name–>L,

Organization Name–>O,

Organizational Unit Name–>OU,

Common Name–>CN

Tüm bilgileri girdikten sonra bizden extra bir şifre ve firma adı istiyor. Bunlarıda girdikten sonra SERVER.key ve SERVER.csr adıyla bize dosyaları oluşturuyor.

Oluşturduğumuz csr dosyasını denetlemek için CSR çözümleme adresini kullanabiliriz.

Daha sonra oluşturdulan csr dosyası destek alınan firmaya verilerek ssl sertifikası üretilmesi sağlanır. Oluşturulan kod bloğunu crt dosyası olarak kaydediyoruz ve kullanacağımız serverın içine sadece root erişim yetkisi olarak atıyoruz.

/etc/apache2/sites-avaible  içindeki sitemizin conf dosyasını açarak

DocumentRoot /var/www/html2
ServerName www.yourdomain.com
SSLEngine on
SSLCertificateFile /path/to/your_domain_name.crt
SSLCertificateKeyFile /path/to/your_private.key
SSLCertificateChainFile /path/to/turktrust-int.crt

Kodlarını ekliyoruz. Tabiki sertifikaların yani crt dosyalarının dizinlerine dikkat ediyoruz. Burada https kullanacağımız için 443 portunu dinlemeyi de unutmamalıyız.

apachectl configtest

kodunu kullanarak yapılan değişikliğin sorunsuz olup olmadığını kontrol ediyoruz. Eğer sorun yoksa apacheyi yeniden başlatıyoruz.

Invalid command ‘SSLEngine’, perhaps misspelled or defined by a module not included

hatasını alırsak

sudo a2enmod ssl

kodu ile ssl modulunu yüklüyoruz ve tekrar kontolumuzu yaparak sorun yoksa apacheyi yeniden başlatıyoruz.

 

conf dosyasında ki tüm kodumuz şu şekilde.

<VirtualHost *:443>
ServerName xxx.aaa.com.tr
ServerAlias xxx
ServerAdmin bim@aaa.com.tr
DocumentRoot /var/www/html/xxx
SSLEngine on
SSLCertificateFile /etc/apache2/.aaa.com.tr.cer
SSLCertificateKeyFile /etc/apache2/aaa.key
SSLCertificateChainFile /etc/apache2/Kok.cer
<Directory /var/www/html/xxx/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
<VirtualHost *:80>
ServerName besyo.aaa.com.tr
ServerAdmin bim@aaa.com.tr
Redirect / https://besyo.aaa.com.tr/
</VirtualHost>