1、查看当前系统是否已经安装vsftpd
rpm -qa|grep vsftpd
未安装:
已安装:
2、安装vsftpd服务
注释:vsftpd是基于FTP服务架构的软件,采用C/S模式,是一个安全高效稳定的服务器。
安装命令:
yum install -y vsftpd
vsftpd服务安装后生成的相关目录及文件:
用户认证配置文件:/etc/pam.d/vsftpd
配置文件目录: /etc/vsftpd
主配置文件:/etc/vsftpd/vsftpd.conf
3、vsftpd服务配置
是否允许匿名用户登录(默认:YES)
anonymous_enable=YES/NO(YES)
注释:匿名用户使用的登陆名为ftp或anonymous,口令为空;匿名用户不能离开匿名用户家目录/var/ftp,且只能下载不能上传!如需禁用匿名登陆则配置改为NO
是否允许本地用户登录
local_enable=YES
注释:本地用户的登录名为本地用户名,口令为此本地用户的口令;本地用户可以在自 己家目录中进行读写操作,并在权限允许的情况下进行上传/下载。
是否允许用户进行写操作(默认:YES)
write_enable=YES/NO(YES)
指定本地用户根目录
local_root=/var/ftp/pub
是否被允许本地用户切换到上级目录(默认:NO)
chroot_local_user=YES/NO(NO)
是否使用chroot_list指定用户列表(可以切换到上级目录的用户列表)
chroot_list_enable=YES/NO(NO)
指定可以切换上级目录的本地用户列表文件
chroot_list_file=/etc/vsftpd/chroot_list
注释:chroot_list文件需要手动创建,文件内容只需保存用户名称(每行一个,无需其他符号分割),内容格式如下:
3、服务启动
服务启动命令:
service vsftpd start
服务状态查看命令:
service vsftpd status
4、创建本地用户
创建用户命令:
useradd -d /var/ftp/pub -s /sbin/nologin username
设置密码:
passwd username
命令解释:
-d 指定用户登陆时的初始目录
-s 指定用户登入后所使用的shell
/sbin/nologin 禁止用户登录——即用户不能登录系统,但可以登录FTP、SAMBA等
注释:
-d参数和/etc/vsftpd/vsftpd.conf文件配置local_root的值保持一致(不一致有啥影响未测试)!测试用户访问ftp服务时,直接进入local_root指定目录,需要注意代码中文件上传下载的路径配置!另外需要更改用户认证配置文件
/etc/pam.d/vsftpd:
将 auth required pam_shells.so
改为 auth required pam_nologin.so
5、安装ftp客户端
yum install ftp -y
命令行登录:
ftp 127.0.0.1(ftp服务器ip)
接着输入刚刚创建的用户名:username,在输入密码:passwd
如此及完成ftp服务器的搭建。