SSH Nasıl Kurulur ve Yapılandırılır ⋆ ALexHost SRL

Tüm Barındırma hizmetlerimizde becerilerinizi test edin ve % 15 indirim kazanın!

Ödeme sırasında kodu kullanın:

Skills
17.12.2024

SSH Nasıl Kurulur ve Yapılandırılır

SSH (Secure Shell), uzak sistemlere güvenli bir şekilde bağlanmak, komutları yürütmek ve veri aktarmak için kullanılan bir protokoldür. Sistem yöneticilerinin, geliştiricilerin ve kullanıcıların şifreli bağlantılar kullanarak sunucuları ve diğer cihazları uzaktan yönetmeleri için güvenli bir yöntem sağlar. SSH’nin kurulması ve yapılandırılması, ister sistem yönetimi, ister uzaktan çalışma veya geliştirme amacıyla olsun, sunuculara güvenli bir şekilde erişmek için gereklidir.

Bu makalede, temel bilgileri, yapılandırma seçeneklerini ve güvenlik önerilerini kapsayacak şekilde Linux‘ta SSH’nin nasıl kurulacağı ve yapılandırılacağı konusunda size yol göstereceğiz.


SSH nedir?

SSH, Güvenli Kabuk anlamına gelir ve kullanıcıların bir komut satırı arayüzü aracılığıyla uzaktaki bir sisteme güvenli bir şekilde bağlanmasına olanak tanır. Protokol, istemci ve sunucu arasındaki verileri şifreleyerek, özellikle internet gibi güvenli olmayan bir ağ üzerinden sunuculara erişmek için güvenli bir iletişim yöntemi haline getirir.

SSH varsayılan olarak 22 numaralı bağlantı noktası üzerinden çalışır ve şunlar için kullanılabilir:

  • Sunuculara uzaktan giriş
  • Güvenli dosya aktarımı (SCP veya SFTP kullanarak)
  • Uzaktan komut yürütme
  • Port yönlendirme ve tünelleme

Adım 1: SSH Kurulumu

Çoğu Linux dağıtımı SSH önceden yüklenmiş olarak gelir, ancak yüklü değilse, dağıtımınızın paket yöneticisini kullanarak kolayca yükleyebilirsiniz.

Ubuntu/Debian için:

sudo apt update sudo apt install openssh-server

CentOS/RHEL için:

sudo yum openssh-server’ı yükleyin

Fedora için:

sudo dnf install openssh-server

Arch Linux için:

sudo pacman -S openssh

Kurulumdan sonra, hem bir SSH sunucusu çalıştırmanıza hem de diğer SSH sunucularına bağlanmanıza olanak tanıyan OpenSSH sunucusu ve istemcisi yüklenmiş olacaktır.


Adım 2: SSH Hizmetinin Başlatılması ve Etkinleştirilmesi

Kurulduktan sonra, SSH hizmetini (sshd – SSH daemon olarak da bilinir) başlatmanız ve sistem başlangıcında çalışmasını sağlamanız gerekir.

SSH Hizmetini Başlatma:

sudo systemctl start ssh

SSH’nin Önyüklemede Başlatılmasını Etkinleştirme:

sudo systemctl enable ssh

SSH’ın doğru çalışıp çalışmadığını yazarak kontrol edebilirsiniz:

sudo systemctl status ssh

Hizmet çalışıyorsa, SSH’nin bağlantıları kabul etmeye hazır olduğunu gösteren etkin bir durum görürsünüz.


Adım 3: Temel SSH Yapılandırması

SSH’ın davranışı şu adreste bulunan yapılandırma dosyası tarafından kontrol edilir:

/etc/ssh/sshd_config

Varsayılan bağlantı noktasını değiştirmek, kök oturum açmayı devre dışı bırakmak veya anahtar tabanlı kimlik doğrulamayı ayarlamak gibi SSH ayarlarını değiştirmek için bu dosyayı düzenleyebilirsiniz.

Dosyayı düzenlemek için nano veya vim gibi bir metin düzenleyici kullanın:

sudo nano /etc/ssh/sshd_config

Bazı yaygın yapılandırma değişiklikleri şunlardır:

1. Varsayılan SSH Bağlantı Noktasını Değiştirme

Güvenlik nedenleriyle, varsayılan SSH bağlantı noktasını 22’den başka bir şeye değiştirmek iyi bir fikirdir. Bu, varsayılan SSH bağlantı noktasını hedef alan otomatik saldırı riskini azaltmaya yardımcı olur.

Yapılandırma dosyasında aşağıdaki satırı bulun:

#Port 22

Eklemeyi kaldırın ve bağlantı noktası numarasını değiştirin:

Liman 2222

Dosyayı kaydettikten sonra, değişiklikleri uygulamak için SSH hizmetini yeniden başlatın:

sudo systemctl restart ssh

Yeni bağlantı noktasındaki bağlantılara izin vermek için güvenlik duvarı kurallarınızı güncellediğinizden emin olun.

2. Kök Girişini Devre Dışı Bırak

SSH üzerinden root girişine izin vermek bir güvenlik riskidir. Bunu önlemek için yapılandırma dosyasında aşağıdaki satırı bulun:

PermitRootLogin evet

Şöyle değiştir:

PermitRootLogin hayır

Bu, SSH üzerinden doğrudan root erişimini engelleyecektir. Kullanıcılar hala normal bir hesapla oturum açabilir ve ardından sudo veya su kullanarak root’a geçebilirler.

3. Anahtar Tabanlı Kimlik Doğrulamayı Etkinleştir

SSH anahtar tabanlı kimlik doğrulama, parola kullanmaktan daha güvenli bir yöntemdir. Bu, bir SSH anahtar çifti (genel ve özel anahtarlar) oluşturmayı ve kimlik doğrulaması için özel anahtarı kullanmayı içerir.

Anahtar tabanlı kimlik doğrulamayı zorlamak için aşağıdaki satırları bulun ve evet olarak ayarlandıklarından emin olun:

PubkeyAuthentication evet PasswordAuthentication hayır

Bu, parola tabanlı oturum açmayı devre dışı bırakır ve yalnızca anahtar tabanlı kimlik doğrulama yoluyla SSH erişimine izin verir.


Adım 4: SSH Anahtarlarının Oluşturulması (Anahtar Tabanlı Kimlik Doğrulama)

SSH anahtar çiftleri, parola olmadan oturum açmak için güvenli bir yol sağlar. SSH anahtarlarının nasıl oluşturulacağı ve ayarlanacağı aşağıda açıklanmıştır:

Adım 1: SSH Anahtar Çiftini Oluşturun

Yerel makinenizde, bir anahtar çifti oluşturmak için aşağıdaki komutu çalıştırın:

ssh-keygen -t rsa -b 4096

Anahtarı kaydetmek için bir dosya adı (veya varsayılan konumu kullanmak için Enter tuşuna basın) ve ekstra güvenlik için isteğe bağlı bir parola girmeniz istenecektir.

Bu işlem iki dosya oluşturur:

  • ~/.ssh/id_rsa: Özel anahtarınız (bunu güvende tutun ve paylaşmayın).
  • ~/.ssh/id_rsa.pub: Açık anahtarınız (bu paylaşılabilir ve uzak sunuculara eklenebilir).

Adım 2: Açık Anahtarı Sunucuya Kopyalayın

SSH oturum açma anahtarını kullanmak için, açık anahtarı erişmek istediğiniz uzak sunucuya kopyalayın. Bunu ssh-copy-id komutu ile yapabilirsiniz:

ssh-copy-id kullanıcı adı@uzak_host

Username yerine uzak sunucunuzun kullanıcı adını ve remote_host yerine de sunucunun IP adresini veya ana bilgisayar adını yazın.

Bu, açık anahtarınızı sunucuya kopyalayacak ve ~/.ssh/authorized_keys dosyasına ekleyerek parola olmadan oturum açmanıza olanak tanıyacaktır.

Adım 3: SSH Anahtarını Kullanarak Oturum Açın

Şimdi, özel anahtarınızı kullanarak uzak sunucuda oturum açabilirsiniz:

ssh kullanıcı adı@uzak_host

Özel bir bağlantı noktası belirlediyseniz, bunu -p seçeneği ile belirtin:

ssh -p 2222 username@remote_host

Adım 5: SSH Yapılandırmanızın Güvenliğini Sağlama

SSH’yi kurduktan sonra, sunucunuzun yetkisiz erişime karşı korunmasını sağlamak için en iyi güvenlik uygulamalarını takip etmek önemlidir.

1. Güçlü Parolalar Kullanın (Parola Kimlik Doğrulaması Kullanıyorsanız)

Anahtar tabanlı kimlik doğrulama kullanmıyorsanız, tüm kullanıcı hesaplarının güçlü, karmaşık parolalar kullandığından emin olun.

2. Güvenlik Duvarı Kullanın

Sunucunuzun güvenlik duvarının yalnızca kullandığınız SSH bağlantı noktasındaki trafiğe izin verdiğinden emin olun. Örneğin, SSH’yi 2222 numaralı bağlantı noktasına değiştirdiyseniz, ufw (Ubuntu/Debian’da) veya firewalld (CentOS/RHEL’de) kullanarak bu bağlantı noktasındaki trafiğe izin verin.

sudo ufw allow 2222/tcp sudo ufw enable

3. SSH Erişimini Sınırlama

Güvenlik duvarını yapılandırarak veya /etc/hosts.allow ve /etc/hosts.deny kullanarak SSH erişimini belirli IP adresleri veya aralıklarıyla sınırlayın.


Adım 6: SSH’ı Test Etme ve Sorun Giderme

SSH’yi yapılandırdıktan sonra kurulumunuzu test etmeniz önemlidir. Her şeyin doğru çalıştığından emin olmak için SSH kullanarak oturum açmayı deneyin.

Yaygın SSH Sorun Giderme İpuçları:

  1. Güvenlik Duvarı Ayarlarını Kontrol Edin: Güvenlik duvarının SSH bağlantı noktasını engellemediğinden emin olun.
  2. SSH Hizmet Durumunu Kontrol Edin: SSH hizmetinin systemctl status ssh ile çalıştığından emin olun.
  3. Yapılandırmayı Doğrulayın: Yanlış yapılandırmalar için /etc/ssh/sshd_config dosyasını iki kez kontrol edin.
  4. Hata Ayıklama için Verbose Modunu kullanın: Sorun varsa, ayrıntılı çıktıyı görmek için bağlanırken -v seçeneğini kullanın:
ssh -v kullanıcı adı@uzak_host

Sonuç

SSH’nin kurulması ve yapılandırılması, uzak sistemleri güvenli bir şekilde yönetmesi gereken her Linux yöneticisi veya kullanıcısı için temel bir beceridir. Bu kılavuzu takip ederek SSH’yi kurabilir, güvenli erişim için yapılandırabilir ve sunucunuzu yetkisiz erişime karşı korumak için en iyi uygulamaları uygulayabilirsiniz. SSH yapılandırıldıktan sonra uzaktan yönetim, otomasyon ve sistemler arasında güvenli iletişim için güçlü bir araç haline gelir.

Tüm Barındırma hizmetlerimizde becerilerinizi test edin ve % 15 indirim kazanın!

Ödeme sırasında kodu kullanın:

Skills