Xinetd
인터넷 기반 연결(telnet, ftp 등)을 관리하는 서비스(데몬)이다.
/etc/xinetd.conf
글로벌 설정 파일 -> 슈퍼 데몬이 관리하는 모든 서비스에 해당 설정이 적용된다.
service : 서비스 이름
disable : 해당 서비스의 실행 여부를 결정한다. yes : 실행 안 함, no : 실행
socket_type : 서비스 소켓 유형을 설정한다. 일반적으로 tcp경우 stream, udp의 경우 dgram을 설정한다.
tcp : 반드시 목적지로 내용을 전달 함. 그리고 전달 후 제대로 전달했는지 확인. -> 신뢰성이 높다. 그러나 비용(시간)이 많이 든다.
udp : 그냥 목적지로 내용을 전달 한다. 내용이 전달됐을 수도 있고 안됬을 수도 있다. -> tcp에 비해 신뢰성이 낮다. 그러나 비용은 덜 든다.
wait : 서비스 요청 처리 중 다음 요청이 들어오면 이를 즉시 처리할 것인지(no) 이전 요청이 완료될 때까지 대기할 것인지(yes) 설정한다.
user : 어떤 사용자로 서비스를 실행할지 설정한다.
server : 서비스 실행 파일 경로를 설정한다. 반드시 절대 경로로 설정한다.
server_args : 실행 프로그램의 인자로 설정파일 경로를 작성한다.
cps = [초당 요청수] [제한시간]: 연결요청을 제한하기 위한 설정으로 첫 번째 인자는 초당 연결 개수를 의미하고 두 번째 인자는 초당 연결 개수를 초과하면 일시적으로 서비스가 중지되는데 서비스 일시 중지 후 재시작할 때까지 대기하는 시간을 의미한다.
instances = 최대 서버수: 동시에 서비스할 수 있는 서버의 최대 개수를 지정한다.
per_source = 최대 접속수: 출발지 IP를 기준으로 최대 서비스 연결 개수를 지정한다.
only_from : 특정 주소 또는 주소 대역만 접근을 허용한다.
no_access : 특정 주소 또는 주소 대역의 접근을 차단한다.
access_times : 지정한 시간 범위 내에서만 접근을 허용한다.
log_on_failure = HOST | USERID | ATTEMPT: 서버 접속에 실패했을 경우 로그파일에 기록할 내용을 설정한다.
log_on_success = PID | HOST | USERID | EXIT | DURATION | TRAFFIC : 서버 접속에 성공했을 경우 로그파일에 기록할 내용을 설정한다.
log_type = SYSLOG | FILE : 로그 파일을 rsyslog 등 시스템 로그에서 관리하도록 위임하거나, 별도의 파일로 선택할 수 있다.
flags : 소켓 작동 관련 플래그
REUSE : 포트가 사용중의 경우에서도, 재이용할 수 있도록 한다.
/etc/xinetd.d
개별 서비스 설정 파일