SSH - ~ / .ssh / config dosyasına “-t command” nasıl eklenir


13

Kullandığım ~/.ssh/configKolayca girebilmeniz için dosyayı ssh myservervb ve doğru kullanıcı adı, liman, ana makine adı, kimlik dosyası göndeririz

Ancak birçok sunucu için ilk yaptığım şey su -root olarak giriş yapmak . Öyle gibi komut satırında tek bir komut sonra tüm bunlar yapabilirsiniz: ssh myserver -t su -. Dosyama ekleyebileceğim ve bunu benim ~/.ssh/configiçin yapacak bir şey var mı? Yapabilmek istiyorum ssh myserver-rootve aynı şeyi yapacak ssh myserver -t su -mı?

Biliyorum PermitRootLogin, bu sunucu için kapalı ve bunu açmakta isteksizim. İstemci tarafında ssh kullanarak bunu yapmanın bir yolu olup olmadığını görmek istiyorum.

Yanıtlar:


10

Ben buna diğer yönden yaklaşacağımı düşünüyorum - "su -" komutunuzu çalıştırmak için uzak sunucudaki ~ / .ssh / authority_keys dosyanızdaki ortak anahtar girişinde 'command =' kullanın.

Daha sonra, ~ / .ssh / config dosyanızdaki (IdentityFile seçeneği) özel anahtarı kullanarak bu şekilde çalışmak istediğiniz her ana bilgisayar / diğer ad ("myserver-root") kullanın.

Yetkili_anahtarlarda (5) mevcut seçenekler sshd (8) olarak belgelenmiştir.


Evet bu tam olarak istediğimi yapıyor. :) Sunucudaki ~ / .ssh / authority_key dosyası üzerinde tam denetime sahibim ve bunu değiştirmeyle ilgili bir sorunum yok.
Rory


3

Neden yolunuzdaki bir dizine (veya bunun için bir takma adı) rssh adlı bir komut dosyası eklememelisiniz:

#!/bin/bash
ssh $1 -t 'su -'

O zaman sadece:

rssh myServer

1

OpenSSH kaynağında sözde tty ayırma için herhangi bir yapılandırma seçeneği bulamadım.

Ama PermitRootLogin ile ilgili bir ipucu verebilirim, ayarlayın:

PermitRootLogin without-password

Ve yalnızca ssh anahtarlarıyla kök oturum açmaya izin ver.


1

Sunucu tarafında ~ / .bashrc içine böyle bir şey eklemeye ne dersiniz?

if [ "$SSH_TTY" != "" ]; then su -; logout; fi

1

En iyi cevap muhtemelen rkthkr ve jrg'nin bir kombinasyonudur . PermitRootLoginBir anahtar istemek için kullanın , ardından commandanahtar kelimeyi içeren anahtarı yalnızca root'un yetkili_anahtarlar dosyasına yerleştirin.

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.