vsftpd可理解为传输数据的一个工具,可以实现用户通过本地访问ftp服务器 ,也允许用户把文件上传到服务器上
搭建:
这里以rpm方式安装rpm包
vsftpd的rpm连接:点击跳转 也可以通过yum去安装 yum -y install vsftpd
安装完成后其实就可以启动了
/etc/init.d/vsftpd start or service vsftpd restart
查看端口21 21是ftp和用户之间建立连接的端口 20是用户与ftp之间传输数据的端口
netstat -anpt |grep ftp
之后就可以通过一些ftp客户端来进行访问 指明vsftpd的IP 和 21端口
如果想要对ftp进行管理,就需要修改配置文件
安装完vsftpd后,他的默认目录是 /etc/vsftpd 配置文件是vsftpd.conf 有经验的人自行备份,以防外一
还有,FTP搭建完成后默认用户访问的是服务器的/var/ftp/pub 目录
修改配置文件中
anonymous_enable=NO 这行修改为NO,代表拒绝匿名用户访问
anon_upload_enable=YES 这行去掉注释 代表上传
userlist_enable=NO 如果出现530权限拒绝的问题 把这个修改为NO 一般在文件在下方
如果出现500 无法访问用户目录 无法连接到服务器 , 是因为selinux的关系 setenforce 0 关闭selinux
编辑完配置文件之后需要重启FTP服务
/etc/init.d/vsftpd restart or service vsftpd restart
/etc/vsftpd目录下 ,还有一些文件这里简述以下功能
user_list : 这个文件是存放用户的文件,在这个文件中的用户可以以用户登录的方式来登录FTP服务器
ftpusers : 这个文件中的用户,将不能访问FTP服务器
vsftpd_conf_migrate.sh : 还有一个小脚本
可以创建一个用户: abc 想让abc访问FTP
首先 可以给/var/ftp/pub 这个目录所偶的权限
创建一个用户, (其实此时用系统用户也可以访问FTP)
useradd abc
设置密码
echo "abc-pass" | passwd abc --stdin
chmod 777 /var/ftp/pub 代表所有人都可以访问并可读写
usermod -d /var/ftp/pub abc 代表将abc的主目录设置为/var/ftp/pub
然后这个abc就可以通过FTPclient来访问FTP了
在user_list中的用户也是可以访问FTP服务器的
所以可以把系统用户加入到这个文件中,写法:一行一个用户