Show Table of Contents
Expansions, when used in conjunction with the
twistdirectives, provide information about the client, server, and processes involved.
The following is a list of supported expansions:
%a— Returns the client's IP address.
%A— Returns the server's IP address.
%c— Returns a variety of client information, such as the user name and hostname, or the user name and IP address.
%d— Returns the daemon process name.
%h— Returns the client's hostname (or IP address, if the hostname is unavailable).
%H— Returns the server's hostname (or IP address, if the hostname is unavailable).
%n— Returns the client's hostname. If unavailable,
unknownis printed. If the client's hostname and host address do not match,
%N— Returns the server's hostname. If unavailable,
unknownis printed. If the server's hostname and host address do not match,
%p— Returns the daemon's process ID.
%s—Returns various types of server information, such as the daemon process and the host or IP address of the server.
%u— Returns the client's user name. If unavailable,
The following sample rule uses an expansion in conjunction with the
spawncommand to identify the client host in a customized log file.
When connections to the SSH daemon (
sshd) are attempted from a host in the
example.comdomain, execute the
echocommand to log the attempt, including the client hostname (by using the
%hexpansion), to a special file:
sshd : .example.com \ : spawn /bin/echo `/bin/date` access denied to %h>>/var/log/sshd.log \ : deny
Similarly, expansions can be used to personalize messages back to the client. In the following example, clients attempting to access FTP services from the
example.comdomain are informed that they have been banned from the server:
vsftpd : .example.com \ : twist /bin/echo "421 %h has been banned from this server!"
For a full explanation of available expansions, as well as additional access control options, see section 5 of the man pages for
man 5 hosts_access) and the man page for
Refer to Section 2.6.5, “Additional Resources” for more information about TCP Wrappers.