2009-01-06 21 views
5

Bir ssh tüneli otomatik olarak ayarlayan bir komut dosyası oluşturmanız gerekir. Şifre olmadan özel bir ssh anahtarının iyi bir başlangıç ​​olduğunu düşünüyorum, ancak bunun mümkün olup olmadığını ve nasıl yapılacağını bulamadım. Bu anahtarın sınırlı ayrıcalıkları olmalıdır (yalnızca tüneli ayarlayın) ancak kendim için başka bir özel anahtara (parolayla) ihtiyacım var.Bir ssh tüneli kurmak için parolasız ssh anahtar oluşturma

Teşekkürler!

cevap

8

Tamam, cevabı buldum. Bu, eski özel anahtarın üzerine yazacaktır, aksi halde ssh-keygen -f theNewPrivateKey. İkincisi, ssh -i theNewPrivateKey [email protected]-i seçeneği, kimlik doğrulama için kullanılan özel anahtarı değiştirir.

Şimdi komutumu deneyebilirim.


Düzenleme: nasıl benim yeni anahtar sınırlıdır gelmez ayrıcalıkları:

command="sleep 99999999999" ssh-dss AAAAB3NzaC1kc3MA... 
(+ the rest of the key) 
:

hedef bilgisayarın $ HOME/.ssh/authorized_keys2 dosyasına genel anahtarı kopyalama, ben bu ilave

O zaman izin verilen tek komut sonsuza kadar beklemek. Bu anahtarın yaratılması amacı ters ssh tüneli oluşturmak olduğundan, bu iyi olmalıdır. Sonra tünel oluşturun:

ssh -T -R 7878:localhost:22 -i .ssh/mynewkey [email protected] 

Sonunda benim ev bilgisayarından oturum açabilirler:

ssh [email protected] -p7878 

Bu güvenlik sorunları yok umuyoruz. Bu kötü bir şeyse lütfen bana bildirin!

+1

Bu yeni anahtar "sınırlı ayrıcalıklara sahip" nasıl olur? – innaM

+1

Çünkü sadece bir şey yapabilir, 'sleep'. – Keltia

+0

Bunu saçmalamak için teşekkürler. – innaM

1

ssh-keygen

komutunu deneyin.

+1

-f seçeneğini unutmayın veya bu eski özel anahtarın üzerine yazacaktır – ascobol

0

Robocopy betiğimde parola oluşturmak zorunda kalmadan bir sunucu içeriğini otomatik olarak eşzamanlamak zorunda kaldığım benzer bir durum vardı.

Bu Link bana yardımcı oldu.