以telnet服務爲例:
yum -y install telnet-server
xinetd下的服務啓動順序以服務名的首字母排序爲準,例如:
當krb5-telnet和telnet監聽同一地址的同一端口,因爲k在t前面,所以只會啓動krb5-telnet服務
配置文件/etc/xinetd.conf:
log_type = SYSLOG daemon info
log_on_failure = HOST
log_on_success = PID HOST DURATION EXIT
log_type後面選項爲:以系統日誌的形式記錄到message文件中,日誌級別爲info,格式爲
Aug 25 10:45:20 www xinetd[1552]: START: telnet pid=7108 from=::ffff:172.16.20.211
Aug 25 10:45:32 www xinetd[1552]: EXIT: telnet status=0 pid=7108 duration=12(sec)
log_on_failure爲錯誤鏈接記錄HOST
log_on_success爲正確鏈接記錄進程ID,主機,保持鏈接的時間,退出
子配置文件:/etc/xinetd.d/telnet:<當子配置文件和主配置文件衝突時,子配置生效>
log_on_failure += USERID # "+=":當鏈接失敗時,除了記錄主配置文件中的HOST外,還要記錄USERID
log_type = FILE /var/log/xinetd/telnet #將日誌記錄到指定的文件中
only_from = 172.16.20.{77,211} #只允許172.16.20.77和172.16.20.211兩臺主機鏈接,中間不能有空格,可以是網段:172.16.20.0/24,也可以是主機名。。。
no_access #與only_from 相反
bind = 172.16.20.108 #當服務器有多塊網卡的時候可以指定監聽的網卡,和interface選項相同,例如:
service telnet
{
disable = no
flags = REUSE
socket_type = stream
wait = no
user = root
server = /usr/sbin/in.telnetd
log_type = FILE /var/log/xinetd/telnet
log_on_failure += USERID
only_from = 172.16.20.{77,211}
access_times = 12:00-13:00 #指定允許訪問的時間段
bind = 172.16.20.108
}
service telnet
{
disable = no
flags = REUSE
socket_type = stream
wait = no
user = root
server = /usr/sbin/in.telnetd
log_type = FILE /var/log/xinetd/telnet
log_on_failure += USERID
only_from = 172.16.20.{77,211}
bind = 172.16.20.250
}
flags = SENSOR #用來防止DOS***,之後接上deny_time
deny_time:
FOREVER <當不允許鏈接的主機鏈接此服務,則永遠拒絕此主機鏈接所有服務,直到重啓xinetd服務>
NEVER <當不允許鏈接的主機鏈接此服務,記錄到日誌文件中>
a numeric value <單位爲分鐘,當不允許鏈接的主機鏈接此服務,則在指定時間內拒絕此主機的所有鏈接>
banner, banner_fail, banner_success #在鏈接,連接失敗,鏈接成功時顯示的banner,後面指定相應的文件即可。