CentOS 7 SSH Port Değiştirme

Yazar: | 24 Aralık 2017

CentOS 7 SSH portu nasıl değiştirilir? SSH, sunucu iletişimi için güvenli kanallar sağlayan bir ağ protokolüdür. Bu protokol, kimlik doğrulama iletişimi gibi birçok amaçla kullanılır. SSH portu, aslında sunucunun bir iletişim kanalıdır. Varsayılan olarak, SSH TCP (İletim Denetimi Protokolü) portu 22’yi kullanır. CentOS 7 sunuculardaki bu SSH bağlantı noktası numarasını değiştirerek daha az bilinen bir porta geçmek sunucu güvenliğini artıracak kolay ve kanıtlanmış bir yöntemdir.

Ayrıntılı anlatımı merak etmeyenler özet kısmına atlayarak port değiştirme işlemini yapabilir.

Bölümler

Bu yazıda, CentOS 7 sunucumuzda resimli olarak varsayılan SSH portunu nasıl değiştireceğimizi adım adım anlatacağız.

Adım Adım Centos 7 SSH Port Değiştirme

Başlıyoruz

Adımları takip etmeden önce aşağıdakilere sahip olmalıyız:

  • CentOS 7 işletim sistemine sahip bir sunucu
  • Sunucuya Root erişimi

Adım 1 – SSHD Dosyası Yedek Alma

Centos 7 sunucumuzun SSH bağlantı noktasını değiştirmek için, /etc/ssh/sshd_config konumunda bulunan SSH dosyasını düzenlemeniz gerekir. Herhangi bir hata olasılığına karşı sshd dosyasının yedeğini almak faydalı olacaktır.

Dosyanın tarih içeren bir kopyasını oluşturmak için, en son düzenlenen bilgileri koruyan -p komutuyla birlikte cp kopyalama komutunu kullanıyoruz; komutun sonuna $(date +%F) ekleyerek, dosya adına günün tam tarihini eklemiş oluyoruz.

SSHD Dosyası Yedek Alma Kodu

cp -p /etc/ssh/sshd_config /etc/ssh/sshd_config.orig.$(date +%F)

Komutu uyguladıktan sonra ekranda herhangi bir değişiklik olmayacaktır. Alınan yedeği kontrol etmek istiyorsanız aşağıdaki komutları sırasıyla uygulayabilirsiniz.

cd /etc/ssh/
ls

Aşağıdaki kırmızı çerçeve içerisinde alınmış dosya yedeğimizdir. Yazının yayınlandığı tarih olan 23 Aralık 2017 dosya isminde mevcut.

Centos 7 SSHD Yedek

Adım 2 – SSH Port Değiştirme

Yedekleme işlemi tamamlandıktan sonra SSHD dosyamızı rahatlıkla düzenleyebiliriz. Bunun öncelikle nano metin editörünü kullanıyoruz:

nano /etc/ssh/sshd_config

Eğer komutu uyguladığınızda hata ile karşılaşıyorsanız muhtemelen nano metin editörü yüklü değildir. Yüklemek için gerekli komut:

yum install nano -y

SSHD dosyasını açtığımızda aşağıdaki gibi bir ekran bizi karşılayacak.

Centos 7 SSHD dosyası

Açtığımız dosyada bizi ilgilendiren satır #Port 22 yazan kısımdır. Satırın başında # olması bu komutun yok sayıldığı anlamına gelir. Öncelikle # işaretini kaldırıyoruz ve varsayılan port numarası olan 22’yi değiştirerek istediğimiz herhangi bir port numarası atıyoruz. Biz örnek olarak 2017 yapalım.

Centos 7 SSH Portu

Port seçerken; 21, 80, 443, 25, 110, 113 numaralı portları kullanmayın. Ayrıca CentOS 7 tarafından zaten kullanılmakta olan bağlantı noktalarından uzak durun. Genellikle, 1024’ün üzerinde port seçilmesi önerilir. Bununla birlikte, yeni bir port seçmekte zorluk çekiyorsanız, hangi bağlantı noktalarının çevrimiçi olarak kullanıldığını, tanınmış TCP ve UDP bağlantı noktası numaralarının listelerini inceleyebilirsiniz. Kullanımda olmayan portları seçebilirsiniz.

Değişikliği yaptıktan sonra CTRL + X tuş kombinasyonunu kullanarak dosyayı kaydedin ve önce Y, sonra Enter tuşlarına basarak kaydetmeyi onaylayın. Kaydetme işlemi tamamlandıysa SSH hizmetini aşağıdaki komutla yeniden başlatıyoruz.

systemctl restart sshd.service

Kaydettikten sonra, bu adımları tamamlayana kadar çıkmayın.

Varsayılan olarak, SELinux yalnızca SSH 22 portuna izin verir. Bu yüzden SELinux aracılığıyla yeni oluşturulan bağlantı noktasını etkinleştirmeniz gerekir. Bunu yapmak için, aşağıdaki komutları uygulayın:

sudo semanage port -a -t ssh_port_t -p tcp 2017

2017 yazan yere sizin belirlediğiniz port numarası gelecek.

Eğer semanage komutu uyguladığınızda bulunamadı gibi bir hata alırsanız, kurmak için aşağıdaki komutları çalıştırın.

sudo yum -y install policycoreutils-python

Ardından, SELinux’tan yeni bağlantı noktasına izin vermek için semanage komutunu tekrar uygulayın. Bundan sonra, yeni bağlantı noktasının güvenlik duvarıyla girmesini sağlamak için aşağıdaki komutları uygulayın.

sudo firewall-cmd --permanent --zone=public --add-port=2017/tcp

Güvenlik duvarı yapılandırmalarını yeniden yüklemek için:

sudo firewall-cmd --reload

Aşağıdaki komutları uygulayarak SSH yeniden başlat.

sudo systemctl restart sshd.service

Adım 3 – SSH Port Testi

Yeniden başlatma sonrası SSH portumuz değişmiş bulunuyor. Kontrol sağlamak için aşağıdaki komutu uygulayabilirsiniz.

ss -tnlp|grep ssh

Herhangi bir problem yoksa aşağıdaki ekranla karşılaşmamız gerekiyor.

Centos 7 SSH port değişikliği

Özet

1 – SSHD dosyası yedeği alma

cp -p /etc/ssh/sshd_config /etc/ssh/sshd_config.orig.$(date +%F)

2 – Port değiştirme için SSHD dosyasını açıyoruz

nano /etc/ssh/sshd_config

Komut çalışmadıysa aşağıdaki nano editörünü yükledikten sonra tekrar bir önceki komutu uyguluyoruz.

yum install nano -y

Açtığımız dosya içerisinden #Port 22 yazan kısımdan # işaretini kaldırıyoruz ve 22 yazan yere istediğimiz port numarasını giriyoruz.

3 – SSH hizmetini yeniden başlatıyoruz.

systemctl restart sshd.service

4 – Port değişimini teyit etmek için test ediyoruz.

ss -tnlp|grep ssh

Hepsi bu kadar.

Paylaş:

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir