~/.ssh/config
파일을 사용하여 쉽게 입력 ssh myserver
할 수 있으며 올바른 사용자 이름, 포트, 호스트 이름, ID 파일 등을 제공합니다.
그러나 많은 서버의 경우 첫 번째 작업은 su -
루트로 로그인하기 위해 입력 하는 것 입니다. 명령 줄에서 하나의 명령 으로이 작업을 모두 수행 할 수 있습니다 ssh myserver -t su -
. 내 ~/.ssh/config
파일에 추가 할 수있는 것이 있습니까? 나는 할 수 있기를 원 ssh myserver-root
하고 그것은 같은 일을 할 ssh myserver -t su -
것인가?
에 대해 알고 있습니다. PermitRootLogin
이 서버는 사용하지 않으며이 서버를 사용하기를 꺼려합니다. 클라이언트 쪽에서 ssh를 사용 하여이 작업을 수행 할 수있는 방법이 있는지 훨씬 알고 싶습니다.
답변
나는 다른 방향에서 이것에 접근 할 것이라고 생각한다-원격 서버에서 ~ / .ssh / authorized_keys 파일의 공개 키 항목에서 ‘command =’를 사용하여 “su-“명령을 실행하십시오.
그런 다음 ~ / .ssh / config 파일 (IdentityFile 옵션)에서 개인 키를 사용 / 참조하십시오 (이 방법으로 작업하려는 모든 호스트 / 별칭 ( “myserver-root”)).
certified_keys (5)에서 사용 가능한 옵션은 sshd (8)에 설명되어 있습니다.
답변
루크의 힘을 사용하십시오!
사용 RequestTTY force
하여에서 ~/.ssh/config
원하는 호스트.
btw. 이 또한 여기에 설명 /unix/27713/ssh-config-way-to-spectify-pseudo-tty-allocation-and-command-execution-like-sc/294468#294468
답변
rssh와 같이 경로의 디렉토리 (또는 그 별명)에 스크립트를 추가하지 않으시겠습니까?
#!/bin/bash
ssh $1 -t 'su -'
그런 다음 :
rssh myServer
답변
OpenSSH 소스에서 pseudo-tty 할당에 대한 구성 옵션을 찾지 못했습니다.
그러나 PermitRootLogin에 관한 팁을 줄 수 있습니다.
PermitRootLogin without-password
그리고 ssh-key로 루트 로그인 만 허용하십시오.