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는 가장 느린 우선권을 갖게 됩니다.

 

번호 제목 글쓴이 날짜 조회 수
246 CPU core 별 사용량 확인 하기 호스트웨이 2012.06.08 25265
245 안전한 패스워드 생성하기 호스트웨이 2012.06.08 16385
244 sysstat 설치편 호스트웨이 2012.06.08 20400
243 sar 명령 옵션 호스트웨이 2012.06.15 92154
242 리눅스 가상콘솔개수 조절 file 호스트웨이 2012.06.15 15248
241 리눅스에서 fuser 명령어 사용하기 호스트웨이 2012.06.15 33495
240 Ext2Fsd 를 이용하여 윈도우즈 PC에서 리눅스 파티션 읽기 file 호스트웨이 2012.06.15 20342
239 L4 로드밸런서 알고리즘 호스트웨이 2012.06.22 19387
238 EXT3-fs warning: maximal mount count reached, running e2fsck is recommended 해결 호스트웨이 2012.06.22 19126
237 리눅스 ls 디렉토리 혹은 파일 별 출력하기 file 호스트웨이 2012.06.22 26079
236 리눅스에서 pkill, pgrep 명령어 사용하기 호스트웨이 2012.06.22 28501
235 특정 IP 엑세스 못하게 하는방법 호스트웨이 2012.06.22 14445
234 find 명령 사용 예제들 호스트웨이 2012.06.29 14964
233 시스템내에서 하드 용량이 다르게 보이는 이유 호스트웨이 2012.06.29 16425
» xinetd 소개 및 설정 호스트웨이 2012.06.29 51903
231 리눅스 압축 명령어 tar 호스트웨이 2012.06.29 17720
230 리눅스에서 shutdown 명령어 사용하기 호스트웨이 2012.06.29 28858
229 리눅스 로그인 메시지 출력 file 호스트웨이 2012.07.06 17107
228 리눅스 로그파일의 종류 호스트웨이 2012.07.06 18242
227 Linux 계정 정보 관리 파일 호스트웨이 2012.07.06 17984