Il s'agit de la commande couriertcpd qui peut être exécutée dans le fournisseur d'hébergement gratuit OnWorks en utilisant l'un de nos multiples postes de travail en ligne gratuits tels que Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS
PROGRAMME:
Nom
couriertcpd - le démon du serveur TCP du serveur de messagerie Courier
SYNOPSIS
coursiertcpd [-pid=fichier pid] [option...] {liste} {Programme} {arg...}
coursiertcpd {-pid=fichier pid} {-arrêter}
coursiertcpd {-pid=fichier pid} {-redémarrage}
DESCRIPTION
coursiertcpd accepte les connexions réseau entrantes et exécute Programme après avoir établi chaque
connexion réseau. Les Programmel'entrée et la sortie standard sont définies sur le réseau
connexion.
liste est une liste de numéros de port TCP séparés par des virgules où les connexions entrantes sont créées.
Programme est le programme à exécuter. Si Programme nécessite des arguments, ils sont spécifiés sur
la ligne de commande, après Programme elle-même.
Avant de courir Programme, coursiertcpd initialise plusieurs variables d'environnement qui
décrire la connexion réseau. L'environnement hérité par Programme sera l'
environnement hérité de coursiertcpd, plus toutes les variables d'environnement supplémentaires
initialisé par coursiertcpd. Il est également possible de refuser certaines connexions réseau.
Plusieurs options sont disponibles pour spécifier quelles connexions réseau seront rejetées.
OPTIONS
-accès=nom de fichier
Spécifie un fichier d'accès facultatif. Le fichier d'accès répertorie les adresses IP à partir desquelles
les connexions doivent être acceptées ou rejetées. Le fichier d'accès est également utilisé pour initialiser
variables d'environnement basées sur l'adresse IP de la connexion. nom de fichier est un GDBM
ou un fichier de base de données DB qui est généralement créé par un script à partir d'un ou plusieurs fichiers texte.
Voir "ACCÈS AU FICHIER" ci-dessous pour plus d'informations.
-accèslocal
Recherchez l'adresse IP et le port de l'interface locale dans le fichier d'accès, en plus de rechercher
l'IP distante. Cela donne un mécanisme pour définir les variables d'environnement en fonction de
à quelle adresse IP et/ou port le client s'est connecté. Dans le fichier d'accès, "1.2.3.4.25"
fait correspondre les connexions à l'adresse IP 1.2.3.4 port 25 ; "1.2.3.4" correspond aux connexions à IP
adresse 1.2.3.4 sur n'importe quel port ; et "*.25" correspond aux connexions au port 25 sur n'importe quelle IP
adresse.
-adresse=nnnn
Accepter les connexions réseau uniquement à l'adresse IP nnnn. Si non spécifié, coursiertcpd
accepte les connexions à toute adresse IP sur laquelle le système accepte les connexions. Si la
système a plusieurs interfaces réseau avec des adresses IP distinctes, cette option rend
coursiertcpd accepter les connexions uniquement à une adresse IP spécifique. La plupart des systèmes ont
plusieurs interfaces réseau : l'interface de bouclage, plus l'interface de réseau local,
de sorte que -address=127.0.0.1 accepte uniquement les connexions du système local. Lorsque
plusieurs numéros de port sont spécifiés, il est également possible de lier sélectivement différents
adresses réseau à chaque numéro de port lorsque liste spécifie plusieurs numéros de port.
Voir "Multiple port liste[1]" ci-dessous pour plus d'informations.
-bloc=Zone[,var[/nnnn][,msg]]
Initialiser la variable d'environnement var si les deux conditions suivantes sont vraies :
var n'est pas déjà initialisé ; l'adresse IP de connexion peut être trouvée dans un DNS
liste. Voir LISTES D'ACCÈS DNS ci-dessous. Plusieurs -bloquer des options peuvent être utilisées.
-denymsg=texte
Spécifie un message facultatif à renvoyer au client si le -accès option
les rejette. La valeur par défaut est d'abandonner la connexion TCP sans renvoyer aucun
des messages.
-goutte=var
Si la variable d'environnement var est défini sur une valeur non vide, se termine immédiatement. Faire
pas exécuter le Programme pour gérer la connexion. Voir les LISTES D'ACCÈS DNS, ci-dessous, pour plus d'informations
</br>L’Information. var par défaut à « BLOCK », si non spécifié.
-groupe=groupe
Ensemble coursiertcpdest son identifiant de groupe. groupe peut être spécifié numériquement ou par son nom.
Seul le superutilisateur peut utiliser -groupe.
-écouter=n
Longueur de la file d'attente contenant les connexions en attente. n est un nombre. Si non spécifié,
la valeur par défaut du système est utilisée.
-maxperc=n
Nombre maximum de connexions acceptées à partir du même bloc de réseau C. En utilisant ce
est recommandée, car les emplacements de connexion sont limités. Sans cette option, le
même bloc de réseau C peut potentiellement utiliser tous les emplacements de connexion disponibles.
-maxpérip=n
Nombre maximum de connexions acceptées à partir de la même adresse IP. Utilisez à la fois le -maxperc
et -maxpérip options pour affiner les limites de connexion. Par exemple, lorsque coursiertcpd is
écoute sur le port SMTP, il est logique de fixer une limite supérieure au nombre de
connexions du même bloc C. Les domaines qui envoient une grande quantité de courrier ont souvent
plusieurs serveurs envoyant du courrier sortant à partir du même bloc C, il est donc logique de définir
limites sur les blocs C individuels. D'autre part, si coursiertcpd écoute sur le
port POP3, il est plus logique de définir des limites sur les adresses IP individuelles. Si un bloc C
d'adresses est affecté à un pool de modems commutés, il est certainement possible d'avoir plusieurs
Les adresses IP dans le même bloc C ont des connexions au serveur POP3 en même temps
le temps.
-maxprocs=n
Nombre maximal d'emplacements de connexion ou nombre maximal de processus démarrés. Cette
spécifie effectivement le nombre maximum de connexions acceptées en même temps.
Une fois le nombre maximum de connexions ouvert, coursiertcpd attend un
connexion existante à fermer, avant d'accepter d'autres connexions.
-avertir=n
Enregistrez un LOG_AVERTISSEMENT message à syslog lorsque le nombre de processus actifs dépasse nL’
la valeur par défaut est 90 % de maxprocs. coursiertcpd enregistre un LOG_ALERTE message syslog lorsque le
le nombre de processus actifs atteint le maximum.
-nodnslookup
Ne recherchez pas le nom d'hôte associé à l'adresse IP de connexion et au
adresses, n'initialisez pas le TCPREMOTEHOST or TCPLOCALHÔTE variables d'environnement (voir
ci-dessous).
-noidentlookup
N'effectuez pas de ident recherche et n'initialisez pas le TCPREMOTEINFO sûr, heureux et sain
variable.
-pid=nom de fichier
Si donné, coursiertcpd se met en arrière-plan et enregistre son ID de processus dans ce
fichier, généralement quelque part dans /var/run.
Cette option doit également être présente lors de l'utilisation du -redémarrage et -arrêt options.
-redémarrage
Envoyer un SIGHUP à un coursiertcpd traiter. Spécifiez le même -pid argument en tant que
celui qui a servi à démarrer coursiertcpd. L'ID de processus est lu à partir du -pid fichier,
et du coursiertcpd reçoit un signal SIGHUP.
-stderr=prise
Ensemble Programmeerreur standard de la connexion réseau, tout comme son entrée standard
et sortie.
-stderr=fichier journal
Ensemble Programmeerreur standard dans le fichier spécifié, fichier journal. Le fichier est créé, si
nécessaire et s'ouvre en mode ajout.
-stderrlogger=programme de journalisation
Ensemble Programmeerreur standard sur un tube, qui est lu par programme de journalisation. Une seule instance
of enregistreur est démarré, qui reçoit l'erreur standard de chaque instance de Programme.
Le spécifié enregistreur est exécuté avec l'extrémité de sortie du tuyau stderr connectée comme
entrée standard. programme de journalisation est exécuté avec un argument - ProgrammeLe nom de.
-stderrloggername=nom
Utilisez prénom comme argument de programme de journalisation, à la place du ProgrammeLe nom de.
-arrêt
Arrêter (tuer) un existant coursiertcpd traiter. Spécifiez le même -pid argument comme celui
qui a été utilisé pour commencer coursiertcpd. L'ID de processus est lu à partir du -pid fichier et
coursiertcpd le processus est tué. Tous les processus enfants de coursiertcpd recevra un
Signal SIGTERM.
-utilisateur=utilisateur
Ensemble coursiertcpdl'identifiant de l'utilisateur. De plus, l'ID de groupe est défini sur l'ID de groupe de l'utilisateur. À l'aide de
tous les deux -groupe et -utilisateur n'est pas nécessaire. Seul le superutilisateur peut spécifier -utilisateur.
PLUSIEURS PORT LISTE
La liste L'argument peut être une liste séparée par des virgules de plusieurs numéros de port. coursiertcpd
créera des connexions réseau sur n'importe quel port répertorié. Chaque numéro de port peut être éventuellement
spécifié comme « adresse.port », par exemple :
couriertcpd -pid=/var/run/smtp.pid 127.0.0.1.25,999 Programme
Cette instance accepte les connexions réseau au port 25 ou au port 999, cependant
les connexions sur le port 25 sont créées uniquement sur l'adresse IP 127.0.0.1, le loopback
interface.
Chaque fois qu'une adresse IP n'est pas spécifiée, les connexions réseau sont acceptées à n'importe quelle adresse IP
adresse (appelée « wildcarding »). Sur les systèmes compatibles IPv6, coursiertcpd tentera de
créer deux ports de connexion réseau entrants, si aucune adresse IP n'est spécifiée. Après
créant le premier port en tant que port générique IPv6, couriertcpd tentera ensuite de créer
un port générique IPv4, avec le même numéro de port. Certains systèmes dérivés de BSD doivent utiliser
des ports génériques IPv6 et IPv4 séparés pour créer des connexions réseau entrantes. La plupart des autres
les systèmes n'ont besoin que d'un port IPv6 pour créer des connexions réseau entrantes IPv6 et IPv4.
coursiertcpd ignore discrètement un échec de création d'un port générique IPv4, tant qu'un IPv6
wildcard a été créé avec succès.
La -adresse L'option peut être utilisée pour définir par défaut une adresse IP spécifique pour chaque port répertorié
numéro. Par exemple:
couriertcpd -pid=/var/run/smtp.pid 127.0.0.1.25,127.0.0.1.999 Programme
et
couriertcpd -pid=/var/run/smtp.pid -address=127.0.0.1 25,999 XNUMX Programme
créera des connexions réseau sur les ports 25 et 999 de l'adresse IP 127.0.0.1.
ACCÈS DOSSIER
Le fichier d'accès répertorie les adresses IP qui coursiertcpd acceptera ou rejettera les connexions
de. Un fichier d'accès est facultatif. Sans fichier d'accès coursiertcpd accepte une connexion
depuis n'importe quelle adresse IP.
Les adresses IPv4 et IPv6 peuvent être spécifiées, si la prise en charge IPv6 est disponible. UNE
une syntaxe non standard est actuellement utilisée pour spécifier les adresses IPv6. Ceci est sujet à changement
dans le futur proche. La prise en charge d'IPv6 est actuellement considérée comme expérimentale.
Le fichier d'accès est un fichier de base de données binaire qui est généralement créé par un script, tel que
faitmtpaccess(8)[2], à partir d'un ou plusieurs fichiers texte brut. Les lignes vides dans le fichier texte sont
ignoré. Les lignes commençant par le caractère # sont également ignorées.
rejetant et acceptant liens by IP propos
La ligne suivante indique coursiertcpd rejeter toutes les connexions à partir d'une adresse IP
gamme:
netblock Nier
bloc réseau est une adresse IP, telle que 192.68.0.2. est le caractère de tabulation ASCII. Là
DOIT être exactement un caractère de tabulation après l'adresse IP et le mot "refuser".
Vous pouvez également bloquer les connexions d'un bloc C de réseau entier :
192.68.0 Nier
Cela bloque les connexions des adresses IP 192.68.0.0 à 192.68.0.255. Blocage
les connexions d'un bloc de réseau B ou A entier fonctionnent de la même manière.
Utilisez le mot « autoriser » au lieu de « refuser » pour autoriser explicitement les connexions à partir de cette IP
adresse ou netblock. Par exemple:
192.68.0 Nier
192.68.0.10 Autoriser
Cela bloque toutes les connexions de 192.68.0.0 à 192.68.0.255 à l'exception de 192.68.0.10. Ces
deux lignes peuvent apparaître dans n'importe quel ordre. coursiertcpd utilise toujours la ligne avec le plus spécifique
Adresse IP.
Si l'adresse IP de la connexion n'est pas trouvée dans le fichier d'accès, la connexion est
accepté par défaut. La ligne suivante entraîne le rejet des connexions non répertoriées :
* Nier
IPv6 adresses
Notes
La prise en charge d'IPv6 dans le fichier d'accès est expérimentale et est susceptible de changer dans le futur
Libération. La syntaxe suivante est susceptible d'être modifiée à tout moment.
Le fichier d'accès peut également spécifier des adresses IPv6, si la prise en charge IPv6 est disponible. Les
le format d'adresse IPv4 existant est utilisé pour les adresses IPv6 mappées en IPv4, et aucune modification n'est
obligatoire. Pour toutes les autres adresses IPv6, utilisez le format suivant :
:hhhh:hhhh:hhhh:hhhh:hhhh:hhhh:hhhh:hhhhaction
L'adresse IPv6 doit commencer par :. L'initiale : le personnage ne fait pas vraiment partie du
Adresse IPv6, elle ne sert qu'à désigner cet enregistrement comme une adresse IPv6, permettant à un
access pour contenir un mélange d'adresses IPv4 et IPv6. L'adresse IPv6 suit le
initial : caractère, et il doit être épelé en utilisant zéro-rembourré minuscule hexadécimal
chiffres. Par exemple:
:0000:0000:0000:0000:0000:f643:00a2:9354<tab>deny
Les Netblocks doivent être spécifiés à l'aide de limites de mots pairs uniquement :
:3ffe Nier
Cela refusera l'intégralité du 3ffe ::/16 (réseau 6bone, qui est progressivement supprimé).
:2002:c0a8 Nier
Cela refusera 2002:c0a8::/32 (adresses 6to4 dérivées de l'espace d'adressage privé).
Paramètres sûr, heureux et sain les variables
allow peut être éventuellement suivi d'une liste d'affectations de variables d'environnement, séparées
par des virgules. Les variables d'environnement sont définies avant l'exécution Programme ou vérifier l'accès
listes (voir ci-dessous). Par exemple:
192.68.0 autoriser,RELAYCLIENT
192.68.0.10 autoriser,RELAYCLIENT,SIZELIMIT=1000000
Cela définit CLIENT RELAIS variable d'environnement pour les connexions du bloc 192.68.0. Dans
en plus de cela, le LIMITE DE TAILLE variable d'environnement est définie sur 1000000 si la connexion
vient de l'adresse IP 192.68.0.10.
Notez que CLIENT RELAIS doit être explicitement spécifié pour l'adresse IP 192.68.0.10. Les
la première ligne n'est PAS utilisée pour les connexions à partir de cette adresse IP. coursiertcpd n'en lit qu'un
entrée du fichier d'accès, l'entrée de l'adresse IP la plus spécifique.
DNS ACCÈS LISTE
Une alternative à la liste des adresses IP interdites consiste à utiliser un accès IP externe basé sur DNS
liste.
Il n'y a aucune disposition pour prendre en charge les listes basées sur IPv6, car aucune n'existe encore. Basé sur IPv6
la prise en charge des listes d'accès sera ajoutée à l'avenir.
coursiertcpdLa configuration par défaut de ne rejette pas automatiquement les connexions de n'importe quelle IP
adresse répertoriée sur une liste basée sur DNS. Si l'adresse IP de connexion est répertoriée couriertcpd
définit simplement une variable d'environnement. C'est à la Programme, exécuté par coursiertcpd, lire
la variable d'environnement et choisissez quoi faire si la variable d'environnement est définie.
Veuillez noter que si la variable d'environnement est déjà définie, coursiertcpd ne cherchera PAS
la liste d'accès. Cela peut être utilisé pour remplacer la liste d'accès où Programme uniquement
reconnaît la liste d'accès si la variable d'environnement n'est pas vide. En réglant le
variable d'environnement à une chaîne vide dans le fichier d'accès (voir ci-dessus), vous pouvez remplacer
listes d'accès pour les adresses IP sélectionnées.
La -bloquer L'option interroge une liste DNS pour chaque adresse IP de connexion. Le seul requis
argument -bloquer est la zone DNS utilisée pour publier la liste. Le nom de la zone
peut éventuellement être suivi d'une virgule et du nom de la variable d'environnement à définir si
la liste DNS comprend l'adresse IP. coursiertcpd définit la variable d'environnement BLOC if
vous ne spécifiez pas le nom vous-même.
Le nom de la variable d'environnement peut être éventuellement suivi d'une barre oblique et d'une IP
adresse. Normalement coursiertcpd définit la variable d'environnement si la liste d'accès comprend
any Une entrée d'enregistrement pour l'adresse IP spécifiée. Certaines listes d'accès peuvent offrir des
informations en renvoyant l'un des nombreux enregistrements A possibles. Si le nom de l'environnement
variable est suivie d'une barre oblique et d'une adresse IP, la variable d'environnement sera
initialisé uniquement si la liste d'accès comprend un enregistrement A contenant l'IP indiquée
adresse.
Le contenu de la variable d'environnement sera le contenu de tout enregistrement TXT pour le
adresse IP répertoriée. var[/nnnn] peut être éventuellement suivi d'une virgule et d'un texte
message, qui sera utilisé à la place de l'enregistrement TXT. Le message texte peut inclure un
un seul caractère @ quelque part dedans, qui sera remplacé par l'adresse IP indiquée.
When the -laissez tomber l'option est offerte en plus de -bloquer, coursiertcpd interrompt la connexion,
plutôt que d'exécuter le Programme. Tout d'abord, tout -bloquer les options sont traitées et le
les variables d'environnement sont définies en fonction des résultats de toutes les recherches DNS correspondantes. Les -laissez tomber
est traité après toutes les recherches DNS. -laissez tomber prend une liste d'environnements séparés par des virgules
variables (si non spécifié, BLOC est la liste par défaut). Si une variable d'environnement nommée
par le -laissez tomber l'option est définie sur une chaîne non vide, coursiertcpd abandonne la connexion à la place
d'exécuter le Programme.
PLUSIEURS DNS LISTE
Multiple -bloquer des options peuvent être utilisées. L'adresse IP de connexion est recherchée dans plusieurs
listes d'accès. Ceci est mis en œuvre comme suit.
coursiertcpd traite tout -bloquer options une à la fois. Si l'environnement indiqué
la variable est déjà définie, coursiertcpd ignore la recherche dans la liste DNS (cela est également vrai si seulement
UN -bloquer option est spécifiée). Par conséquent, si plusieurs -bloquer les options sont utilisées, et une IP
se trouve dans la première liste d'accès, les listes restantes qui utilisent la même
La variable d'environnement ne sera pas vérifiée. Mais d'autres listes qui utilisent un environnement différent
variable SERA vérifiée.
Le même Zone peut être spécifié plus d'une fois, avec différentes variables d'environnement et
différentes adresses IP. Par exemple:
couriertcpd -block=bloc.exemple.org,BLOC1/127.0.0.2 \
-block=bloc.exemple.org,BLOC2/127.0.0.3
Si la liste d'accès spécifiée contient un enregistrement A pour l'adresse répertoriée et que l'enregistrement A
contient l'adresse IP 127.0.0.2, coursiertcpd initialise le BLOC1 sûr, heureux et sain
variable. Si l'enregistrement A contient l'adresse IP 127.0.0.3, coursiertcpd initialise
BLOC2. Si les deux enregistrements sont présents, les deux variables sont initialisées.
coursiertcpd utilise la logique suivante pour déterminer le type de requête DNS à émettre :
Si ni l'adresse IP, ni msg est spécifié, coursiertcpd demandera l'existence de
Enregistrements TXT, pour l'adresse IP.
Si seulement msg est spécifié, coursiertcpd recherche l'existence d'enregistrements A, pour l'IP
adresse.
If /nnnn est utilisé, et msg n'est pas spécifié pour au moins un -bloquer option pour ce même
zone, coursiertcpd demandera l'existence de TOUS les enregistrements, qui devraient renvoyer à la fois TXT
et tous les enregistrements A pour cette adresse IP.
If /nnnn est utilisé, et msg est spécifié pour chaque -bloquer option pour cette même zone,
coursiertcpd interrogera uniquement l'existence des enregistrements A.
ENVIRONNEMENT VARIABLES
coursiertcpd initialise également les variables d'environnement suivantes avant d'exécuter Programme:
TCPLOCALHÔTE
Le nom de l'hôte à l'extrémité locale de la connexion réseau, recherché dans DNS.
TCPLOCALHÔTE ne sera pas défini si l'adresse IP de l'extrémité locale de la connexion réseau
introuvable dans le DNS, ou si -nodnslookup est spécifiée. TCPLOCALHÔTE sera
mis à la chaîne softdnserr si la recherche DNS échoue avec une erreur temporaire (vous
ne peut pas dire si l'adresse IP est associée à un nom d'hôte valide), ou si le
les recherches DNS inverses et directes ne correspondent pas. TCPLOCALHÔTE ne sera pas défini si le
la recherche DNS inversée échoue complètement.
TCPLOCALIP
L'adresse IP de l'extrémité locale de la connexion réseau.
TCPLOCALPORT
Rhe numéro du port de l'extrémité locale de la connexion réseau.
TCPREMOTEHOST
Le nom d'hôte de l'hôte qui se connecte. Comme TCPLOCALHÔTE, mais pour l'IP de connexion
adresse.
TCPREMOTEIP
Adresse IP de connexion.
TCPREMOTEINFO
Chaîne d'identification reçue du serveur IDENT sur l'adresse IP distante. Pas encore défini
si le serveur IDENT a renvoyé une erreur, ou si le -noidentlookup l'option a été spécifiée.
TCPTÉLÉPORT
Port TCP de l'extrémité distante de la connexion réseau.
Utilisez couriertcpd en ligne en utilisant les services onworks.net