인디안 보호구역

[Linux] 터미널과 네트워크에 관한 명령들 본문

Study/보안 공부하는 인디안

[Linux] 터미널과 네트워크에 관한 명령들

Indie-An 2016. 3. 18. 21:30

본 게시물은 Hacker School Training3을 참조하여 만들어졌습니다.



이번 포스트에서 알아볼 것은 터미널(콘솔)과 네트워크에 관한 명령들입니다.

운영중인 서버에 어떤 사람들이 접속해 있는지 보고, 그 사람들과 대화를 하는 방법들을 배우겠습니다.



텔넷 혹은 SSH(Secure Shell)을 이용하여 특정 서버에 접속한 것을 "터미널을 통해 접속했다" 라고 합니다.

반면, 직접 컴퓨터에 리눅스를 설치하고, 부팅하여 로그인한 것을 "콘솔을 통해 접속했다."라고 합니다.

터미널과 콘솔, 이 두 용어는 같은 의미이긴 하지만 위와 같은 차이에 따라 구별되어 사용됩니다.




우선 w 명령을 이용하여 제가 접속한 서버에 다른 사람들이 접속해있는지 확인해봅시다.








이제 위의 정보를 분석하는 방법을 배워보겠습니다.









1. USER

이것은 어떤 ID로 login 했는지를 보여줍니다.

저는 현재 guest라는 ID로 로그인 되어 있습니다.


2. TTY

이것은 각 사용자가 콘솔로 접속을 했는지, 또는 터미널로 접속을 했는지를 보여줍니다.

tty로 나타나면 콘솔 접속, pts로 나타나면 터미널 접속을 의미합니다.

또한 그 뒤의 숫자는 각 사람이 몇번째 터미널로 접속했는지를 보여줍니다.

만약 3명이 동시에 텔넷 접속을 하게 되면, 순서대로 pts/0, pts/1, pts/2 의 PTS를 받게 됩니다.


3. FROM

이것은 접속한 사람의 컴퓨터 IP를 보여줍니다.

root의 경우엔 콘솔 접속을 하였기 때문에 IP가 나타나지 않습니다.

자신의 서버에 어떤 사람이 불법 접속을 하면 이곳에 나오는 IP를 보고 역해킹을 할 수도 있습니다.


4. LOGIN@

이것은 어느 시간에 로그인했는지를 보여줍니다.


5. IDLE

이것은 지연시간으로서, 사용자가 얼마나 오랫동안 아무것도 입력을 하지 않고 쉬고 있는지를 알 수 있습니다.

위에서 root의 경우엔 5시간 57분 동안 아무것도 입력하고 있지 않은 상태이고,

trainer3는 1시간 13분동안 아무것도 하지 않고 접속만 유지하고 있다는 것을 알 수 있습니다.

(IDLE 값이 a:aa(s)인 경우와 b:bb(m)인 경우 등이 있는데 s는 second의 약자이고, m은 minutes의 약자이므로

만약 1:23s 라면 1분 23초 동안, 4:56m 이라면 4시간 56분동안 아무런 입력도 하지 않았다는 뜻이다.)


6. JCPU

이것은 각 사용자가 CPU를 사용한 지연 시간을 보여줍니다.


7. PCPU

이것은 WHAT 필드에 있는 명령이 지연된 시간을 보여줍니다.


8. WHAT

이것은 접속된 사용자들이 현재 어떤 명령을 사용하고 있는지를 보여줍니다.





이번에는 조금 더 자세하게 사용자들의 정보를 보는 방법을 배워봅시다.

finger 명령에 -l 옵션을 이용하면, 사용자들의 많은 정보를 볼 수 있습니다.






각 사용자에 대한 많은 정보를 볼 수 있습니다.










뒤에 사용자 ID를 추가로 입력하면 입력한 사용자의 정보만 추려 볼 수도 있습니다!


이번에는 자신의 터미널을 확인하는 방법을 배웁시다.

tty 명령을 이용해봅시다.








위에 나온 것이 자신의 터미널 정보입니다.


이번엔 접속된 사용자들과 대화 하는 방법을 배워봅시다.


먼저 write 명령을 이용하여 특정한 사용자에게 족지를 보내봅시다.


쪽지가 성공적으로 전송되는지 직접 보려면, 최소한 두개의 ID가 필요하니, 윈도우의 시작 -실행을 클릭하시고 TELNET을 입력하여 두개의 텔넷창을 띄워보겠습니다. (SSH도 상관없습니다. 저는 PuTTY를 이용하여 SSH로 접속하였습니다.)


새로운 텔넷창(혹은 SSH)이 생성되면 현재 접속한 ID와는 다른 ID로 로그인합니다.

로그인이 되었다면, 다시 원래 사용하던 guest 터미널로 돌아와서 w를 입력해 새로 로그인한 ID의 pts를 확인합니다.

(사용 ID : guest, level1, 메세지 전송 guest -> level1)







level1의 pts 번호를 확인하세요. 3번이군요!


write 명령의 사용법은 다음과 같습니다.


" write ID /dev/pts/pts번호 "


이제 새로 접속한 level1에게 쪽지를 보내겠습니다.


위에서 w 명령을 사용하여 나타난 level1의 pts 번호는 3번이었는데요,


"write level1 /dev/pts/3" 과 같이 입력하면 됩니다.








(대화를 중지하려면 ctrl키와 d키를 동시에 누르세요.)


이번엔 마지막으로 현재 접속한 모든 사용자들에게 쪽지를 보내는 방법을 배워봅시다.


모든 사용자에게 성공적으로 전송이 되나 직접 확인하기 위해 터미널 스크린을 3~4개 정도 띄우신 후, 모두 다른 ID로 로그인 합시다.










명령어                            기능

w                                본인이 접속한 서버에 어떤 사람들이 접속해있는지 확인할 수 있다.

finger -l                           본인이 접속한 서버에 어떤 사람들이 접속해있는지, 더 자세한 정보를 확인할 수 있다.

tty                                자신의 터미널 번호(주소)를 확인할 수 있다.

write guest /dev/pts/pts번호        특정 사람에게 대화를 걸 수 있다.

wall 내용                          현재 접속해있는 사람 전부에게 쪽지를 보낼 수 있다.


Comments