Ubuntu Nginx kurulumu 20.04 ve domain üzerinden SSL kullanımı.

ihsan güç
3 min readJul 31, 2022

Ubuntu sunucumuza nginx kurarak ve ssl bağlarak küçük bir örnek gerçekleştireceğiz. İyi okumalar.

1-) Sistem güncellemesini

İlk önce sunucuya nginx kurulmadan önce sunucu sistemini güncelleyerek başlıyoruz ve aşağıdaki kod bloğunu sunucu terminal üzerine yazarak çalıştırıyoruz.

sudo apt update

2-) Nginx kurulumu

Nginx kurulumu için aşağıdaki kod bloğunu çalıştırarak nginx ubuntu sunucumuza kurulmuş olacaktır. Kurulan nginx dosyaları ubuntu üzerinde dosya yolu olarak “cd /etc/nginx” terminale yazarak nginx dosyalarına ulaşabiliriz.

sudo apt install nginx

Kurulan nginx’in versiyon kontrolü için aşağıdaki kodu kullanabilirsiniz

nginx -v

3-) Nginx işlemleri

  • Kurulan nginx durumunu gösteren komut;
systemctl status nginx
  • Nginx başlatma komutu;
systemctl start nginx
  • Nginx durdurulmasını sağlayan komut;
systemctl stop  nginx
  • Nginx konfigürasyon dosyalarını değiştirdikten sonra çalıştırılan komut;
systemctl reload nginx
  • Nginx disabled edebildiğimiz komut;
systemctl disable nginx
  • Sunucu ağa kalkarken başlangıçta çalışmasını sağlayan komut;
systemctl enable nginx

Not: Güvenlik ayarları için bu linkten detaylı bakabilirsiniz. Ayarlamaları yaptıktan sonra direk olarak 80 portuna göre ayarlanıyor ve google arama çubuğuna “http://domain” yazarak aşağıdaki ekran nginxin basic bir html sayfasına yönlendirme işlemi yapar ve bağlantıyı şu anlık sadece http olarak sağlıyor biz ekstra olarak https ekleyerek işlemi bitireceğiz.

“cd /etc/nginx” dosya yoluna giderek dosyaları tanıyalım

  • nginx.conf: Konfigürasyon için gerekli komutların bulunduğu dosya.
  • sites-available: her site için konfigürasyon bilgilerin oluşturulacağı kısım.
  • sites-enabled: sites-available oluşturduğumuz konfigürasyon dosyaların çalışması gerekli klasör. Link Oluşturmak için “sudo ln -s /etc/nginx/sites-available/domain /etc/nginx/sites-enabled/” komut kullanılabilir.
  • SSL: ssl için gerekli dosyaları tutuğumuz alan. Nginx yüklerken ssl klasörü yüklü gelmiyor onun için “mkdir ssl” komutunu kullanarak oluşturabiliyoruz.

SSL yönlendirme işlemi için ssl klasörüne giderek aşağıdaki gibi iki tane .key ve .pem uzantılı domainimizin ssl sertifika bilgilerini bu kısma ekleme işlemi yapıyoruz. Domain üzerinde ssl sertifikaları yönet kısmından genelde key(Anahtar) alanı ve Sertifika (CRT) alanı olmak üzere iki tane kısım bulunur ve bazen hostinglerin sağladığı sertifikalarda ekstra olarak bir tanede Sertifika Kuruluşu Paketi (CABUNDLE) olarak bir tane daha kısım olabilir ve CABUNDLE eğer yok ise sadece ikisini kullanarak ssl işlemine devam edilebilir.

  • Key(Anahtar): SSL sertifika yönetim sayfamızdan key alanını sunucu üzerinde etc/nginx/ssl dosyasının içine oluşturduğumuz .key dosyasının içine kopyalıyoruz.
  • Sertifika(CRT): SSL sertifika yönetim sayfamızdan CRT alanını sunucu üzerinde etc/nginx/ssl dosyasının içine oluşturduğumuz .pem dosyasının içine kopyalıyoruz.
  • Sertifika Kuruluşu Paketi(CABUNDLE): SSL sertifika yönetim sayfamızdan CRT alanını sunucu üzerinde etc/nginx/ssl dosyasının içine oluşturduğumuz .pem dosyasının içindeki daha önceden kopyaladığımız CRT’nin altına ekliyoruz.

SSL işlemlerini hallettikten sonra nginx.conf dosyasını düzelme işlemine geçebiliriz isterseniz ilk bu kısmı düzenleyip daha sonradan ssl kısmını halledebilirsiniz.

  • 8 Satır: Dinlediğimiz port olan ssl portunu belirtiyoruz.
  • 9 Satır: Hangi domain üzerinden bu siteye istek atılacak onu belirtiyoruz.
  • 10–11 Satır: Logların tutulacağı kısımları belirtiyoruz.
  • 12–14 Satır: Oluşturduğumuz ssl sertifikaların dosya yollarını belirtiyoruz.
  • 15–19 Satır: Yönlendirme işlemlerin yapıldığı alan.

Nginx.conf ayarlar bittikten nginx tekrardan reload yapmamız gerekiyor ve yukarıda tanımladığımız “systemctl reload nginx” metodunu kullanarak değişikliklerimizi reload yaparak güncelliyoruz.

Bir sonraki işlem domain üzerinden DNS ayarlarını yaparak public ip yönlendirme işlemini gerçekleştireceğiz. Aşağıdaki gibi yönlendirme işlemini gerekli var olan public ip adreslerini sunucu ip adresi yaparak yönlendirmeyi gerçekleştirdik.

Yönlendirme bazen 1–2 dk fazla sürebiliyor hosting şirketine bağlı olarak değişebilir ve önceden dns ayarlarını bazen cache kalabiliyor ve onun için cache temizlemeyi unutmayın. DNS yönlendirme işlemi bittikten sonra aşağıdaki çıktıyı alırız.

Kaynakça

Okuduğunuz için teşekkürler. Bir sonraki yazıda görüşmek dileğiyle…

--

--