« | October 2025 | » | 日 | 一 | 二 | 三 | 四 | 五 | 六 | | | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | | |
| 公告 |
☆★☆★☆★☆★☆★☆ 生活的点点记录,以及一些体会...........
喜欢是淡淡的爱,爱是深深的喜欢.
时间会见证一切.......................
欢迎大家指出错误,共同进步..........
期待中..............................
☆★☆★☆★☆★☆★☆ |
Blog信息 |
blog名称: 日志总数:162 评论数量:312 留言数量:0 访问次数:948649 建立时间:2005年5月17日 |

| |
[Linux]FTP服务器 文章收藏
oceanblue 发表于 2007/4/24 8:40:36 |
三(1)、禁止匿名账号登录FTP服务器 Step1. 修改/etc/vsftpd/vsftpd.conf 将 anonymous_enable=YES 改为 anonymous_enable=NO Step2. 重新启动vsftpd killall -9 vsftpd ;vsftpd & 三(2)、允许本地用户登陆服务器 Step1. 修改/etc/vsftpd/vsftpd.conf #local_enable=YES 改为: local_enable=YES #write_enable=YES 改为: write_enable=YES Step2. 重新启动vsftpd killall -9 vsftpd ;vsftpd & 四、修改匿名账号访问的FTP根目录 step1:建立匿名账号专门的FTP目录 eg:mkdir /home/ftproot step2: 修改/etc/passwd文件 ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin为: ftp:x:14:50:FTP User:/home/ftproot:/sbin/nologin 五、特定使用者hongqt不得在使用FTP实变更目录到用户主目录外的其他目录 使用者的预设目录为/home/hongqt,若是我们不希望使用者在使用ftp时能够 切换到上一层目录/home,则可参考以下步骤。 Step1. 修改/etc/vsftpd/vsftpd.conf 将底下三行 #chroot_list_enable=YES # (default follows) #chroot_list_file=/etc/vsftpd.chroot_list 改为 chroot_list_enable=YES # (default follows) chroot_list_file=/etc/vsftpd/vsftpd.chroot_list Step2. 新增一个文件: /etc/vsftpd/vsftpd.chroot_list 内容增加一行: hongqt Step3. 重新启动vsftpd killall -9 vsftpd ;vsftpd & 六、安排欢迎话语 若是我们希望使用者在登入时,能够看到欢迎话语,可能包括对该主机的 说明,或是目录的介绍,可参考以下步骤。 首先确定在/etc/vsftpd/vsftpd.conf 当中是否有底下这一行 dirmessage_enable=YES 默认值是有上面这行的。 接着,在各目录之中,新增名为.message 的文件,假设有一个使用 者hongqt,且此使用者的根目录下有个目录名为music,那首先我们在/home/hongqt/ 之下新增.message,内容如下: Hello~ Welcome to the home directory This is for test only... 接着,在/home/hongqt/music的目录下新增.message,内容如下: 这里是你的音乐文件目录。 那么,当使用者hongqt 登入时,会看到以下讯息: 230- Hello~ Welcome to the home directory 230- 230- 230- 若是切换到music的目录,则会出现以下讯息: 250- 这里是你的音乐文件目录。 七、禁止或者允许指定IP的用户访问ftp资源 复习以往的知识: /etc/hosts.allow 及 /etc/hosts.deny 基本上,他们两个的关系为: 1. 当文件/etc/hosts.allow 存在时,则先以此文件内之设定为准; 2. 而在 /etc/hosts.allow 没有规定到的事项,将在 /etc/hosts.deny 当中继续设定! 也就是说, /etc/hosts.allow 的设定优先于 /etc/hosts.deny 基本上,只要 hosts.allow 也就够了,因为我们可以将 allow 与 deny 都写在同一个档案内,只是这样一来似乎显得有点杂乱无章,因此,通常我们都是1. 允许进入的写在 /etc/hosts.allow 当中; 2. 不许进入的则写在 /etc/hosts.deny 当中。 Step1. 设定/etc/hosts.allow,譬如只允许192.168.10.52使用FTP,则可做如下设定: vsftpd:192.168.10.52:allow vsftpd:all:deny Step2. vi /etc/vsftpd/vsftpd.conf 在最末尾增加一行: tcp_wrappers=YES 上面这行能起作用,归功于前面我们对 vi builddefs.h #undef VSF_BUILD_TCPWRAPPERS ========old #define VSF_BUILD_TCPWRAPPERS ========new 的改变 重新启动vsftpd后生效 八、 限制传输文件的速度:本机的使用者最高速度为200KBytes/s,匿名登入 者所能使用的最高速度为50KBytes/s Step1. 修改/etc/vsftpd/vsftpd.conf 新增底下两行 anon_max_rate=50000 local_max_rate=200000 Step2. 重新启动vsftpd killall -9 vsftpd ;vsftpd & 在这里速度的单位为Bytes/s,其中anon_max_rate 所限制的是匿名登入的 使用者,而local_max_rate 所限制的是本机的使用者。VSFTPD 对于速度的限 制,范围大概在80%到120%之间,也就是我们限制最高速度为100KBytes/s, 但实际的速度可能在80KBytes/s 到120KBytes/s 之间,当然,若是带宽不足 时,数值会低于此限制。 针对不同的使用者限制不同的速度:假设test1 所能使用的最高速度为 250KBytes/s,test2 所能使用的最高速度为500KBytes/s。 Step1. 修改/etc/vsftpd/vsftpd.conf 新增底下一行 user_config_dir=/etc/vsftpd/userconf Step2. 新增一个目录:/etc/vsftpd/userconf mkdir /etc/vsftpd/userconf Step3. 在/etc/vsftpd/userconf 之下新增一个名为test1 的文件 内容增加一行: local_max_rate=250000 Step4. 在/etc/vsftpd/userconf 之下新增一个名为test2 的档案 内容增加一行: local_max_rate=500000 Step5. 重新启动vsftpd killall -9 vsftpd ;vsftpd & 九、禁止某用户使用ftp服务 在vsftpd.conf中增加userlist_enable=YES 然后再到/etc/vsftpd目录中新增加文件vsftpd.user_list 将需要禁止用户的账号名放到此文件中即可。 需要重新启动vsftpd以生效 killall -9 vsftpd ;vsftpd & 十、不记录用户日志 当你的FTP使用量非常高时,用户与FTP服务器之间交换文件数据频繁,可能导致日志文件 /var/log/vsftpd.log变得非常的大,为了避免这种情况的出现,可以不记录用户日志。 修改/etc/vsftpd/vsftpd.conf 找到如下行: xferlog_enable=YES 改为: xferlog_enable=NO 十一、如何限制用户数目? 修改/etc/vsftpd/vsftpd.conf 增加: max_clients=10 '限制最多有10个用户使用ftp max_per_ip=3 '限制在同一个IP地址最多能有3个连接。 十二、vsftpd 支持虚拟主机吗? 如果一个机器有多个IP地址的话,可以监听不同IP上的相同的FTP端口 方法是: cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd_other.conf vi /etc/vsftpd/vsftpd_other.conf 增加: listen_address=x.x.x.x 当然,如果你不想在21端口监听,可以使用 listen_port=2121来改变监听的端口。 十三、限制用户空间大小 其实这个不是由FTP本身来实现的,是由quota来实现的。 step 1:编辑/etc/fstab 在你想做磁盘空间限制的分区内加入usrquota与grpquota。但请特别注意,只有Linux的ext2或者是ext3文件系统的linux分区才支持quota功能的。修改如下: [root@jkx-linux root]# cat /etc/fstab /dev/VolGroup00/LogVol00 / ext3 defaults,usrquota,grpquota 1 1 LABEL=/boot /boot ext3 defaults 1 2 none /dev/pts devpts gid=5,mode=620 0 0 none /dev/shm tmpfs defaults 0 0 none /proc proc defaults 0 0 none /sys sysfs defaults 0 0 /dev/VolGroup00/LogVol01 swap swap defaults 0 0 /dev/hdc /media/cdrom auto pamconsole,exec,noauto,managed 0 0 /dev/fd0 /media/floppy auto pamconsole,exec,noauto,managed 0 0 step 2:执行 quotacheck -avugm 作用是对已经使用过的磁盘空间做扫描的操作,分析已使用的磁盘上的每一个目录和文件属于哪个用户和组。然后分别在作了quota限制的分区的(根目录)里产生两个文件:aquota.user和aquota.group -a:表示扫描全部磁盘 -v:表示在扫描过程中显示扫描过程信息 -u:表示扫描记录磁盘丧各个使用者(user)所使用的文件和目录 -g:表示扫描记录磁盘丧各个组(group)所使用的文件和目录 step 3:使用命令 edquota -u 设置使用者的quota 使用格式: edquota -u 用户名 eg: edquota -u hongqt Disk quotas for user hongqt (uid 500): Filesystem blocks soft hard inodes soft hard /dev/sda2 7172 0 0 9 0 0 一 二 三 四 五 六 一、用户已经使用的文件块数 二、用户可以使用的空间大小〔以KB为单位〕 三、用户可以使用的空间的最大值〔以KB为单位〕 四、用户已经使用的inodes数量 五、用户可以使用的inodes数量 六、用户可以使用的inodes的最大值〔以KB为单位〕 编辑时采用和vi类似的编辑键 以下的设置让hongqt用户只有10M空间可以用,最多能使用7000个inodes。 Disk quotas for user hongqt (uid 500): Filesystem blocks soft hard inodes soft hard /dev/sda2 7172 10000 10000 9 0 0 如果soft,hard=0,则表示没有限制。 Tips:设定多个用户的quota的快捷方式 edquota -p hongqt test 复制hongqt用户的quota设置给test。 step 4:设定用户组的quota 方法同设定单个用户的quota类似,如对teachers组进行设置:edquota -g teachers 只是在设定时要注意用户组的quota大小要超过所有成员的quota之和。 如何查看用户自己的quota设置? quota -v 查看当前设置了quota的用户的设置情况:repquota -a 如何暂时取消磁盘空间限制? quotaoff -a 恢复呢? quotaon -a |
|
|