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 scp 명령어를 이용한 파일 복사 및 전송 호스트웨이 2012.03.16 264432
385 ls 명령어의 파일 사이즈 쉽게 확인하기 호스트웨이 2012.10.23 176056
384 리눅스 서버 누가 언제 무슨 작업을 했는지 확인 방법 호스트웨이 2012.03.09 93317
383 sar 명령 옵션 호스트웨이 2012.06.15 92178
382 Linux Charset 확인 및 변경 file 호스트웨이 2012.03.30 84967
381 ulimit 설정 관련 호스트웨이 2015.07.29 77607
380 Swap 메모리 늘리기 file 호스트웨이 2012.03.30 67200
379 국가명 약어 (국가코드) 호스트웨이 2012.04.13 64960
378 head 와 tail 사용하기 sylee 2008.05.14 63472
377 비대해진 로그 파일 내용을 비우는 방법 - /dev/null 호스트웨이 2012.03.16 61402
376 서비스 이름으로 포트 번호 확인하기 호스트웨이 2012.04.13 57714
375 fdisk 명령어를 이용하여 수동으로 파티션 나누기 file 호스트웨이 2015.11.30 57674
374 강제 umount 방법 (umount : device is busy 발생시) 호스트웨이 2012.11.30 55424
373 top 명령어 및 옵션 설명 file 호스트웨이 2012.03.27 52528
» xinetd 소개 및 설정 호스트웨이 2012.06.29 51903
371 history 조회시 '날짜,시간' 표시하기 호스트웨이 2012.03.16 49290
370 시스템 시간 확인 및 동기화 하기 sylee 2008.05.15 46973
369 /bin/false, /sbin/nologin 의 차이점 호스트웨이 2012.08.10 45638
368 Kernel Parameters HOSTWAY 2008.06.04 45455
367 ssh-key를 생성하여 서버에 패스워드 없이 접속하는 방법 jook 2008.06.25 44751