OS:ubuntu10.10
1. 首先介绍linux中的守护进程
在Linux系统中有一个特殊的守护进程inetd(InterNET services Daemon),它用于Internet标准服务,通常在系统启动时启动。通过命令行可以给出inetd的配置文件,该配置文件列出了inetd所提供的服务清单。如果没有在命令行给出配置文件,那么inetd将从文件/etc/inetd.conf中读取它的配置信息。inetd的主要任务是为那些没有在系统初始化时启动的服务器进程监听请求,它在同配置文件中列出的服务相关联的TCP或UDP端口上监听请求,当有请求到达这些协议端口时,inetd启动相应的服务器进程。
当一个请求到达由inetd管理的服务端口,inetd将该请求转发给名为 tcpd的程序。tcpd根据配置文件host.{allow,deny}来判断是否允许服务该请求。如果请求被允许刚相应的服务器程序(如:ftpd、 telnet)将被启动。这个机制也被称为TCP_Wrapper。
xinetd(eXended InterNET services Daemon)提供类似于inetd+tcp_wrapper的功能,但是更加强大和安全。在红旗等主流Linux发布商的商业系统中已经逐渐用xinetd取代了inetd,并且提供了访问控制、加强的日志和资源管理功能,成了Linux系统的Internet标准超级守护进程。很多系统服务都用到了xinetd如:FTP、IMAP、POP和telnet等。/etc/services中所有的服务通过他们的端口来访问服务器的时候,先由xinetd来处理,在唤起服务请求之前,xinetd先检验请求者是否满足配置文件中指定的访问控制规则,当前的访问是否超过了指定的同时访问数目,还有配置文件中指定的其他规则等,检查通过,xinetd将这个请求交付到相应的服务去处理,自己就进入sleep状态,等待下一个请求的处理。
2.安装软件
sudo apt-get install xinetd
sudo apt-get install telnetd
安装完毕后可以看到/etc/inetd.conf多了下面一行
telnet stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.telnetd
3.运行netstat -vat查看
tcp6 0 0 *:telnet *:* LISTEN ,或者telnet localhost进行测试
telnet服务端就配置成功。
4.xinetd常用命令
sudo /etc/init.d/xinetd start|stop|reload|force-reload|restart|status
5.其实在新的ubuntu中已经替代了inetd,可能是考虑到兼容性xinetd启动时还要读取/etc/inetd.conf。
我们完全可以不要inetd.conf文件,可以注释掉其中的 telnet stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.telnetd 一行
(1)修改/etc/xinetd.conf如下
# Simple configuration file for xinetd## Some defaults, and include /etc/xinetd.d/
defaults{
# Please note that you need a log_type line to be able to use log_on_success
# and log_on_failure. The default is the following :# log_type = SYSLOG daemon info
instances = 60
log_type = SYSLOG authpriv
log_on_success = HOST PID
log_on_failure = HOST
cps = 25 30}
includedir /etc/xinetd.d
#红色部分具体不知到什么参数
(2)目录/etc/xinetd.d下面就是要启动的服务
新建telnet内容如下
service telnet
{disable = no
flags = REUSE
socket_type = stream
wait = no
user = root
server = /usr/sbin/in.telnetd
log_on_failure += USERID}
运行sudo /etc/init.d/xinetd restart
telnet localhost 可以发现telnet服务已启动。
6.windows下面开启telnet服务则相对简单
以xp为例,运行->services.msc 启动相应服务即可