System/OS - Linux

텔넷(Telnet) 서버

728x90

텔넷 서버

오랫동안 사용된 원격 접속 방법으로, 보안이 취약하나 가장 기본적인 원격 접속방법으로 여전히 쓰이고 있다고 한다.

 

* 실습 환경: CentOS 7


텔넷 서버 구축

텔넷 서버 설치

# dnf -y install telnet-server

>> telnet client는 대부분의 운영체제에서 내장되어있다.

 

텔넷 서비스 시작

# systemctl start telnet.socket

>> telnet은 socket 형시으로 되어 있어서 항시 떠있지 않고 해당 요청이 들어왔을 때 뜨게해서 효율성을 높인다.

>> Listen 영역에 있는 "23"이 telnet이 사용하는 포트번호이다. 23번 포트는 다른 서비스를 사용하는 포트로 사용하면 안된다!

더보기

**포트(port)**

TCP/UDP 포트를 줄여서 포트라고 부르고, 가상의 논리적인 통신 연결번호를 의미한다. 

모든 컴퓨터가 0번~65535번(2^16-1)의 포트번호를 가지고 있고, 일반적으로 0~1023번까지는 컴퓨터 자체적으로 예약된 포트번호가 많다.

# nestat -nap 명령으로 현재 열려있는 포트넘버들을 모두 확인할 수 있다.

 

텔넷 전용 사용자 생성 및 로그인

# adduser teluser

>> teluser의 위치에 생성할 텔넷 전용 사용자를 입력하면 된다.

# passwd teluser

>> teluser의 비밀번호 설정

 

# telnet 서버IP주소

>> 텔넷 클라이언트를 사용해 접속한다. 실습에서는 localhost 서버에 접속하는 것으로 했다.

# exit

>> 텔넷이 종료되고 teluser에서 빠져나온다.

 

외부에서 텔넷 서버로 접속

윈도우 cmd 창에서 telnet 을 입력했을 때 

telnet이 없다고 뜰 경우에는

[제어판] > [프로그램 및 기능] > [Windows 기능 켜기/끄기] > [telnet client] 체크

하지만 이 상태에서 텔넷 연결을 요청해도 연결되지 않는다. CentOS를 설치할 때 서버 서비스 대부분을 허용하지 않는 상태로 설치했기 때문에 자체 방화벽이 설치되어 있어 연결되지 않는것이다. 따라서, 연결을 위해서는 보안수준 설정을 변경해줘야한다.

 

+)

# ifconfig

서버의 ip주소를 알아내고

windows cmd 창에서 ping 해보면 Server와 네트워크로 연결되는지 확인할 수 있다.

 

방화벽 설정

# firewall-config

>> 체크되지 않은 것들은 꺼져있는 서비스들이다.

>> [옵션] > [Firewalld 다시 불러오기]를 선택해 telnet이 그대로 체크되어있는지 확인하고 창을 닫는다.

 

윈도우에서 연결

# telnet <서버 ip 주소>

서버에서 텔넷이 소켓이기 때문에 사용자로부터 사용요청이 들어와야(systemctl start) 실행된다. 만약 재부팅 후에도 계속 텔넷 서버가 가동되도록 설정하고 싶으면

# systemctl enable telnet.socket

을 하면 된다.

SMALL