사용자가 로그인하는 방법(RDP, ssh, VNC 또는 기타 유형 사용)을 알고 싶습니다. Linux 운영 체제와 관계없이 일반적인 방식으로 사용자의 로그인 유형을 표시하려면 어떻게 해야 합니까?
답변1
lsof
사용자가 어떤 파일로 작업하고 있는지 확인하는 데 사용되는 명령줄 도구입니다.모든 것이 파일이다Linux에서는 어떤 사용자가 "ssh" 또는 "xvnc"(서버에 연결하는 방법을 의미)를 사용하고 있는지 확인하는 데 사용할 수 있습니다.
SSH에 대한 CLI 코드는 다음과 같습니다.
% sudo lsof -i -n | egrep '\<ssh\>'
ssh 19749 user 3u IPv4 148088244 TCP x.x.x.x:39689->y.y.y.y:22 (ESTABLISHED)
ssh 19749 user 4u IPv6 148088282 TCP [::1]:9090 (LISTEN)
ssh 19749 user 5u IPv4 148088283 TCP 127.0.0.1:9090 (LISTEN)
vnc/rdp 연결의 경우 다음 명령을 사용할 수 있습니다.
$ sudo lsof -b -w -n -c /^Xvnc$/b -a -iTCP:5900-5999
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
Xvnc 1625 guest 1u IPv4 252910 0t0 TCP 127.0.0.1:5910 (LISTEN)
Xvnc 1625 guest 9u IPv4 261226 0t0 TCP 127.0.0.1:5910->127.0.0.1:35242 (ESTABLISHED)