-
LINUX Telnet 서버 구축 하는 방법 [원격지 서버 1편]System of Infra/Linux System 2022. 5. 17. 22:45728x90반응형
LINUX Telnet 서버 구축하는 방법 [원격지 서버 1편]
[root@localhost /]# ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: ens160: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 00:0c:29:e7:47:fb brd ff:ff:ff:ff:ff:ff inet 192.168.111.100/24 brd 192.168.111.255 scope global noprefixroute ens160 valid_lft forever preferred_lft forever inet6 fe80::4beb:7287:7a69:cde2/64 scope link noprefixroute valid_lft forever preferred_lft forever
▶ 192.168.111.100 아이피를 가지고 있는 리눅스 시스템을 준비해 주도록 합니다.
[root@localhost /]# dnf -y install telnet-server CentOS-8 - AppStream 2.8 kB/s | 4.3 kB 00:01 CentOS-8 - Base 2.5 kB/s | 3.9 kB 00:01 CentOS-8 - PowerTools 2.5 kB/s | 4.3 kB 00:01 CentOS-8 - Plus 1.9 kB/s | 3.0 kB 00:01 CentOS-8 - Extras 915 B/s | 1.5 kB 00:01 종속성이 해결되었습니다. ======================================================================================================== 꾸러미 아키텍처 버전 리포지토리 크기 ======================================================================================================== Installing: telnet-server x86_64 1:0.17-73.el8 AppStream 48 k 거래 요약 ======================================================================================================== 설치 1 꾸러미 총 다운로드 크기 : 48 k 설치 크기 : 60 k 패키지 다운로드중: telnet-server-0.17-73.el8.x86_64.rpm 24 kB/s | 48 kB 00:01 -------------------------------------------------------------------------------------------------------- 합계 24 kB/s | 48 kB 00:01 트랜잭션 점검 실행 중 트랜잭션 검사가 성공했습니다. 트랜잭션 테스트 실행 중 트랜잭션 테스트가 완료되었습니다. 거래 실행 중 준비 중입니다 : 1/1 Installing : telnet-server-1:0.17-73.el8.x86_64 1/1 스크립틀릿 실행: telnet-server-1:0.17-73.el8.x86_64 1/1 확인 중 : telnet-server-1:0.17-73.el8.x86_64 1/1 설치됨: telnet-server-1:0.17-73.el8.x86_64 완료되었습니다!
▶ dnf -y install telnet-server 명령어를 통해서 telnet 서비스의 패키지를 설치해 주도록 합니다.
[root@localhost /]# systemctl restart telnet.socket [root@localhost /]# systemctl status telnet.socket ● telnet.socket - Telnet Server Activation Socket Loaded: loaded (/usr/lib/systemd/system/telnet.socket; disabled; vendor preset: disabled) Active: active (listening) since Mon 2022-04-25 22:12:41 KST; 32s ago Docs: man:telnetd(8) Listen: [::]:23 (Stream) Accepted: 0; Connected: 0; CGroup: /system.slice/telnet.socket 4월 25 22:12:41 localhost.localdomain systemd[1]: Listening on Telnet Server Activation Socket.
▶ systemctl restart or start 명령어를 통해서 telnet 소켓을 활성화시켜주도록 합니다. 활성화 후 active의 상태를 확인해 주도록 합니다. telnet 서비스는 23번 포트를 사용합니다.
[root@localhost /]# useradd -d /home/teluser teluser [root@localhost /]# cat /etc/passwd | grep -i teluser teluser:x:1001:1001::/home/teluser:/bin/bash [root@localhost /]# passwd teluser teluser 사용자의 비밀 번호 변경 중 새 암호: 잘못된 암호: 암호는 8 개의 문자 보다 짧습니다 새 암호 재입력: passwd: 모든 인증 토큰이 성공적으로 업데이트 되었습니다. [root@localhost /]# telnet 192.168.111.100 Trying 192.168.111.100... Connected to 192.168.111.100. Escape character is '^]'. Kernel 4.18.0-80.el8.x86_64 on an x86_64 localhost login: teluser Password: [teluser@localhost ~]$ pwd /home/teluser
▶ telnet 서버의 원격지를 테스트 하기 위해서 telnetuser라는 계정 하나를 생성해주도록 합니다. 생성 후 비밀번호까지 생성 후 자기 자신의 아이피를 통해서 telnet 서비스를 테스트합니다. Escape character is '^]'. 의 상태로 출력이 된다면 정상적으로 통신이 된다는 상태를 뜻합니다.
※ Trying 192.168.111.100...
- 계속 대기 중으로 방화벽의 포트가 오픈 안된 것을 유추해볼 수 있음.
※ Trying 192.168.111.100...
telnet: Unable to connect to remote host: Connection refused
- 바로 연결 거부가 발생하는 호출 메시지는 방화벽에서는 열었지만, 프로세스가 아직 떠 있지 않은 상태.
※ Trying 192.168.111.100...
Connected to 192.168.111.100
Escape character is '^]'.
- 방화벽 오픈이 정상적으로 되었고 프로세스가 올라가 있는 상태로 서비스가 가능한 상태를 말함.[root@localhost /]# netstat -ntlp | grep -i 23 tcp6 0 0 :::23 :::* LISTEN 1/systemd [root@localhost /]# systemctl status firewalld ● firewalld.service - firewalld - dynamic firewall daemon Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2022-04-25 22:10:05 KST; 30min ago Docs: man:firewalld(1) Main PID: 840 (firewalld) Tasks: 2 (limit: 11376) Memory: 24.3M CGroup: /system.slice/firewalld.service └─840 /usr/libexec/platform-python -s /usr/sbin/firewalld --nofork --nopid 4월 25 22:10:04 localhost.localdomain systemd[1]: Starting firewalld - dynamic firewall daemon... 4월 25 22:10:05 localhost.localdomain systemd[1]: Started firewalld - dynamic firewall daemon.
▶ telnet 서비스의 포트가 현재 LISTEN의 상태로 오픈되어 있는지 확인 후 방화벽의 데몬이 활성화되어 있는지 확인합니다.
[root@localhost /]# firewall-cmd --list-all public (active) target: default icmp-block-inversion: no interfaces: ens160 sources: services: cockpit dhcpv6-client ssh ports: protocols: masquerade: no forward-ports: source-ports: icmp-blocks: rich rules:
▶ firewall-cmd --list-all의 상태 체크를 통해서 현재 services와 ports에 telnet 서비스가 방화벽에 등록되어 있지 않은 것을 확인할 수 있습니다.
▶ 원격지에서 텔넷을 통해 접속 시도를 하기 위해 동일 대역의 192.168.111.132의 아이피를 가지고 있는 윈도우 서버 한대를 추가로 준비하도록 합니다.
▶ 설정 -> 프로그램 및 기능을 통해서 서비스 포트 설정을 해주도록 합니다.
▶ 텔넷 클라이언트의 항목을 체크해주도록 합니다.
▶ 원격지의 아이피 192.168.111.100을 통해서 ping 패킷 통신은 되지만 포트 23: 연결하지 못하는 호출 메시지를 통해서 원격지 방화벽 포트를 확인해주도록 합니다.
[root@localhost /]# firewall-config
▶ firewall-config 명령어를 통해서 GUI 환경서 포트를 열어주도록 합니다.
▶ public의 항목에서 telnet 서비스를 체크해주도록 합니다. GUI 환경이 아닌 CLI 기반에서도 해당 포트를 열어 줄 수 있습니다.
※ 방화벽 명령어 오픈
firewall-cmd --add-service=telnet
firewall-cmd --permanent --add-service=telnet
firewall-cmd --reload
systemctl restart firewalld▶ Firewalld 다시 불러오기를 클릭 후 방화벽 설정 창을 닫습니다. systemctl restart firewalld 수행과 동일
[root@localhost /]# firewall-cmd --list-all public (active) target: default icmp-block-inversion: no interfaces: ens160 sources: services: cockpit dhcpv6-client ssh telnet ports: protocols: masquerade: no forward-ports: source-ports: icmp-blocks: rich rules:
▶ services의 항목에 telnet 서비스가 추가가 된 것을 확인할 수 있습니다.
[root@localhost /]# systemctl enable telnet.socket Created symlink /etc/systemd/system/sockets.target.wants/telnet.socket → /usr/lib/systemd/system/telnet.socket.
▶ telnet 서비스 동작을 위한 소켓 활성화를 시켜주도록 합니다.
▶ 윈도우 서버 192.168.111.132 아이피에서 리눅스 서버 192.168.111.100으로 telnet 서비스를 통해서 원격지 서버 접속이 된 것을 확인할 수 있습니다. telnet 서비스의 경우 보안상으로 현재는 많이 사용하고 있지 않지만 알아 두면 좋을 것 같습니다.
2022.05.18 - [System of Infra/LINUX] - LINUX SSH 서버 구축 하는 방법 [원격지 서버 2편]
2022.05.19 - [System of Infra/LINUX] - LINUX XRDP 서버 구축 하는 방법 [원격지 서버 3편]
PS. 포스팅의 내용은 제 기준으로 작성한 것이기 때문에 참고해서 보시면 감사하겠습니다.
포스팅 과정의 오류 및 오타 그리고 궁금한 점에 대해서는 댓글 남겨주세요.
728x90반응형'System of Infra > Linux System' 카테고리의 다른 글
LINUX XRDP 서버 구축 하는 방법 [원격지 서버 3편] (0) 2022.05.19 LINUX SSH 서버 구축 하는 방법 [원격지 서버 2편] (2) 2022.05.18 LINUX RAID1 디스크에 OS 설치하는 방법 (2) 2022.04.26 LINUX LVM(Logical Volume Managemant) 구성하는 방법 (1) 2022.04.26 LINUX DISK RAID0 RAID1 RAID5 장애 긴급 복구 하는 방법 (4) 2022.04.07