ssh 및 su 체인 인쇄


2

bash에서 완전한 ssh 및 su 체인을 표시하는 방법이 있습니까?

예를 들어. 서버 a에서 사용자 aa로 :

su - ab
ssh ba@B
su - bb

따라서 다음과 같은 것을 인쇄하는 명령을 원합니다.

1 bash aa in A
2 su ab in A
3 ssh ba in B
4 su bb in B

pstree를 시도했지만 사용자를 인쇄하지 않으며 마지막 ssh'ed 서버의 프로세스에서만 작동합니다.

$ pstree | grep -C 5 pstree
serversshd---sshd---sshd---bash---su---bash-+-grep
     |                                       `-pstree

감사합니다.

bash 

답변:


0

다음은 쉽게 찾을 수있는 것입니다 (제공 한 서버).

$ who
ba     pts/0        2012-11-14 22:47 (<A hostname>)

나는 당신의 전체 bash/ ssh/ su역사 를 검색하는 데 사용할 수있는 방법이 없다고 생각합니다 . 여기 당신의 오리지널보다 조금 더 나아갈 것을 제안합니다 pstree. 그러나 이것은 매우 스케치입니다.

sshd pid 검색 :

$ pstree -p | grep -B1 pstree
    |-sshd(8259)---sshd(23962)---bash(23965)-+-grep(24390)
    |                                        `-pstree(24389)

이렇게하면 서버에서 포트를 찾을 수 있습니다 A에 연결되어 sshd에서 B:

$ lsof -i -P | grep 23962
sshd      23962        ba    3r  IPv4 36943568       TCP B:22->A:50174 (ESTABLISHED)

그런 다음이 포트를 사용하는 사람을 찾을 수 있습니다 A.

$  lsof -i -P| grep 50174
ssh       19085        ab    3u  IPv4 0x81104c4d3b4ee24d      0t0  TCP A:50174->B:22 (ESTABLISHED)

이제 19085pstree와 함께 사용 하여 수행 된 작업을 파악할 수 있습니다 A.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.