/etc/inetd.conf
listar dessa servrar och dess vanliga portar. Kommandot inetd
lyssnar på dem alla; när den upptäcker en anslutning till en sådan port exekverar den motsvarande serverprogram.
/etc/inetd.conf
beskriver en server med flera fält (separerade av mellanslag):
/etc/services
).
stream
för en TCP-anslutning, dgram
för UDP-datagram.
tcp
eller udp
.
wait
eller nowait
, för att berätta för inetd
huruvida det ska vänta eller inte på att processer avslutas innan det accepterar nya anslutningar. För TCP-anslutningar, som är multiplexa, kan du oftast använda nowait
. För program som svarar över UDP kan du använda nowait
endast om servern är kapabel att hantera flera anslutningar samtidigt. Du kan sätta ett suffix på detta fält med en punkt, följt av det högsta antalet anslutningar tillåtna per minut (standardgränsen är 256).
argv[0]
i C).
Exempel 9.1. Utdrag från /etc/inetd.conf
talk dgram udp wait nobody.tty /usr/sbin/in.talkd in.talkd finger stream tcp nowait nobody /usr/sbin/tcpd in.fingerd ident stream tcp nowait nobody /usr/sbin/identd identd -i
tcpd
används vanligtvisi filen /etc/inetd.conf
. Det möjliggör begränsning av inkommande anslutningar genom att tillämpa åtkomstkontrollregler, dokumenterade i manualsidan hosts_access(5), och konfigurerade i filerna/etc/hosts.allow
och /etc/hosts.deny
. När det väl har avgjorts att anslutningen är tillåten exekverar, tcpd
den riktiga servern (som in.fingerd
i vårt exempel). Observera att tcpd
förlitar sig på det namn vars den anropades (det första argumentet argv[0]
) för att identifiera det riktigta programmet att köra. Så du bör inte starta argumentlistan med tcpd
utan med programmet som ska startas upp.