SSH 별칭을 사용합니다
alias ssh
alias ssh='ssh -t -K -Y
SSH를 사용하여 X11을 전달하고 싶었습니다(호스트 하나 제외). 그래서 다음과 같이 했습니다.
vim .ssh/config
host myhost
port 22
ForwardX11 no
HostkeyAlgorithms +ssh-rsa
PubkeyAcceptedAlgorithms +ssh-rsa
하지만..
ssh myhost
sh: xauth: command not found
myuser@myhost$
내 옵션이 무시되는 것 같습니다..왜죠?
나도 시도했다
ForwardX11 no
ForwardX11trusted no
그러나 성공하지 못했습니다.
해결책은 이것이었을 수 있습니다 ...
\ssh myhost
따라서 -t -K -y는 무시되지만 더 깔끔한 솔루션을 선호합니다.
잊어버렸어요: 원격 서버가 dropbear를 사용합니다
읽다이 페이지서버의 특정 키에 대해 X11을 비활성화할 수 있다는 것을 알았습니다.
vim .ssh/authorized_keys
no-X11-forwarding ssh-rsa......
하지만 이 경우에는 \ssh 명령도 거부됩니다!
ssh myhost
X11 forwarding request failed on channel 0
Connection to myhost closed by remote host.
Connection to myhost closed.
\ssh myhost
Connection to myhost closed by remote host.
Connection to myhost closed.
서버에서 이 줄을 사용하면 작동하지만 pubkey에는 사용할 수 없으므로 비밀번호가 필요합니다.
no-agent -forwarding, no-port-forwarding, no-x11-forwarding ssh-rsa....
답변1
예비 설명
당신이 태그했어요드롭 베어하지만 SSH가 의심 스럽습니다.고객ssh
Dropbear에서(당신이 실제로 그럴지는 의심스럽습니다 . 당신이 사용한 모든 옵션도 지원하지 않는 dbclient
것 같습니다 ). dbclient
따라서 이 답변에서는 OpenSSH SSH 클라이언트의 동작을 조사합니다.
(저는 개인적으로 모든 클라이언트가 질문과 관련된 측면에서 OpenSSH의 동작을 복제할 것으로 기대합니다. 요점은 OpenSSH가 SSH 구현을 위한 사실상의 표준이라는 것입니다.)
분석하다
~에서man 5 ssh_config
:
ssh(1)
다음 소스에서 다음 순서로 구성 데이터를 가져옵니다.
- 명령줄 옵션
- 사용자 프로필(
~/.ssh/config
)- 시스템 전체 구성 파일(
/etc/ssh/ssh_config
)각 매개변수에 대해 처음 얻은 값이 사용됩니다. […]
별칭을 사용하면 ssh -Y
구성 파일에서 무시되는 ssh
. 명령줄 옵션을 사용하게 됩니다. ForwardX11 no
구성 파일의 옵션이 작동하도록 하려면 반대 명령줄 옵션을 사용하면 안 됩니다. 명령줄 옵션이 가장 먼저 중요합니다. 그게 전부입니다.
해결책
당신은 다음과 같이 썼습니다:
하나의 호스트를 제외하고 SSH를 사용하여 X11을 전달하고 싶습니다
별칭으로 수행하지 말고 구성 파일에서 구현하십시오.
host myhost
ForwardX11 no
host *
ForwardX11 yes
ForwardX11Trusted yes
설명서의 지침을 참고하세요.
각 매개변수에서 처음 얻은 값을 사용하므로 파일 시작 부분에 더 많은 호스트별 선언을 제공하고 끝 부분에 일반 기본값을 제공해야 합니다.
즉 , 위의 예와 정확히 host myhost
동일해야 하며 그 반대가 아니어야 합니다.host *