最近哇,总是有很不友好的哥们,时不时的来骚扰我的FTP,事情比较多一直疏忽于防范。正好今天有空我就来谈我的心得吧,直接拒绝用户使用。你可能会想到很多方法,iptables拒绝,/etc/hosts.deny和/etc/hosts.allow这2个文件里面限制。当然还有其他方法。最安全的方法把他关掉FTP服务停了这是极端的方法,当然不行啦 ,可否限制时段开放?运行特定网段的用户登录使用其他的一概拒绝。是否可行呢?下面我们就来看一下xinetd。
原理:这里就不阐述了。
p_w_picpath
下面转入正题:
      在RHEL5下以xinetd的方式启动vsftpd
          首先配置vsftp,在配置之前呢,肯定是要先安装VSFTP软件包的。安装方式RPM方式,YUM方式随便你自己咯。那个方便用哪个。我比较喜欢偷懒我就用了YUM方式。
第一步:先安装软件按包:
[root@rhca /]# yum install vsftpd-*  -y   
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package vsftpd.i386 0:2.0.5-16.el5_4.1 set to be updated
--> Finished Dependency Resolution
Dependencies Resolved
=============================================================================================================================
Package                    Arch                     Version                               Repository                   Size
=============================================================================================================================
Updating:
vsftpd   i386   2.0.5-16.el5_4.1                updates                     140 k
2      查看vsftpd安装包
#rrpm -ql vsftpd 这里我价格管道过滤一下,只看有用的部分。
[root@rhca ~]# rpm -ql vsftpd | grep xinetd
/usr/share/doc/vsftpd-2.0.5/EXAMPLE/INTERNET_SITE/vsftpd.xinetd
/usr/share/doc/vsftpd-2.0.5/EXAMPLE/INTERNET_SITE/vsftpd.xinetd.dir
/usr/share/doc/vsftpd-2.0.5/vsftpd.xinetd
3   修改/etc/vsftpd/vsftpd.conf  下的linsten=YES 改为listen=NO,关闭独立模式启动,
wps_clip_p_w_picpath-7925
大约在109行把 listen=YES改成listen=NO或者直接用#注释掉。我就直接注释掉了。
默认 tcp_wrappers=YES ,支持xinetd方式启动。
4 复制 /usr/share/doc/vsftpd-2.0.5/vsftpd.xinetd 到 /etc/xinetd.d/
#cp  /usr/share/doc/vsftpd-2.0.5/vsftpd.xinetd  /etc/xinetd.d/vsftpd
5 编辑 /etc/xinetd.d/vsftpd
# default: off
# description: The vsftpd FTP server serves FTP connections. It uses \
#       normal, unencrypted usernames and passwords for authentication.
service ftp
{
        socket_type              = stream
        wait                     = no
        user                     = root
        server                   = /usr/sbin/vsftpd
        server_args               = /etc/vsftpd/vsftpd.conf
        nice                     = 10
        disable                  = no
        flags                    = IPv4
        access_times             = 9:00-18:30  ;限制访问时间  假设说我只让上班访问
        only_from               =202.96.123.222 ;限制访问地址 假设这是我公司内部的IP。我就只让公司的里面的人可以访问其他的统统拒绝,
no_access           = 12.111.222.231 ;拒绝访问     假设这个就是那哥们的IP我就拒绝掉
}
更多选项可以man  /etc/xinetd.conf
6 重新启动xinetd服务  service xinetd restart
7 查看ftp :netstat  -an |grep  :21
其实还可以通过 /etc/hosts.allow 和 /etc/hosts.deny 来限制客户端对ftp的访问。
本实验我亲自验证成功。上面的配置是我的需求,你可以根据自己的情况添加修改。初次写作。请指正批评。有上面问题欢迎留言探讨,谢谢!