Openssl .pem dosyası nasıl oluşturulur ve nereye yerleştirileceğimiz


14

Parola yerine dosya .pemkullanarak ssh üzerinden uzaktan oturum açmaya izin vermek için bir OpenSSL dosyası oluşturmak istiyorum .pem.

Aşağıdakileri kullanarak anahtar .crtve .pemdosya oluşturabiliyorum

sudo openssl genrsa -des3 -out server.key 2048
openssl req -new -key server.key -out server.csr
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
openssl x509 -inform DER -outform PEM -in server.crt -out server.crt.pem

Ama sorun şu ki, sunucu tarafında koymak zorundayım veya /etc/ssh/sshd_configdosyada ssh ile uzaktan girişe izin vermek için dosyada ne değişiklikler yapmam gerekiyor .pem.

İstemcinin makinemi aşağıdaki şekilde bağlamasını istiyorum.

ssh -i server_crt.pem username@my_ip

Uygulama için tam olarak ne tür değişiklikler yapmam gerekiyor.

Teşekkürler

Yanıtlar:


18

Bağlanmak istediğiniz sunucuya genel anahtarı yüklemeniz gerekir, genel anahtar .pub dosyasındadır:

Misal:

# ssh-copy-id -i ~/my-certificate.pub root@12.34.56.78

Bundan sonra çalışıyor olmalı ve aşağıdakileri kullanarak giriş yapabilmelisiniz:

$ sudo ssh -i ~/my-certificate.pem root@12.34.56.78

Değişiklikler, sunucu makinesindeki ~ / .ssh / yetkili_keys dosyasında yapılır, nano gibi metin düzenleyicisiyle açılır, ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAAX gibi bir şeyle başlayan satırları göreceksiniz ...

Ben şahsen .pem ve pub dosyasını üreten $ ssh-keygen -t rsa -b 2048 -v kullanarak anahtar dosyasını oluşturmak. Sorulduğunda:

Anahtarın kaydedileceği dosyayı girin (/home/user/.ssh/id_rsa):

.pem dosyasının adını girin, örneğin: my-certificate.pem

Anahtar oluşturmadan giriş yapmak için adım adım:

  1. Anahtarı ile oluşturun ve anahtarı $ ssh-keygen -t rsa -b 2048 -vkaydetmek istediğiniz dosyaya girmeniz my-certificateistendiğinde, parola girmeniz istendiğinde Enter tuşuna basın (boş parola) ve Enter tuşuna basarak onaylayın.
  2. Oluşturulan iki dosya alacaksınız, biri benim sertifikam ve biri benim sertifikam.pub olacak, sertifikamı my-certificate.pem olarak yeniden adlandıracak, böylece iki dosyanız olacak, sertifikam.pub ve benim- certificate.pem
  3. Genel sertifikayı sunucuya yükleyin: ssh-copy-id -i ~/my-certificate.pub username@ip
  4. Bilgisayarınızdaki .pem dosyasını salt okunur yapın sudo chmod 400 my-certificate.pem
  5. İle giriş $ sudo ssh -i /path/to/my-certificate.pem user@ip

1
Sonuçta ben 'İzin reddedildi (publickey)' hatası alıyorum ve bağlantı kuramıyorum
Farman Ali

Merhaba, güvenlik nedeniyle .pem dosyanız yazılabilir olmamalıdır, makinenizde sudo chmod 400 my-certificate.pem dosyasını kullanın ve tekrar deneyin.
Mike

Merhaba, ben 400 olarak değiştirmiştim. Ama sorun aynı kaldı. Anahtar üretmekten istemciden bağlanmaya kadar tüm çalışma adımlarını açıklar mısınız?
Farman Ali

Yeniden adlandırma ssh-copy-
id'den
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.