이미 SSHD 상태인지 어떻게 알 수 있습니까? 컴퓨터 A에 앉아 컴퓨터 B에 SSH로 연결

‘exit’을 입력하지 않고 어딘가에 SSH가 있는지 쉽게 알 수 있습니까?

예를 들어, 현재 컴퓨터 A에 앉아 컴퓨터 B에 SSH로 연결 한 다음 B에서 컴퓨터 C로 SSH 연결 한 경우 세션을 닫지 않고 ‘호스트 이름’을 사용하여 어디에서 찾을 수 있는지 알려주는 방법이 있습니까? ~에요?

(아마도이 ​​솔루션은 로컬 호스트에 있지만 SSH를 다른 곳에서 SSH로 내 로컬 컴퓨터로 다시 가져 가면 어디에서나 SSH가 아니라는 것을 분명히합니다. 말하다.)



답변

$ SSH_CONNECTION을 확인하십시오. 현재 연결되어있는 IP 및 포트를 알려줍니다. 적어도 OpenSSH의 경우입니다. 다른 서버와의 YMMV


답변

‘ssh’된 것을 알고 있지만 어디에서 알 수없는 경우 시도하십시오

w

명령 줄에서. 출력에는 유용 ​​할 수있는 FROM 필드가 포함됩니다.


답변

호스트 이름을 포함하도록 프롬프트를 설정하십시오. 그렇지 않으면 screen모든 로그인에 호스트 이름이 포함 된 상태 줄 을 사용 하고 싶습니다 ( 설정 이 약간 복잡 하고 상태 줄이있는 화면의 상태 줄이 재귀 적입니다). 당신은 할 수 echo $HOSTNAME있거나 실행할 수 있어야합니다 hostname.


답변

나는 “w”답변을 좋아합니다.

또 다른 방법은 호스트 이름을 확인하여 컴퓨터 이름이 무엇인지 확인하는 것입니다.

hostname


답변

시나리오에서 가능하면 A에서 C로 직접 연결하십시오. 이중 암호화를 피할 수 있습니다. 아마도 대기 시간이 늘어날 것입니다.

또한 호스트 이름을 반영하도록 모든 계정에 대해 쉘 변수 PS1 을 수정하십시오 ( 아직 호스트 이름이 아닌 경우). 이 트릭은 chroot를 사용하는 상황에서도 도움이됩니다.


답변