Я использую ~/.ssh/config
файл, чтобы я мог легко войти, ssh myserver
и он предоставит правильное имя пользователя, порт, имя хоста, файл идентификации и т. Д.
Однако для многих серверов первое, что я делаю, - это вход su -
в систему как root. Я могу сделать это все в одной команде в командной строке следующим образом: ssh myserver -t su -
. Есть ли что-то, что я могу добавить в свой ~/.ssh/config
файл, который сделает это для меня? Я хочу быть в состоянии сделать, ssh myserver-root
и это будет делать то же самое, что и ssh myserver -t su -
?
Я знаю о том PermitRootLogin
, что это отключено для этого сервера, и я не хочу его включать. Я бы предпочел посмотреть, есть ли способ сделать это с помощью ssh на стороне клиента.
Используй силу, Люк!
используйте
RequestTTY force
в вашем~/.ssh/config
для желаемого хоста.Кстати. это также обсуждается здесь /unix/27713/ssh-config-way-to-spectify-pseudo-tty-allocation-and-command-execution-like-sc/294468#294468
источник
Почему бы не добавить в каталог путь к каталогу (или псевдоним для него) с именем rssh вроде:
Тогда это просто:
источник
Я не нашел никакой опции конфигурации для выделения псевдо-tty в источнике OpenSSH.
Но я могу дать совет относительно PermitRootLogin, установите его на:
И разрешить только root-логины с ssh-ключами.
источник
Как насчет добавления чего-то подобного в ~ / .bashrc на стороне сервера?
источник
Лучшим ответом, вероятно, является комбинация rkthkr и jrg . Используйте
PermitRootLogin
для запроса ключа, затем поместите ключ сcommand
ключевым словом только в файл author_keys root.источник