I have a question regarding tcpd. As far as I understand this, it seems to me like tcpd is basically validates a client (via /etc/hosts.allow and /etc/hosts.deny) as well as log this information.
When I set up my NFS server, I had to edit /etc/hosts.allow to do somethings. I'm currently reading about how inetd uses tcpd and the confusion arises here. I'm noticing that some programs are called with /usr/sbin/tcpd while others like NFS don't explitcitly call tcpd. Does this mean that NFS binaries just have tcpd builtin on them or call the appropriate libs during run time?
The library that really does the work is called tcp_wrappers. Many programs call that library by themselves, such as the NFS daemons. The tcpd program only acts as a wrapper program for other programs that don't support tcp_wrappers by themselves.