Ana içeriğe geç

SSH Üzerinden Bir Sunucuya Nasıl Bağlanılır? Bu Adımları İzleyin!

· 5 dakikalık okuma
Customer Care Engineer

SSH (Güvenli Kabuk) uzaktan bir işletim sistemini kontrol etmek ve dosya aktarmak için kullanılan şifrelenmiş bir ağ protokolüdür. Komut satırı aracılığıyla bir sunucu üzerinde çalışmak için birincil yöntemdir. Kodu.cloud sunucularında varsayılan olarak mevcuttur. Bu makale, Windows, Linux ve MacOS'ta bir sunucuya SSH üzerinden nasıl bağlanacağınız ve SSH anahtarlarıyla yetkilendirme hakkında size rehberlik edecektir.

13-06-connect-via-ssh

Windows'ta SSH Bağlantısı

1'den başlayarak, Windows komut satırı yerleşik OpenSSH istemcisi ile çalışabilir. Daha öncesinde, Windows'ta SSH, üçüncü taraf bir program aracılığıyla çalışıyordu, popüler istemcilerden biri PuTTY idi. Aşağıda, yerleşik Windows 11 istemcisiyle bağlantı kurmayı tartışacak, ardından PuTTY ile bağlantı kurmayı kısaca açıklayacağız. Bağlanırken, giriş yapmak için kullanıcı adınızı ve şifrenizi kullanabilir veya SSH anahtarıyla yetkilendirmeyi yapılandırabilirsiniz. İlk yöntemle başlayalım ve makalenin ikinci yarısında bir SSH anahtarını nasıl kullanacağımızı öğreneceğiz.

Windows 11'de Giriş ve Şifre ile SSH Bağlantısı

Kural olarak, OpenSSH Windows 11 Professional Edition'da önceden yüklenmiştir. Windows 11 Home Edition'da OpenSSH istemcisini kurmanız gerekir. SSH ile çalışmak için PowerShell konsolunu kullanacağız. PowerShell'i açın. Bunu yapmak için WIN (Windows tuş simgesi) tuşuna basın ve "PowerShell" yazmaya başlayın veya Başlat menüsündeki programlar listesinden bulun. ssh komutunu girmeyi deneyin. Konsolda usage: ssh [-46AaCfGgKkMNnqsTtVvXxYy] [-B bind_interface]... istemi görünürse, her şey yolunda demektir. Konsol ssh komutunu tanımıyorsa, PowerShell'deki komutu kullanarak OpenSSH'nin kurulu olup olmadığını kontrol edin.

OpenSSH Kontrolü ve Kurulumu

PowerShell konsolunu Yönetici olarak çalıştır seçeneğini seçerek açın. Aşağıdaki komutu girin:

Get-WindowsCapability -Online | ? Name -like 'OpenSSH.Client*'

Bizim durumumuzda OpenSSH yüklü.

SSH incruction 1

Komut bir sonuç döndürüyorsa, OpenSSH yüklü demektir. Değilse, aşağıdaki komutu kullanarak kurun:

Add-WindowsCapability -Online -Name OpenSSH.Client*

Veya Windows 11 ayarları aracılığıyla (Ayarlar - Uygulamalar - Özellikler - OpenSSH İstemcisi), ancak bu yöntem Windows 11 Home Edition'da çalışmayabilir.

Sunucuya Bağlanma

Sunucuda yetkilendirme için gereksinimler: sunucu IP adresi, kullanıcı adı, şifre. Hizmet aktivasyonu sırasında, kök kullanıcı erişim kimlik bilgilerinizi içeren bir e-posta aldınız. Lütfen bunları kaydedin. Gerekirse, kök şifre faturalandırma sistemi üzerinden sıfırlanabilir. PowerShell konsolunda, kullanıcı adı ve sunucu IP adresi ile 'ssh' komutunu girin.

Burada root kullanıcı adıdır ve x.xx.xxx.xxx sunucu IP adresidir. IP adresini, Faturalandırma Sistemimde (Hizmetlerim bölümünde sunucuyu seçerek) bulabilirsiniz. Gerekirse, -p seçeneğini kullanarak bağlantı portunu belirtin:

Bundan sonra bir şifre isteği görünecektir:

[email protected]'s şifresi:

"Erişim Kimlik Bilgileri" e-postasındaki bağlantıya tıklayarak aldığınız şifreyi girin. Bu, bağlantı işlemini tamamlar. Artık diğer komutları girebilirsiniz ve bunlar uzak sunucuda yürütülecektir.

❗ Dikkat: Şifrenizi girerken, güvenlik nedenleriyle giriş alanında herhangi bir karakter görüntülenmeyecek ve şifrenizi yazarken imleç hareket etmeyecektir. Bu normaldir.

Eğer kök şifrenizi unuttuysanız, faturalandırma sistemindeki Hizmetlerim bölümünden sunucunuzu seçerek, Yönetim sekmesine giderek ve Kök şifresini sıfırla komutunu seçerek sıfırlayabilirsiniz.

PuTTY ile Bağlantı Kurma

Windows'un daha önceki bir sürümünü kullanıyorsanız, SSH erişimi PuTTY gibi üçüncü taraf programlar aracılığıyla sağlanır. Programı ücretsiz olarak indirin ve kurun. PuTTY'yi ilk açtığınızda bir ayarlar penceresi göreceksiniz. Host Name (veya IP address) bölümüne sunucu IP'sini girin. IP adresini, Faturalandırma Sisteminizde (Hizmetlerim bölümünde sunucuyu seçerek) kontrol edebilirsiniz. Varsayılan bağlantı portu 22'dir, gerekirse değeri değiştirin. Bağlantı türünün SSH olduğundan emin olun. Open düğmesine tıklayın.

SSH incruction 2

İlk kez bağlandığınızda, PuTTY Güvenlik Uyarısı, gelecekte sunucuya güvenip sunucu hakkındaki bilgileri önbelleğe eklemeyi mi (Accept), yoksa sunucuyu "hatırlamadan" tek seferlik bağlanmayı mı (Connect Once) seçeceğinizi soracaktır.

SSH incruction 3

Accept veya Connect Once'ı seçerseniz, sunucuya giriş yapmak için kullanıcı adı ve şifrenizi girmenize olanak tanıyan bir terminal penceresi görünecektir. Şifreyi girerken hiçbir karakter görünmeyecektir, bu normaldir ve güvenlik amacıyla yapılır. Veri girerken bir hata olursa, Access denied mesajını göreceksiniz. Bağlantı başarılı olursa, bir sunucu komut satırı istemi görünecektir, örneğin:

root@qwerty123:~#

SSH incruction 4

Bu, bağlantı işlemini tamamlar. Diğer komutları girebilirsiniz ve bunlar uzak sunucuda yürütülecektir.

Linux ve MacOS'ta Giriş ve Şifre ile SSH Üzerinden Bağlantı

SSH istemcisi, tüm Linux sistemlerinde ve MacOS'ta önceden yüklenmiş olarak gelir. Terminalden kullanabilirsiniz. Linux'ta terminal, ana menüden veya Ctrl+Alt+T tuşlarına basılarak açılabilir. MacOS'ta SSH üzerinden bağlanmak için, işletim sistemiyle birlikte gelen Terminal yardımcı programı en sık kullanılır. Terminalde, kullanıcı adı ve sunucu IP'si ile ssh komutunu girin.

Burada root kullanıcı adıdır ve x.xx.xxx.xxx sunucunun IP adresidir. IP adresini, Faturalandırma Sistemimde (Hizmetlerim bölümünde sunucuyu seçerek) kontrol edebilirsiniz. Gerekirse, -p seçeneğini kullanarak bağlantı portunu belirtin:

Bundan sonra bir şifre isteği görünecektir:

[email protected]'s şifresi:

Erişim Detayları e-postasındaki bağlantıya tıklayarak aldığınız şifreyi girin. Bu, bağlantı işlemini tamamlar. Diğer komutları girebilirsiniz ve bunlar uzak sunucuda yürütülecektir.

SSH Anahtarı ile Yetkilendirme

SSH anahtarı aracılığıyla yetkilendirme, hızlı, kullanışlı ve daha güvenli bir yetkilendirme yoludur. Bunu kurmak için öncelikle bir SSH anahtarı oluşturmanız gerekir.

Windows 11'de SSH Anahtarı Oluşturma

PowerShell'i yönetici modunda açın (Başlat menüsünde Yönetici olarak çalıştır). ssh-keygen komutunu girin ve sonucu görün:

Genel/özel rsa anahtar çifti oluşturuluyor.
Anahtarın kaydedileceği dosyayı girin (C:\Users\user/.ssh/id_rsa):
Parola ifadesini girin (parola ifadesi yoksa boş bırakın):
Aynı parola ifadesini tekrar girin:
Kimliğiniz şuraya kaydedildi: C:\Users\user/.ssh/id_rsa.
Genel anahtarınız şuraya kaydedildi: C:\Users\user/.ssh/id_rsa.pub.

Anahtar oluşturma işlemi sırasında konsol, anahtarı varsayılan dosyaya (.ssh/id_rsa) kaydetmeyi kabul etmenizi veya yeni bir adres girmenizi, ayrıca bir passphrase girmenizi isteyecektir.

Passphrase ❗ Bu, SSH anahtarının ek bir güvenlik unsurudur. Gizli kelimeyi girmeyi boş bırakıp Enter'a basarsanız, daha sonra giriş yaparken herhangi bir şifre girmeniz gerekmeyecektir. Sunucu, bilgisayarınızda saklanan anahtarın parçasını otomatik olarak kontrol edecektir. Ancak, birisi bilgisayarınızı ele geçirirse, sunucularınıza kolayca bağlanabilir. Bunu önlemek için bir parola girin.

PuTTYgen Kullanarak SSH Anahtarı Oluşturma

10'a kadar olan Windows sürümlerinde, anahtar oluşturmak için varsayılan olarak PuTTY ile birlikte kurulan bir yardımcı program olan PuTTYgen kullanmak uygundur. PuTTYgen'i açın. Generate düğmesine tıklayın. PuTTYgen sizden bunu yapmanızı istediğinde imlecinizi pencerenin etrafında hareket ettirin. Anahtar oluşturulacak.

SSH incruction 5

Anahtarınızı Save public key ve Save private key düğmelerine tıklayarak kaydedin. Program penceresinde görüntülenen Genel anahtarı panoya kopyalayın (Ctrl+C).

Linux ve MacOS'ta SSH Anahtarı Oluşturma

Linux ve MacOS konsollarında, bir SSH anahtarı oluşturmak için ssh-keygen yardımcı programını kullanın.

$ ssh-keygen 
Genel/özel rsa anahtar çifti oluşturuluyor.
Anahtarın kaydedileceği dosyayı girin (/home/user/.ssh/id_rsa):
Parola ifadesini girin (parola ifadesi yoksa boş bırakın):
Aynı parola ifadesini tekrar girin:
Kimliğiniz şuraya kaydedildi: /home/user/.ssh/id_rsa
Genel anahtarınız şuraya kaydedildi: /home/user/.ssh/id_rsa.pub

Anahtar oluşturma işlemi sırasında konsol, anahtarı varsayılan dosyaya (.ssh/id_rsa) kaydetmeyi kabul etmenizi veya yeni bir adres girmenizi, ayrıca bir parola girmenizi isteyecektir. Parola kullanımının önemini daha önce bu makalede okuyun.

SSH Anahtarının Genel Kısmını Sunucuya Yerleştirme ve Şifresiz Bağlanma

Bir SSH anahtarı aracılığıyla yetkilendirme yaparken, sunucuda bulunan anahtarın genel kısmı, bilgisayarınızdaki anahtarın özel kısmı ile karşılaştırılır.

SSH üzerinden sunucuya giriş yaptıktan sonra, uzak sunucuda gerçekleştirilen konsoldaki işlemler Windows, Linux ve MacOS için farklı olmayacaktır.

Uzak sunucuya kullanıcı adınız ve şifrenizle bağlandıktan sonra aşağıdaki komutları girin. Bunlar anahtarı depolamak için bir dizin ve dosya oluşturacak ve bunlara erişim hakları belirleyecektir

mkdir ~/.ssh
chmod 0700 ~/.ssh
touch ~/.ssh/authorized_keys
chmod 0600 ~/.ssh/authorized_keys

Bundan sonra, daha önce oluşturduğunuz SSH anahtarının genel kısmını authorized_keys dosyasına yerleştirin. Bunu yapmak için, id_rsa.pub dosyasının içeriğini kopyalayın (anahtar PuTTYgen'de oluşturulduysa, anahtarı doğrudan program penceresinden kopyalayabilirdiniz). authorized_keys dosyasını bir konsol düzenleyicisinde, örneğin nano ile açın.

nano ~/.ssh/authorized_keys

Panonun içeriğini dosyaya yapıştırın (Ctrl+V) ve düzenleyiciyi Ctrl+X klavye kısayoluyla kapatıp değişiklikleri kaydetmek için Y'ye basın. Linux ve MacOS'ta, bu işlemler yerine, genel anahtar parçasını uzak bir sunucuya otomatik olarak aktaran bir komut kullanabilirsiniz:

ssh-copy-id [email protected]

Burada root kullanıcı adıdır ve x.xx.xxx.xxx anahtarın gönderileceği sunucunun IP adresidir.

Genel anahtar uzak sunucuya başarıyla aktarıldı. Artık sunucuya ssh [email protected] komutuyla bağlanırken şifre girmenize gerek yok, ancak SSH anahtarını oluştururken bir parola oluşturulduysa parolayı girmeniz gerekecektir. Eğer PuTTY üzerinden uzak bir sunucuya bağlanıyorsanız, bir anahtar kullanarak yetkilendirme yapmak için, Bağlantı - SSH - Auth ayarları bölümünde Yetkilendirme için özel anahtar dosyası sütununa anahtarın özel kısmını içeren dosyanın yolunu girin.

SSH incruction 6

SSH Anahtarlarını Faturalandırma Sistemine Ekleme

Kodu.cloud sunucularında yetkilendirme yapmanın kullanışlı bir yolu, faturalandırma sistemine SSH anahtarları eklemektir. Hesabım - SSH Anahtarları bölümüne gidin. Burada, SSH anahtarlarının genel kopyasını indirebilirsiniz; bunlar, kullanışlı ve güvenli bir yetkilendirme için sunucularınıza otomatik olarak eklenecektir. Anahtarlar yalnızca yeni sunucular sipariş edilirken ve işletim sisteminin yeniden yüklenmesi veya mevcut sunucularda kurtarma modunun başlatılmasından sonra kullanılabilir olacaktır.

Faturalandırma sisteminde sunucularınızdaki işletim sistemini yeniden kurmaya, Hizmetlerim bölümünde sunucuyu seçerek, Yönetim sekmesine giderek ve İşletim Sistemini Yeniden Yükle seçeneğini seçerek başlayabilirsiniz. Bu aşamada, sunucudaki sonraki yetkilendirme için daha önce faturalandırma sistemine yüklenmiş SSH anahtarlarından birini seçebileceksiniz.

VPS kodu.cloud sipariş edin ve SSH anahtarı kullanarak yetkilendirme kurmayı deneyin, destek ekibimiz size yardımcı olmaktan ve sorularınızı yanıtlamaktan mutluluk duyacaktır.