서론
ELITE HACKER Bootcamp 3rd 1주차 수업 공부 내용
aws 우분투 서버 하나 파서 연습
프로토콜, telnet, ssh, nc
마지막 거고 실습도 따로 없으니 그냥 마음 편하게 작성하면서 공부해야겠다...
프로토콜
쉽게 말하면 약속. 길게 말하면 컴퓨터 네트워크에서 서로 다른 시스템 간의 데이터 통신을 가능하게 해주는 규칙과 표준의 집합
http, udp, tcp 이렇게 맨 뒤에 p로 끝나는 애들? 대부분이 protocol 의 약자로 프로토콜(규칙) 일 가능성이 높음
- HTTP/HTTPS: 웹 페이지의 전송을 위한 프로토콜.
- FTP: 파일 전송을 위한 프로토콜.
- SSH: 보안된 원격 접속을 위한 프로토콜.
- TCP/UDP: 네트워크 계층에서 데이터의 전송을 다루는 프로토콜.
Telnet
네트워크 프로토콜로, 원격 시스템에 텍스트 기반으로 접속할 수 있게 해주는데... 이게 보안상으로 참 안 좋아서 윈도우에서는 이거 자체를 막아놨다. 왜냐? 데이터(비밀번호 등)를 평문으로 전송한다나 뭐라나...그래서 보안에 진짜 취약하단다.
사용방법은
telnet <호스트 IP> <포트>
이렇게 사용하는데, 텔넷의 기본 포트는 23번 포트이기에, 192.168.0.1에 접속하고 싶다?
telnet 192.168.0.1 23
이렇게 쓰면 되는 것이다.
ssh
SSH는 원격 시스템에 보안된 방식으로 접속할 수 있게 해주는 네트워크 프로토콜로, 데이터가 암호화 전송되기 때문에 Telnet보단 이걸 쓴다. 왜냐? 보안이 뛰어나서.
ssh <사용자>@<호스트 IP 또는 도메인>
이렇게 쓰기에,
192.168.1.10에 접속하고 싶다?
ssh user@192.168.1.10
이렇게 접속한다.
내 서버같은 경우에는 접속하려면
ssh -i "키값" ubuntu@아이피주소
이렇게 접근한다.
포트 변경하려면
ssh -p <포트 번호> <사용자>@<호스트 IP>
nc
nc는 Netcat의 약자인데, 네트워크 디버깅 및 탐색에 사용된다.
다양한 프로토콜과 포트에서 데이터를 송수신하거나, 간이 서버로 작동할 수 있다.
특정 서버에 연결하려면
nc <호스트 IP> <포트>
즉, 192.168.1.10에 포트 80번에 접속하려면?
nc 192.168.1.10 80
이렇게 접속한다.
반대로 임시 서버를 열려면?
nc -l <포트>
를 하면 된다.
만약 nc 저기로 파일 전송하려면?
# cat <파일명> | nc <호스트 IP> <포트>
cat file.txt | nc 192.168.1.10 1234
파일을 받을려면?
# nc -l <포트> > <저장할 파일명>
nc -l 1234 > received_file.txt
이런식으로 사용한다.
어디포트 열려있나 확인하려면
#nc -zv <호스트 IP> <포트 범위>
nc -zv 192.168.1.10 20-80
드림핵에서 시스템해킹할 때 저 nc를 이용해서 많이 접속했었다.
'KnockOn' 카테고리의 다른 글
[KnockOn] Linux/Ubuntu C언어 자료형 (0) | 2024.11.12 |
---|---|
[KnockOn] Linux/Ubuntu C언어 및 컴파일 (0) | 2024.11.11 |
[KnockOn] Linux/Ubuntu 방화벽, ufw (1) | 2024.11.07 |
[KnockOn] Linux/Ubuntu 리눅스 권한, 유저, 그룹 (3) | 2024.11.07 |
[KnockOn] Linux/Ubuntu 운영체제의 패키지 (0) | 2024.11.07 |