attributs |
valeur et description |
access_times |
pour définir une plage horaire la syntaxe est la
suivante heure:minute-heure:minute, exemple pour une plage
horaire entre 7h-12h et 14h-19h
ex : access_times = 7:00-12:00 14:00-19:00 |
bind |
(ou interface) pour attacher une interface à un service,
pour limiter les requêtes à une interface réseau par exemple
|
cps |
Limite le nombre de connexions entrantes. Le premier
argument est ce nombre lui-même. Lorsque ce seuil est dépassé,
le service se désactive pour un délai, exprimé en secondes,
fourni par le second argument. |
env |
pour passer une variable d'environnement avant de
lancer le service |
flags |
IDONLY: n'accepte de connexions
que des clients qui disposent d'un serveur d'identification;
NORETRY : évite que le processus
soit à nouveau "forké" en cas d'échec;
NAMEINARGS: le premier argument
de l'attribut server_args est utilisé en tant que argv[0]
pour le server. Ceci permet d'utiliser tcpd en le mettant
dans l'attribut server, puis d'écrire le nom du serveur et
ses arguments comme server_args, exactement comme avec inetd.
REUSE : Set the SO_REUSEADDR flag on the service socket. Permet d'écrire les options d'une socket. |
id |
pour identifier un service, si on utilise pas ce
paramètre, dans le fichier de log on aura le nom du service,
avec id vous pouvez redéfinir le nom du service qui sera archivé
dans le fichier de log (ftp-public au lieu simplement de ftp
par exemple) |
includedir /etc/xinetd.d |
indique que les autres définitions de service se
trouvent sous le répertoire /etc/xinetd.d |
instances |
Fixe le nombre maximum de serveurs d'un même type
pouvant fonctionner en même temps, ce qui permet d'éviter
le DoS (Deny of Service) |
log_on_failure |
Spécifie les informations à archiver en cas d'erreur
de lancement service (erreur d'authentification, manque de
ressource), vous avez le choix des paramètres suivant :
HOST adresse IP du client
USERID identité de l'utilisateur
RECORD pour enregistrer toutes
les info disponibles sur le client
ATTEMPT
nregistre le fait qu'une tentative d'accès a eu lieu. Cette
option est automatique dès qu'une autre valeur est stipulée
ex : log_on_failure = HOST RECORD |
log_on_success |
Spécifie les informations à archiver en cas de lancement
réussi d'un service, vous avez le choix des paramètres suivant
:
PID
le PID du serveur (s'il s'agit d'un service interne à xinetd,
le PID vaut alors 0)
HOST adresse IP du client
USERID identité de l'utilisateur
EXIT le status de sortie
du processus
DURATION le temps de la connexion
ex : log_on_success = PID HOST USERID EXIT DURATION
Va
donner les lignes suivantes pour un telnet
00/12/15@20:15:46: START: telnet pid=1889 from=192.168.13.10
00/12/15@20:18:39:
EXIT: telnet status=0 pid=1889 duration=173(sec) |
log_type |
xinetd utilise syslogd et le sélecteur daemon.info
par défaut
Archivage des logs en utilisant le daemon syslogd
ou alors archivage dans un fichier.
SYSLOG sélecteur [level]:
permet de choisir parmi les entrées daemon, auth, user ou
local0-7 de syslogd ;
FILE [taille_max [taille_max_absolue]]:
le fichier spécifié reçoit les informations. Les deux options
fixent des limites de taille du fichier. La première, lorsqu'elle
est atteinte, provoque l'émission d'un message vers syslogd,
la seconde arrête l'enregistrement des logs pour le service
concerné (s'il s'agit d'un fichier commun - ou fixé par défaut
-plusieurs services peuvent alors être affectés).
ex : log_type = FILE /var/log/xinetd.log 20M 25M
Quand
vous atteindrez un fichier de log de 20M, un message d'alerte
va s'inscrire dans le fichier /var/log/messages mais le log
continue, quand on va atteindre 25M, xinetd n'écrit plus dans
le fichier de log. |
max_load |
Ce réel indique la charge maximale que peut occuper
un serveur (par exemple, 2 ou 2.5). Au-delà de cette limite,
les requêtes sur ce serveur sont rejetées. |
nice |
pour définir la priorité d’un service (-20 plus prioritaire
19 plus prioritaire), exactement comme avec la commande nice
|
no_access |
pour définir la liste des clients non autorisés à
se connecter |
only_from |
pour définir les clients autorisés à se connecter.
Si cet attribut n'a pas de valeur, l'accès à ce service est
interdit.
Exemple avec le sous réseau 192.168.13.X
ex
: only_from = 192.168.13.0/32 |
per_source |
Permet de restreindre le nombre de connexion à un
service venant d'une même machine. (soit un entier, soit UNLIMITED) |
port |
numéro du port associé au service défini dans /etc/services
|
protocol |
nom du protocole défini dans /etc/protocols |
redirect |
permet de rediriger une requête sur le port particulier
d'une de vos machines de votre réseau local. |
server |
Le chemin du service |
server_args |
Arguments à passer au service. |
socket_type |
Pour
connaître le type de socket voir le fichier /etc/services
(stream pour TCP, dgram pour UDP, raw (accès
direct à IP) ou seqpacket ()). |
type |
xinetd
gère 3 types de services:
1.RPC:
pour ceux décrit dans /etc/rpc ... mais ne fonctionne pas
très bien;
2.INTERNAL:
pour les services pris directement en charge par xinetd (echo,
time, daytime, chargen et discard);
3.UNLISTED
: pour les services non décrits soit dans /etc/rpc, soit dans
/etc/services;
Il
est possible de combiner plusieurs de ces valeurs avec les
services internes servers, services et xadmin. |
wait |
si
wait=yes une seule instance du service peut être lancé à la
fois, si wait=no, on lance un serveur à chaque nouvelle connexion
(dans la limite du nombre d'instance max); Attention, cette
limite est infinie par défaut; |