Rocky Linux 9 ile SSH Sunucusu Güvenliğini Sağlama Nasıl Yapılır? (key-based authentication, port değişiklik)

Giriş

SSH (Secure Shell), ağ üzerinden güvenli bir şekilde veri iletimi sağlamak için kullanılan bir protokoldür. Rocky Linux 9, sunucu sistemleri arasında popüler bir seçenek olup, SSH sunucusu güvenliğinin sağlanması önemlidir. Ana hedefler arasında yetkisiz erişimi önlemek ve sistemin güvenliğini artırmak yer alır. Bu bağlamda, anahtar tabanlı kimlik doğrulama (key-based authentication) ve SSH iletişimi için kullanılan port değişiklikleri önemli iki güvenlik önlemidir.

Anahtar Tabanlı Kimlik Doğrulama

Anahtar tabanlı kimlik doğrulama, kullanıcı adı ve şifre yerine bir çift anahtar kullanarak erişim sağlamayı mümkün kılar. Bu yöntem, şifrelerin saldırgalar tarafından kötüye kullanımını azaltır ve erişim kontrolünü daha güvenli hale getirir.

Anahtar Çiftinin Oluşturulması

Anahtar tabanlı kimlik doğrulama süreci, bir anahtar çifti oluşturarak başlar. Bu işlem, istemci makinesinde şu komut ile gerçekleştirilir:

“`bash
ssh-keygen -t rsa -b 4096
“`

Bu komut, RSA algoritması kullanarak 4096-bit uzunluğunda bir anahtar seti oluşturur. Anahtar çifti, özel ve açık anahtar olmak üzere iki parçadan oluşur. Kullanıcı, açık anahtarı hedef sunucuya kopyalarken, özel anahtar yerel makinede güvenli bir şekilde saklanmalıdır.

Anahtarın Sunucuya Kopyalanması

Oluşturulan açık anahtar, hedef sunucuya kopyalanmalıdır. Bunun için `ssh-copy-id` komutu kullanılabilir:

“`bash
ssh-copy-id user@server_ip
“`

Bu komut, açık anahtarı otomatik olarak hedef sunucudaki `~/.ssh/authorized_keys` dosyasına ekler. Ayrıca, bu komut ile hedef sunucuda kullanıcıya bağlı `~/.ssh` klasörünün varlığı ve doğru izin ayarları da kontrol edilir.

SSH Yapılandırma Dosyasının Düzenlenmesi

Anahtar tabanlı kimlik doğrulama etkinleştirilmeden önce, SSH yapılandırma dosyasında gerekli değişiklikler yapılmalıdır. Rocky Linux 9 üzerinde bu dosya genellikle `/etc/ssh/sshd_config` yolunda bulunur. Aşağıdaki ayarlar, güvenlik seviyesini artırmak için düzenlenmelidir:

“`bash
PermitRootLogin no
PasswordAuthentication no
ChallengeResponseAuthentication no
“`

Bu ayarlar, kök kullanıcı girişi için şifre kullanılmasını engeller ve sadece anahtar tabanlı kimlik doğrulamasını aktif hale getirir.

SSH Servisinin Yeniden Başlatılması

Yapılandırma dosyasında yapılan değişikliklerin geçerli olması için SSH servisinin yeniden başlatılması gerekmektedir:

“`bash
sudo systemctl restart sshd
“`

Bu komut, SSH servisinin ayarlarının güncellenmesini sağlar ve yeni güvenlik önlemlerinin uygulanmasına olanak tanır.

Port Değişikliği

SSH servisi varsayılan olarak 22 numaralı port üzerinden çalışmaktadır. Bu portun değiştirilmesi, saldırganlar tarafından sistem üzerinde gerçekleştirilecek otomatik taramaları azaltabilir ve güvenliği artırabilir.

Portun Değiştirilmesi

SSH yapılandırma dosyasında port değişikliği yapmak için tekrar `/etc/ssh/sshd_config` dosyasına erişim sağlanmalıdır. Aşağıdaki satır değiştirilmelidir:

“`bash
Port 22
Port 2222
“`

Burada 2222 numaralı port örnek olarak verilmiştir. Kullanıcı isteğe göre farklı bir port numarası seçebilir. Değişiklik sonrasında, bu yeni portun güvenlik duvarı kurallarında da eklenmesi gerekmektedir.

Güvenlik Duvarı Kurallarının Güncellenmesi

Güvenlik duvarı ayarlarının güncellenmesi için aşağıdaki komut kullanılabilir:

“`bash
sudo firewall-cmd –permanent –add-port=2222/tcp
sudo firewall-cmd –reload
“`

Bu komut ile yeni port güvenlik duvarına eklenir ve yeniden yüklenir. Anlayış için eski port (22) kurallardan kaldırılmalıdır:

“`bash
sudo firewall-cmd –permanent –remove-port=22/tcp
sudo firewall-cmd –reload
“`

Bunlarla birlikte, yeni portun doğru bir şekilde dinlendiğinden emin olunmalıdır.

Uygulama ve Test

Anahtar tabanlı kimlik doğrulama ve port değişikliği uygulandıktan sonra, yeni güvenlik önlemlerinin düzgün çalışıp çalışmadığını kontrol etmek önemlidir. Öncelikle, yeni port üzerinden bağlantı test edilmelidir:

“`bash
ssh -p 2222 user@server_ip
“`

Bu komut ile belirtilen port üzerinden sunucuya erişim sağlanmaya çalışılır. Eğer bağlantı başarıyla gerçekleştirilirse, güvenlik önlemleri etkili bir şekilde uygulanmış demektir.

Her tüm bu yeni ayarlar ve güvenlik önlemleri sürekli olarak gözden geçirilmeli ve gerektiğinde güncellenmelidir. SSH sunucu güvenliği, sistemin genel güvenliği açısından kritik bir unsurdur ve sürekli dikkat gerektirir.

CEVAP VER

Lütfen yorumunuzu giriniz!
Lütfen isminizi buraya giriniz

SON İÇERİKLER

İLGİNİZİ ÇEKEBİLİR