Linux ETC

xinetd 소개 및 설정

2012.06.29 15:39

호스트웨이 조회 수:51903

 xinetd 소개 및 설정


1. xinetd의 역할
Xinetd의 역할은 inetd의 역할과 유사합니다.
네트워크서비스에 대한 접근제어, login에 대한 접근제어 등을 합니다.
2. xinet의 구성
1) 환경설정파일 : /etc/xinetd.conf
2) xinetd에서 제공하는 서비스를 모아두는 디렉토리 : /etc/xinetd.d
xinted에서 제공하는 서비스는 모두 이 디렉토리 안에 파일로 나열되어 있으며,
해당서비스의 설정은 해당파일에서 설정해야 합니다.

3. /etc/xinetd.conf
기본설정
===================================================================
#
# Simple configuration file for xinetd
#
# Some defaults, and include /etc/xinetd.d/

Defaults
{
 Instances  = 60
 log_type   = SYSLOG authpriv
 log_on_success  = HOST PID
 log_on_faulure  = HOST RECORD
 cps   = 25 30
}
Includedir /etc/xinetd.d
===================================================================

옵션

1) Instances : 동시에 서비스 할 수 있는 섭의 최대 개수를 지정합니다.
만일 접속에 제한을 두지 않으려면 UNLIMITED로 지정하면 됩니다..

2) Log_type : 어떠한 형태로 로그 기록을 저장할 것인가를 지정하는
속성으로 SYSLOG와 FILE 두형태로 사용가능합니다.
-SYSLOG : 지정된 facility에서 syslog로 로그기록이 전달됩니다.
-FILE : 지정된 크기를 가진 파일명에 로그 기록이 저장됩니다.

3) Log_on_success : 서버가 시작될 때와 끝날 때 기록될 것을 지정합니다.
-PID : xinetd 프로세스 ID
-HOST : 원격 호스트의 IP
-USERID : 원격 사용자의 ID
-EXIT : 서비스가 빠져 나갈 때의 상태
-DURATION : 서버 세션 지속상태

4) log_on_failure : 서버가 리소스 부족으로 시작될 수 없거나 설정 파일내의
규칙에 의한 접근이 거부되었을 때 기록될 값들을 지정하는 속성입니다.
-HOST : 원격의 호스트의 IP주소
-USERID : 원격 사용자 ID
-ATTEMPT : 실패한 시도가 있을 경우
-RECORD : 클라이언트에 대한 가능한 정보

5) cps : 초당 접속가능 수에 대한 제한 설정입니다.
cps = [초당 접속가능 수] [초당 접속가능 수 이상 발생시 제한시간]
ex) cps =  25 30 초당 접속수가 25개 이상될 경우 30초동안 접속을 중단합니다.

6) only_from : 특정서비스를 이용 가능한 원격호스트를 설정합니다.
이속성에 값이 주어지지 않으면 모든 접속이 허용되지 않습니다.
속성값은 IP 주소 및 IP Block 으로 지정합니다.

7) per_source : 똑 같은 IP주소로 로컬서비스에 접속할 수 있는 최대 접속 수를 지정해줍니다.
무제한 접근을 허용하려면 UNLIMITED로 설정합니다.

8) Enable : enable 속성은 실행 가능한 서비스의 목록을 표시할 수 있게 합니다.

9) no_access : 서버의 서비스를 이용하지 못하도록 서버에 접근하지 못하게
할 원격호스트의 주소를 지정해 줍니다.

10) disable : 서비스가 실행되지 못하도록 지정합니다. Enable 속성과 같이
존재할 경우 enable 속성이 무시되어 실행되지 않습니다.

11) includedir /etc/xinetd.d : 각각 해당 서비스에 대한 지정을 /etc/xinetd.conf에서
하지 않고 해당 서비스마다 하나의 파일로 지정할 때 습니다. 이 속성을 사용할 경우
xinetd.conf에서는 해당 service를 설정할 수 없습니다.

4. service section에서 사용되는 주요 속성과 속성값

1) service telnet : service 속성으로 설정하고자 하는 서비스의 이름을 지정해줍니다..
여기서 지정해 주는 서비스들은 /etc/services파일 리스트에 있어야합니다.

2) disable=yes : 해당 서비스가 실행되지 못하도록 설정합니다.
해당 서비스를 사용하지 않거나 httpd와 같이 standalone상태로 데몬이 작동하는 경우에 속성값을 yes로 지정하고,
telnet이나 POP3처럼 항상 서비스가 작동하도록 하기위해서는 속성값을 no로 지정해야 합니다.

3) flags=REUSE
- REUSE : 서비스 소켓에 SO_REUSEADDR플래그를 설정하도록 합니다.
-INTERCEPT : 패킷이나 허용된 접속을 가로채어 허가된 위치에서 접속하는지 인증하고자 할 때 사용합니다.
-NORETRY : 프로세스가 새롭게 생기지 못할 경우 재시도하지 못하도록 합니다.
-IDONLY : 원격호스트가 원격사용자를 인증할 때만 접속을 허용합니다. 이 플래그는 접속기반 서비스에 적용되며,
USER log옵션을 사용하지 않을 경우 효과를 내지 못한다.
-NAMEINARGS : 서버가 작동될 때 서버내에 지정한 것과 같이 server_args
내의 첫번째 인수가 arg[0]이 되도록 하는 플래그이다. 이 플래그는 서버내의 tcpd를 넣어 tcpd를
사용할 수 있게 하고, inetd처럼 server0args내에 서버이름을 넣을 수 있게 합니다.
-NODELAY : TCP서비스에 이 플래그를 설정하면 TCP_NODELAY플래그가 소켓에 설정됩니다.

플래그는 TCP서비스에 한해서 적용됩니다.
-DISABLE : 서비스가 실행되지 않게 합니다.
-KEEPALIVE : TCP서비스에 이 플래그가 설정되면 SO_KEEPALIVE소켓 플래그가 소켓에 설정됩니다.

4) protocol = tcp
서비스가 사용할 프로토콜을 설정합니다. 이프로토콜은 /etc/protocols내에 있어야 합니다.
이속성을 지정하지 않으면 서비스가 사용하는 기본 프로토콜로 지정됩니다.

5) socket_type = stream
-stream : stream기반의 서비스
-dgram : dgram기반의 서비스
-raw : IP에 직접 접근을 요하는 서비스
-seqpacket : 신뢰성있는 연속적인 데이터그램 전송을 요구하는 서비스

6)wait = no : 서비스가 단일 스레드 인지 다중스레드 인지를 결정하는 플래그로 yes인 경우는
단일 스레드로 실행되어 오직 하나의 서비스만 작동하게 하며, no인 경우는 다중 스레드로
서버가 새로운 서비스 요청을 받아 들이게 됩니다.

7)user = root : 서버 프로세스를 실행할 수 있는 사용자의 ID를 나타내는 것으로 슈퍼유저일 경우에만 사용가능합니다.

8)server = /usr/sbin/in.telnetd : 해당 서비스를 실행할 데몬프로그램을 지정합니다.

9)access time = 01:00-07:00 : 지정된 시간에서만 서비스를 이용할 수 있게 해준다.

10)redirect = 192.168.1.10 23 : TCP서비스를 다른 호스트에게 이양하고자 할 때 사용합니다.
즉 192.168.1.1의 FTP 서비스를 192.168.1.10호스트에게 FTP서비스를 할 수 있도록 해주는 설정입니다.
설정방법은 “IP_Address port”입니다.

11) port = 8080 : 서비스 포트를 명시해줍니다. 이포트는 /etc/services파일 목록내의 서비스포트와 일치해야 합니다.

12) nice = 10 : 서버의 예약우선권을 나타내는 속성으로 -20~19까지의 범위를 갖는다.
-20은 가장 빠른 우선권을 나타내며, 19는 가장 느린 우선권을 갖게 됩니다.

 

번호 제목 글쓴이 날짜 조회 수
386 cdp 백업 프로세스 관련 호스트웨이 2015.09.07 1005
385 Linux vmstat 명령어 호스트웨이 2015.09.08 1093
384 현재 접속 사용자(머신/디바이스)수 알아내기 호스트웨이 2012.11.16 1129
383 잘못푼 압축파일(tar.gz) 지우는 방법 호스트웨이 2012.12.07 1272
382 sftp 서비스 막기 호스트웨이 2012.12.27 1317
381 우분투 서버에 JDK7 설치하기 호스트웨이 2015.09.13 1359
380 Linux 외장 저장장치 mount file 호스트웨이 2015.09.10 1397
379 2015년 7월1일 윤초 발생 관련 점검 방안 file 호스트웨이 2015.06.30 1558
378 리눅스 whereis 명령어 file 호스트웨이 2012.09.28 1634
377 Log file 주기적으로 정리하기 호스트웨이 2015.09.08 1644
376 특정 파일이 소속된 rpm 패키지 찾기 호스트웨이 2012.12.14 1777
375 arch 명령어를 통해 컴퓨터 종류 알기 file 호스트웨이 2012.11.16 1796
374 리눅스 free 명령어 호스트웨이 2012.12.26 1817
373 locate 명령어를 이용해 빠르게 지정한 파일 찾기 file 호스트웨이 2012.12.12 1859
372 queryperf 설치 및 사용 방법 (DNS 스트레스 테스트) 호스트웨이 2012.11.29 1864
371 kbd_mode 명령어를 통해 인식중인 키보드모드 출력 및 변경하기 file 호스트웨이 2012.11.06 1896
370 /proc 디렉터리내 파일 정보 알아보기 호스트웨이 2012.11.21 1911
369 top 사용 추가 tip 호스트웨이 2015.09.15 2015
368 limits.conf 설명 file 호스트웨이 2012.11.09 2127
367 free -m 에서 free (남는 메모리 양) 최소량 제한하기 호스트웨이 2012.12.21 2144