Genellikle uzak sunucuya
ssh user@server.com -p 11000
ve kullanıcı için her seferinde şifreyi vermek. Ssh kullanarak her bağlandığımda şifreyi girmekten nasıl kaçınmalıyım?
Genellikle uzak sunucuya
ssh user@server.com -p 11000
ve kullanıcı için her seferinde şifreyi vermek. Ssh kullanarak her bağlandığımda şifreyi girmekten nasıl kaçınmalıyım?
Yanıtlar:
İlk önce şunu koyun ~/.ssh/config
:
Host server
HostName server.com
Port 11000
User user
Sen mümkün olacak ssh server
, daha sonra şifreyi yazın.
İkinci olarak , ve ~/.ssh/
adında dosyalarınız olup olmadığını kontrol edin . Değilse, ayarlanmış bir anahtarınız yoktur, bu nedenle kullanarak bir çift oluşturmanız gerekir . Anahtarlara bir şifre verebilir veya vermeyebilirsiniz. Oluşturulan dosya şöyle görünmelidir:id_rsa
id_rsa.pub
ssh-keygen
id_rsa.pub
ssh-rsa lotsofrandomtext user @ local
Üçüncü olarak, sunucuya ssh dosyasını ~/.ssh/authorized_keys
yoksa dosyayı oluşturun . Ardından, ~/.ssh/id_rsa.pub
daha önce oluşturduğunuz içeriğin içeriğini buraya ekleyin . Bu, dosya içeriklerini panonuza kopyalamak, sonra ~/.ssh/authorized_keys
bir metin düzenleyicide açmak ve bir şeyi yapıştırmak anlamına gelebilir .
Alternatif olarak, komutu kullanın ssh-copy-id server
( server
içindeki adla değiştirin ~/.ssh/config
). Bu yukarıdakiyle aynı şeyi yapacaktır. Bazen ssh-copy-id
takıldığımı gördüm , bu yüzden gerçekten sevmiyorum.
ssh server
Özel anahtarınızı bir parola ile korumayı seçmediyseniz, şimdi sadece ssh yapabilmeniz gerekir . Genellikle bir parola kullanmazsanız, özel anahtarınızı başka yollarla (örn. Tam disk şifrelemesi) korumalısınız.
Dördüncüsü (yalnızca özel anahtarınızı bir parola ile koruyorsanız gerekir), şunu koyun~/.bashrc
:
start_ssh_agent() {
# Try to use an existing agent
save=~/.ssh-agent
if [[ -e "$save" ]]
then
. "$save" > /dev/null
fi
# No existing agent, start a new one
if [[ -z "$SSH_AGENT_PID" || ! -e "/proc/$SSH_AGENT_PID" ]]
then
ssh-agent > "$save"
. "$save" > /dev/null
ssh-add
fi
}
start_ssh_agent
Bununla, bilgisayar önyüklemesi başına parolayı yalnızca bir kez girmeniz gerekecektir.
User user
satır ekleyebilirsiniz ~/.ssh/config
.
ssh -P 11000
Phunehehe'nin cevabına ek olarak, anahtarlık kılavuzu için Gentoo Linux Anahtarlık Kılavuzu'na bakın . Anahtarlık ayrıca ssh-agent kullanır . Ssh-agent daemon, parolayı kullanılabilir kılar (ssh-agent daemon öldüğünde kullanılamaz hale gelir), ancak kılavuzu alıntılamak için anahtarlık .reuses an ssh-agent between logins, and optionally prompts for passphrases each time the user logs in