Bir ssh anahtarı oluşturun:
Komut:
ssh-keygen -t rsa –P ""
Anahtarı yetkili anahtara taşıma:
Komut:
cat $HOME/.ssh/id_rsa.pub >> $HOME/.ssh/authorized_keys
bash: /home/user/.ssh/authorized_keys: No such file or directory
Bir ssh anahtarı oluşturun:
Komut:
ssh-keygen -t rsa –P ""
Anahtarı yetkili anahtara taşıma:
Komut:
cat $HOME/.ssh/id_rsa.pub >> $HOME/.ssh/authorized_keys
bash: /home/user/.ssh/authorized_keys: No such file or directory
Yanıtlar:
Sen oluşturmak zorunda .ssh
dizini ve authorized_keys
dosyayı ilk kez.
.ssh
Dizini oluştur :
mkdir ~/.ssh
Doğru izinleri ayarlayın:
chmod 700 ~/.ssh
authorized_keys
Dosyayı oluştur :
touch ~/.ssh/authorized_keys
Doğru izinleri ayarlayın:
chmod 600 ~/.ssh/authorized_keys
İzinler önemli! Doğru izinler olmadan çalışmaz!
Şimdi ekleyebilir genel anahtarı için authorized_keys
dosyanın:
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
Sen kamu anahtarı eklemek zorunda bilgisayarınıza için authorized_keys
bir dosyaya SSH Keys kullanarak erişmek istediğiniz bilgisayarda !
Terdon'un bahsettiği gibi bu komutu da kullanabilirsiniz:
ssh-copy-id user@host
Bu, id_rsa.pub
( ~/.ssh
dizininizde) uzaktaki bilgisayarın authorized_keys
dosyasına koyacaktır ve gerekirse .ssh
dizini ve authorized_keys
dosyayı doğru izinlerle oluşturacaktır.
cat
bunu istemezsiniz , bunun ssh-copy-id
içindir.
Uzak bir sunucuya kurmak için genel anahtarı bir e-posta ile göndermeniz durumunda:
1) SSH'yi sunucuya yerleştirin. PuTTY'yi Windows'ta kullandım.
2) Anahtarı ayarlayın:
mkdir ~/.ssh
chmod 700 ~/.ssh
vi ~/.ssh/authorized_keys
Anahtarı tam olarak kopyalamaya ve editör penceresinde yeni bir satıra yapıştırmaya dikkat edin. Tek bir satır kapladığını doğrulayın ve kaydedin.
chmod 600 ~/.ssh/authorized_keys
Yeterince itibarım olmadığından, bunu buraya ekliyorum. Louis Matthijssen'in cevabına ek olarak, oluşturduğunuz bir kullanıcı olarak ssh üzerinden giriş yapamıyorsanız,
ssh username@host
o zaman bu, /home/username/.ssh klasörüne eklemeniz gereken sahiplik izninin bulunmamasından kaynaklanabilir . Aynı sorunu yaşadım ve siz de bu izni verebilirsiniz:
chown -R username:username /home/username/.ssh
Bu muhtemelen basitçe dizini oluşturduğunuzda ve izinleri root olarak belirlediğinizden, ancak sunucuya erişmek istediğiniz kullanıcı adı olarak olmadığı için gerçekleşebilir.
Umarım bu birine yardımcı olur.
Bu, anahtarı oluştururken ssh-keygen
bir dosya adı verirseniz de başarısız olabilir . Bir isim girdim my-ssh-file-name
ve bu klasör /Users/MyUserName
yerine anahtarı yazdı .ssh
. Dosya adını boş bırakırsanız, .ssh
beklendiği gibi yazacaktır .
~/.ssh/authorized_keys
kendi anahtarınız değil, bağlandığınız / güvendiğiniz diğer bilgisayarların anahtarlarıdır.