8.9 정리-Telnet Server

HakJin Kim·2023년 8월 9일
0

6. TFTP

1. tftp 설치

# yum -y install tftp-server.x86_64
# yum -y install tftp
# yum -y install xinetd

2. tftp 설정

# cd /etc/xinetd.d
# vi tftp
  • wait과 disable 둘 다 no로 설정
    *** 이슈 : disable만 no로 설정, wait는 yes로 해야 정상적인 송수신이 가능하다.

3. tftp 설정파일 복사

cd /usr/lib/systemd/system
cp tftp.service /etc/systemd/system
cp tftp.socket /etc/systemd/system

4. tftp의 파일 저장 디렉터리

# cd /var/lib/tftpboot

- /etc의 passwd 파일을 tftpboot로 복사
  • 서버-서버 접근이 가능한 모습
  • 서버-클라이언트 접근이 가능한 모습

7. FTP 서버

  1. FTP 20번(data) 21번(control) = 인증 가능 (ID/Password)
  2. anonymous FTP = 인증 가능 (ID:anonymous, Password:E-mail 주소)
  3. TFTP 69번 = 무인증

0. ftp 설정

/etc/xinetd.d/ftp

1. ftp 설치

<서버 ftp, 데몬>
# yum -y install vsftpd

<클라이언트 ftp>
# yum -y install ftp

2. 환경설정 파일

/etc/vsftpd/vsftpd.conf
  • 124번째 줄 listen_ipv6=를 YES에서 NO로 변경

3. ftp 접속

# ftp 192.168.0.174
  • 클라이언트에서 서버로 접속한 모습

4. 파일의 송신, 수신

#put	<= 송신하려는 파일은 접속 시점 현재 디렉터리에 있어야함
#get	<= 수신하려는 파일은 /home/접속계정 디렉터리 안에 있어야함

[접속중 디렉터리 확인]
ftp> pwd
  • 클라이언트에서 서버로 passwd 파일을 전송한 모습

  • 클라이언트에서 서버에 있는 test1 파일을 수신한 모습

  • pwd 명령어를 통해 내가 전송할 파일이 저장되는 디렉터리를 확인할 수 있다.

  • cd 명령어를 통해 저장 디렉터리를 변경해줄 수 있다.

5. 알드라이브를 통한 CentOs-window10 접속

  • 알드라이브 프로그램을 통해 window10에서도 ftp 접속이 가능하다.

여기까지 Telnet, TFTP, FTP 접속되는 모습
1. = Telnet 접속
2. = TFTP 접속
3. = FTP 접속
4. = SSH 접속


xinetd

<프로그램>
xinetd

<환경설정파일>
# vi /etc/xinetd.conf
  • 환경설정파일의 26~28번 줄
    1) cps : 초당 최대 연결 갯수 50, 초과시 10초 일시중지
    2) instances : 동시 접속자 50명
    3) per_source : 하나의 호스트 당 접근 가능 갯수 10개

no_access를 통한 ip 통제

  1. 환경설정파일에 윈도우 10의 주소를 설정하면
    xinetd으로 실행되는 Telnet, TFTP, FTP가 차단이 된다.
  • 반면에 StandAlone 방식으로 작동되는 SSH는 정상적으로 접속 가능하다.

  1. /25와 같이 서브넷팅을 하여 통제할 수 있다.
  • 192.168.0.21 => 해당 주소는 접속이 가능하다.
  • 192.168.0.173 => 해당 주소는 접속이 불가능하다.

  1. 한 주소를 차단과 허용을 한다면 차단이 된다.
  • 하지만 C class 허용에서 한 주소만 차단하면? => 차단

  • C class 차단에서 한 주소만 허용하면? => 허용

  • 결국 한 주소를 허용하면 그 외 주소는 차단이 되므로
    ACL와 비슷하게 정책 설정을 해야한다.


8. 방화벽 Firewall

1. 방화벽 설정 진입

# firewall-config
  • # firewall-config 명령어로 방화벽 설정에 진입 후
    해당 기능에 대해 설정해줄 수 있는 모습

2. 방화벽 적용 기능 현황

# firewall-cmd --list-all	<= 전체확인
# firewall-cmd --list-ports	<= 포트확인
  • # firewall-cmd --list-all 명령어를 통해 방화벽에 적용시킨 기능을 확인할 수 있다.

3. 방화벽 기능 추가 및 리로드

# firewall-cmd --permanent --add-port=21/tcp	<= 포트에 추가
# firewall-cmd --permanent --add-service=tftp	<= 서비스에 추가

# firewall-cmd --reload
  • --add 명령어를 통해 포트와 서비스에 프로토콜 추가

4. 방화벽 기능 삭제

# firewall-cmd --permanent --remove-port=21/tcp
  • --remove 명령어를 통해 포트에 프로토콜 삭제

Firewall과 xinetd의 차단

  • 프로토콜로 접근시 가장 먼저 필터링하는 것이 firewall이며 그 뒤로 xinetd이 필터링한다.
  • 해당 클라이언트에선 정상적으로 서버 telnet 접근이 가능하다.
  • 실습 전 차단 현황은 이렇고 순차적으로 차단을 해보자.

1. 방화벽의 telnet 차단

  • 방화벽의 허용기능에서 telnet 삭제시
    클라이언트에서 telnet 접속이 불가능하다.

2. xinetd의 ip 차단

  • 방화벽에는 기능을 허용시켜주었지만 xinetd에서 ip주소를 차단시
    클라이언트에서 telnet 접속이 불가능하다.

5. 방화벽에서의 ping 차단

5-1. 외부에서의 ping 차단

# firewall-cmd --permanent --add-icmp-block=echo-reply

5-2. 내부에서의 ping 차단

# cd /proc/sys/net/ipv4
# echo 1 > icmp_echo_ignore_all

sysctl -w net.ipv4.icmp_echo_ignore_all=1

9. telnet의 시간제한

# vi /etc/xinetd.d/telnet
<telnet 파일>
access_times = 17:00-17:02
  • telnet 설정파일에 access_times = 17:00-17:02(- 앞뒤로 붙이기) 명령어 추가
    (해당 시간에만 접속이 가능하다)

  • 접근 시간을 여러개로 설정해 줄 수 있다.

9-1. 세션 타임아웃

vi /etc/profile

<profile 파일  >
...
unset i
unset -f pasthmunge
...

(추가)
export TMOUT=20 (초단위)

- /etc/bashrc에 적용해도 무관
profile
처음 시작하는 사람

0개의 댓글

관련 채용 정보