摘要:vsFTPD是一款小巧易用FTP服务器程序;本文面向初学者的一点疑问,能让初学者在最短的时间内学会最简单的vsftpd服务器的架设;本文应该算是初学者练手篇;正在更新之中;本文基于 vsftpd-2.0.3;
6、500 OOPS: vsftpd: refusing to run with writable anonymous root
7、关于vsFTPd配置文件的说明;
8、关于vsFTPd服务器的一些常用功能的实现;
- 8.1、关于匿名上传下载的实现;
8.2、关于添加本地用户及打开读写权限示例;
8.4、如何实现虚拟路径?
8.5、打开vsFTP服务器的日志功能;
8.6、如何定制欢迎信息;
8.7、硬盘空间有限,如何把帐号ftp默认的路径/var/ftp更改到别处?
8.8、如何让vsFTP服务器限制链接数,以及每个IP最大的链接数?
8.9、如何限制传输速度?
8.10、如何有选择的把用户限制在家目录中呢?
+++++++++++++++++++++++++++++++++++++++++++
正文
+++++++++++++++++++++++++++++++++++++++++++
[url]ftp://mirrors.kernel.org[/url]
或
[url]ftp://ftp:ftp@mirrors.kernel.org[/url]
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
x 是密码字段,是隐藏的;
14 是用户的UID字段,可以自己来设定,不要和其它用户的UID相同,否则会造成系统安全问题;
50 用用户组的GID,可以自己设定,不要和其它用户组共用FTP的GID,否则会造成系统全全问题;
FTP User 是用户说明字段;
/var/ftp 是ftp用户的家目录,可以自己来定义;
/sbin/nologin 这是用户登录SHELL ,这个也是可以定义的,/sbin/nologin 表示不能登录系统;系统虚拟帐号(也被称为伪用户)一般都是这么设置。比如我们把ftp用户的/sbin/nologin 改为 /bin/bash ,这样ftp用户通过本地或者远程工具ssh或telnet以真实用户身份登录到系统。这样做对系统来说是不安全的;如果您认为一个用户没有太大的必要登录到系统,就可以只给他FTP帐号的权限,也就是说只给他FTP的权限,而不要把他的SHELL设置成 /bin/bash 等;
ftp:x:50:
[root@localhost ~]# yum install vsftpd
[root@localhost ~]# apt-get install vsftpd
[root@localhost ~]# rpm -ivh vsftpd*.rpm
[root@localhost ~]# tar zxvf vsftpd-2.0.3.tar.gz
[root@localhost ~]# cd vsftpd-2.0.3
[root@localhost ~]# make ;make install
[root@localhost ~]# cp vsftpd.conf /etc
listen=yes
[root@localhost ~]# /etc/init.d/xinetd restart
停止 xinetd: [ 确定 ]
启动 xinetd: [ 确定 ]
[root@localhost ~]# /usr/sbin/vsftpd &
[root@localhost ~]# /usr/local/sbin/vsftpd &
[root@localhost ~]# pgrep vsftpd
4248
[root@localhost ~]# pkill vsftpd
[root@localhost ~]# pgrep vsftpd
[root@localhost beinan]# /etc/init.d/vsftpd start
为 vsftpd 启动 vsftpd: [ 确定 ]
[root@localhost beinan]# /etc/init.d/vsftpd restart
关闭 vsftpd: [ 确定 ]
为 vsftpd 启动 vsftpd: [ 确定 ]
[root@localhost beinan]# /etc/init.d/vsftpd stop
关闭 vsftpd: [ 确定 ]
[root@localhost ~]# system-config-securitylevel-tui
[root@localhost beinan]# iptables -F
/etc/selinux/config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - SELinux is fully disabled.
SELINUX=Disabled #这样就把SELINUX服务器关掉了,请重新启动系统;
# SELINUXTYPE= type of policy in use. Possible values are:
# targeted - Only targeted network daemons are protected.
# strict - Full SELinux protection.
SELINUXTYPE=targeted
[root@localhost ~]# more /etc/passwd |grep ftp
ftp:x:1000:1000:FTP User:/var/ftp:/sbin/nologin
drwxrwxrwx 3 root root 4096 2005-03-23 /var/ftp
[root@localhost ~]# chown root:root /var/ftp
[root@localhost ~]# chmod 755 /var/ftp
anonymous_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_umask=022
[root@localhost beinan]# finger ftp
Login: ftp Name: FTP User
Directory: /var/ftp Shell: /sbin/nologin
[root@localhost ~]# mkdir /var/ftp/pub
[root@localhost ~]# chmod 777 /var/ftp/pub
[root@localhost ~]# adduser -d /opt/beinan -g ftp -s /sbin/nologin beinan
[root@localhost ~]# passwd beinan
Changing password for user beinan.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
[root@localhost ~]#
write_enable=YES
local_umask=022
8.4、如何实现虚拟路径?
/home/a 映射为 [url]ftp://localhost/a[/url]
/home/b/c 则为 [url]ftp://localhost/c[/url]
[root@localhost ~]# mount --bind [原有的目录] [新目录]
[root@localhost ~]# mkdir /var/ftp/WinSoft
[root@localhost ~]# mount --bind /mnt/LinG/WinSoft /var/ftp/WinSoft
xferlog_file=/var/log/vsftpd.log
8.6、如何定制欢迎信息;
dirmessage_enable=YES
message_file=.message
--欢迎您来到LinuxSir FTP!
--在这里,您会得到最真诚的帮助;
--如果有什么问题和建议,请来信,多谢。
我们就要把.message放在/opt/beinan这个目录下。如果系统用户ftp,他的目录就是/var/ftp这个目录,这个是默认的,当匿名用户登入时就访问的是/var/ftp这个目录。我们要让匿名用户能看到欢迎信息。就要把.message放在/var/ftp目录中。其它的用户,也无非就是类似的操作。
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
ftp:x:14:50:FTP User:/opt/ftp:/sbin/nologin
[root@localhost ~]# mkdir /opt/ftp
[root@localhost ~]# chmod 755 /opt/ftp
[root@localhost ~]# chown root:root /opt/ftp
max_clients=数字
max_per_ip=数字
max_clients=100
max_per_ip=5
改好了配制文件,不要忘记启动vsftp服务器。
8.9、如何限制传输速度?
anon_max_rate=数字
local_max_rate=数字
注:这是vsFTP服务器上本地用户的速度
所以我们要在vsftpd.conf中加入下面的两行
anon_max_rate=81920
local_max_rate=81920
#touch /etc/vsftpd.chroot_list
以beinan和nanbei这两个用户限制在他们所在的家目录中,而其它的FTP用户不做此限制。
beinan
nanbei
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
chroot_local_user=YES
listen_address=192.168.0.2
-
配置Vsftpd服务器
配置Vsftpd服务器/etc/vsftpd/vsftpd.conf文件详解#################匿。
linux战地日记 上传 重命名 虚拟用户 -
Vsftpd服务器配置『罗斌原创』
Vsftpd服务器配置『罗斌原创』
LINUX 职场 休闲 Vsftpd服务器配置『罗斌原创』
举报文章
请选择举报类型
补充说明
0/200
上传截图
格式支持JPEG/PNG/JPG,图片不超过1.9M