百度数据网站,贵州省兴义市专做网站公司,温州城乡建设学校,怎么样推广最有效最快速1、安装vsftpd软件包#xff0c;命令如下#xff1a;
sudo yum -y install vsftpd
2、查看vsftpd的运行状态#xff0c;命令如下#xff1a;
sudo netstat -nltp | grep 21
一般情况下#xff0c;vsftpd安装完成后会自动启动#xff0c;如下图所示通过 netstat 命令可…1、安装vsftpd软件包命令如下
sudo yum -y install vsftpd
2、查看vsftpd的运行状态命令如下
sudo netstat -nltp | grep 21
一般情况下vsftpd安装完成后会自动启动如下图所示通过 netstat 命令可以看到系统已经监听了 21 端口 特殊情况下假如vsftpd没有自启动可以手动开启
sudo systemctl start vsftpd.service
3、配置ftp登录用户及权限
在这一步中网上基本所有的帖子都用useradd但是使用useradd时如果后面不添加任何参数选项例如#sudo useradd test创建出来的用户将是默认“三无”用户无Home Directory、无密码无系统Shell还需要自己配置比较麻烦。
而使用adduser创建用户的过程更像是一种人机对话系统会提示你输入各种信息然后会根据这些信息帮你创建新用户所以我用adduser来创建新的ftp登录用户。 sudo adduser ftp
创建用户的过程如下图所示创建完了后home下会自动出现一个对应的文件夹。 4、删除掉 pam.d 中 vsftpd因为该配置文件会导致使用用户名登录 ftp 失败
sudo rm /etc/pam.d/vsftpd
5、限制用户 ftp只能通过 FTP 访问服务器而不能直接登录服务器
sudo usermod -s /sbin/nologin ftp
注此处一定要谨慎操作如果新建的ftp用户只用来上传数据可以这么操作。如果该用户还要ssh来连接就不能这么操作。
6、配置vsftpd这一步很关键直接决定
sudo chmod aw /etc/vsftpd.conf
sudo vim /etc/vsftpd.conf
主要添加以下几项权限
# 限制用户对主目录以外目录访问
chroot_local_userYES
#是否允许匿名访问NO为不允许
anonymous_enableNO
#是否允许本地用户访问,就是linux本机中存在的用户YES允
local_enableYES
#是否开启写模式YES为开启
write_enableYES#不允许下载
download_enableNO
#新建文件权限一般设置为022那么新建后的文件的权限就是777-002775
local_umask002
#是否启动userlist为禁止模式YES表示在userlist中的用户禁止登录ftp黑名单NO表示黑名单失效我们已经让userlist作为一个白名单所以无需使用黑名单功能userlist_denyNO#是否启动userlist为通过模式YES的话只有存在于userlist文件中的用户才能登录ftp可以理解为userlist是一个白名单NO的话白名单失效和下面一个参数配合使用userlist_enableYES#指定哪个文件作为userlist文件我们稍后编辑这个文件userlist_file/etc/vsftpd.user_list# 不配置可能导致莫名的530问题seccomp_sandboxNO#修改用户上传文件的所属主chown_uploadsYESchown_usernameftp#是否限制本地所有用户切换根目录的权限YES为开启限制即登录后的用户不能访问ftp根目录以外的目录当然要限制chroot_local_userYES#是否启动限制用户的名单list为允许模式上面的YES限制了所有用户可以用这个名单作为白名单作为例外允许访问ftp根目录以外chroot_list_enableYES#设置哪个文件是list文件里面的用户将不受限制的去访问ftp根目录以外的目录chroot_list_file/etc/vsftpd.chroot_list#是否开启写模式开启后可以进行创建文件夹等写入操作,添加后可以解决“500 OOPS: vsftpd: refusing to run with writable root inside chroot ”的问题allow_writeable_chrootYES# 使用utf8编码utf8_filesystemYES7、新建文件 /etc/vsftpd.user_list用于存放允许访问 ftp 的用户
修改 /etc/vsftpd.user_list 加入刚刚创建的用户,一行一个用户
sudo touch /etc/vsftpd.user_listsudo chmod aw /etc/vsftpd.user_list
8、设置访问权限
防止用户下载可以通过以下两个途径
1在vsftpd.conf中后面添加download_enableNO已经添加
2修改local_umask477默认是700自动把上传的文件修改权限为“----r---w-”
9、禁止ftp用户具有删除文件的权利
1创建文件vsftpd_user_conf
mkdir -p /etc/vsftpd/vsftpd_user_conf
2编辑vsftpd_user_conf
vim /etc/vsftpd/vsftpd_user_conf/ftp
注意:后面的 ftp对应自己要限制权限的账户此处我限制的是ftp 账户的权限
在里面写入下面的一句话这句话的意思是 禁止使用 删除命令。
cmds_deniedDELE
10、重新打开配置文件
vim /etc/vsftpd/vsftpd.conf
然后添加
user_config_dir/etc/vsftpd/vsftpd_user_conf
11 重启vsftpd 服务
sudo systemctl restart vsftpd.service
至此配置vsftpd并且设定用户的权限为只可上传禁止下载和删除。