don't stop believing

현재 서버에 ssh로 접속한 계정 확인하기 본문

Linux/Basic

현재 서버에 ssh로 접속한 계정 확인하기

Tongchun 2019. 3. 21. 14:37

회사에 시스템 테스트용으로 CentOS를 두고있는데 갑자기 현재 누가 ssh로 접속하고 있는지 궁금해 졌습니다.

몇 가지 방법이 있는데 정리해 보겠습니다.


우선 netstat 명령으로 확인하는 방법입니다.

CentOS에서 netstat를 사용하려면 net-tools를 설치해야 합니다.

$ sudo yum install net-tools

net-tools이 설치되어 있다면 아래 netstat 명령으로 확인해 봅니다.

sudo netstat -tnpa | grep 'ESTABLISHED.*sshd'


$ sudo netstat -tnpa | grep 'ESTABLISHED.*sshd'
tcp        0      0 10.10.5.0:22            10.10.5.104:50618       ESTABLISHED 12719/sshd: tongchu

현재는 저 혼자네요.

10.10.5.0 서버에 ssh 포트인 22번으로 10.10.5.104 ip쓰는 서버가 접속해 있는데 연결 포트는 50618입니다.

계정은 tongchun으로 접속했네요.


process 리스트에서 sshd를 사용하고 있는 계정을 찾을 수도 있습니다.

ps auxwww | grep sshd:


$ ps auxwww | grep sshd:
root     12719  0.0  0.0 158868  5688 ?        Ss   01:06   0:00 sshd: tongchun [priv]
tongchun 12726  0.0  0.0 158868  2320 ?        S    01:06   0:00 sshd: tongchun@pts/0
tongchun 13878  0.0  0.0 116872  1040 pts/0    S+   01:28   0:00 grep --color=auto sshd:

가장 간단한 방법으로는 $SSH_CONNECTION를 확인할 수도 있습니다.

ssh로 연결된 정보는 시스템의 $SSH_CONNECTION 변수에 담겨있습니다.

echo $SSH_CONNECTION


$ echo $SSH_CONNECTION
10.10.5.104 50618 10.10.5.0 22

그리고 who 명령만으로도 확인할 수도 있습니다.

who


$ who
tongchun tty1         2019-03-20 05:18
tongchun pts/0        2019-03-21 01:06 (10.10.5.104)

여기까지 ssh로 접속한 계정 확인 방법이었습니다.


Comments