본문 바로가기
리눅스

[리눅스] 텔넷(telnet), /etc/xinetd

by 깅민 2022. 11. 4.

xinetd

다른 데몬의 실행을 관장하는 슈퍼데몬

과거 슈퍼데몬으로 사용되었던 inetd를 대체하기 위해 등장 (리눅스 커널 2.4버전부터)

 

접근 제어 방법

-inetd : TCP Wrapper 사용

-xinetd : 환경 설정 파일을 이용해서 자체적으로 접근 제어 가능

 

추가 기능

-ip 주소 당 접속 수 제한

-시간대별 서비스 제한

-DoS 공격에 대비

 

구성

-/etc/xinetd.conf

xinetd 데몬의 전체적인 환경 설정을 담당하는 파일

xinetd 데몬에서 관리하는 전체 서비스에 영향을 줌

 

-/etc/xinetd.d

xinetd 데몬에 의해 관리 및 제어되는 서비스 파일들이 위치하는 디렉토리

이 디렉토리 안에 telnet, rlogin, rsh, rsync 등의 관련 서비스 파일을 생성하면 된다.

 

/etc/xinetd.conf

 

  • log_type
    • SYSLOG와 FILE 두 가지 설정이 가능하다.
    • 로그 기록을 syslog에 위임 할지, 별도 파일로 지정할지 선택한다.
    • ex) log_type = FILE /var/logs/xinet.log
  • log_on_failure
    • 접속 실패 시 기록될 속성값을 지정한다,
    • 속성값 : HOST, USERID, ATTEMPT
    • ex) log_on_failure = HOST
  • log_on_success
    • 접속 성공 시 기록될 속성값을 지정한다.
    • 속성값 : PID, HOST, USERID, EXIT, DURATION, TRAFFIC
  • cps
    • 초당 요청받는 수를 제한한다.
    • cps [초당 요청수] [제한시간(초)]
    • ex) cps 50 10 (초당 요청수가 50 이상이면 10초간 접속을 제한한다.)
  • instances
    • 동시에 서비스할 수 있는 최대 개수를 지정한다.
    • ex)instances = 50
  • per_source
    • 같은 IP주소로 접속할 수 있는 서비스 수를 지정한다.
    • ex) per_source = 5
  • only_from
    • 서비스를 이용할 수 있는 원격 호스트를 설정한다.
    • ex) 192.168.10.10 192.168.10.11 192.168.20.*
  • enabled
    • 사용 가능한 항목을 설정한다. disabled항목에서 yes라고 설정 되어 있어도 허용한다.
    • ex) enabled telnet ftp
  • no_access
    • 서비스를 이용할 수 없는 원격 호스트의 주소를 지정한다.
    • only_from 과 주소 지정법은 동일하고 중복 설정된 경우에는 차단된다.
  • access_times
    • 지정된 시간에만 서비스를 이용할 수 있게 한다.
  • nice
    • 서버의 우선순위를 지정한다. -20 ~ 19 사이의 정수를 입력한다.
  • wait
    • 서비스가 단일 스레드(thread)인지 다중 스레드인지 지정한다.
    • yes 인 경우에는 오직 하나의 서비스만 작동하게 되며, no 인 경우에는 다중 스레드로 동작한다.

 

hosts.allow hosts.deny

특정한 클라이언트에게만 서비스를 허용 또는 차단

 

hosts.allow 서비스 허용 설정 파일

hosts.deny 서비스 차단 설정 파일


 

1602

다음은 xinetd 관련 로그 기록을 별도의 파일에 저장하도록 설정하는 과정이다. 아래의 조건을참조하여 ( 괄호 ) 안에 알맞은 내용을 적으시오.

vi ( ① )
( ② ) = ( ③ ) ( ④ )

조 건
- ① : 관련 파일명을 절대 경로로 적는다.
- ② ~ ④ : 관련 로그는 /var/log/xinetd.log에 기록하도록 설정한다.

1. /etc/xinetd.conf

2. log_type

3. FILE

4. /var/log/xinetd.log

 

 

1702

다음은 telnet 서버의 설정의 일부이다. 아래의 조건에 맞게 ( 괄호 ) 안에 알맞은 내용을적으시오.

service telnet {
disable = no
flags = REUSE
socket_type = stream
( ① ) = no
( ② ) = 5
( ③ ) = 08:00-20:00
( ④ ) = 7
( ⑤ ) = 10.20.16.0/24
log_type = ( ⑥ ) server = /usr/sbin/in.telnetd

조 건
- 다중 스레드로 동작하여 새로운 서비스 요청을 받아들일 수 있다
- 서버의 우선순위를 5로 지정한다.
- 텔넷 서버의 접속은 오전 8시부터 오후 8시까지만 가능하게 설정한다.
- 동일한 IP 주소에서의 접속은 7개로 제한한다.
- IP 주소가 10.20.16.0/24 인 네트워크 대역을 사용하는 호스트는 접속을 거부한다.
- 로그는 /var/log/telnetd.log 파일에 별도로 저장한다.

정답

wait

nice

access_times

per_source

no_access

FILE /var/log/telnetd.log

 

 

2101

1. systemctl start telnet.socket

2. /etc/hosts.deny

3. ALL: ALL

4. /etc/hosts.allow

5. in.telnetd: 192.168.12.

 

 

1902

only_from = 192.168.12.22 192.168.5.0 (192.168.5.0/24)

no_access = 192.168.5.44
instances = 30
per_source = 3
access_times = 09:00-18:00 20:00-23:30


 

 

참고

https://blog.naver.com/ncloud24/221171366880

 

https://starrykss.tistory.com/1870

https://btyy.tistory.com/entry/LINUX-35%EC%9D%BC%EC%B0%A8-Xinetd-ftp-%EC%84%A4%EC%A0%95-Telnet-%EC%84%A4%EC%B9%98-xinetd-%EC%84%A4%EC%A0%95

https://itwiki.kr/w/%EB%A6%AC%EB%88%85%EC%8A%A4_xinetd

 

 

댓글