Code前端首页关于Code前端联系我们

FTP环境配置方案(vsftpd)

terry 2年前 (2023-09-28) 阅读数 56 #未命名

1.安装vsftpd组件

安装命令:[root@ink4t ~]# sudo apt-get install vsftpd

安装后 /etc/vsftpd/vsftpd.conf conf是vsftp的配置文件。

2。添加ftp用户

该用户用于登录ftp服务器。

[root@ink4t ~]# useradd ftpuser

创建此类用户后,您可以使用它登录。请记住使用普通登录而不是匿名登录。登录后默认路径为/home/ftpuser

3。为用户ftp添加密码

[root@ink4t ~]# passwd ftpuser

输入密码两次并更改。

4。在防火墙中打开21端口

因为ftp的默认端口是21,而centos默认没有启用,所以需要更改iptables文件

[root@ink4t ~]# vi /etc/sysconfig/iptables

行中有22 -j ACCEPT并输入新行以下。这行几乎是一样的,只是把22替换成21然后:wq保存。

启动并重新启动 iptables

[root@ink4t ~]# service iptables restart

5。更改配置文件vsftpd.conf

允许匿名用户访问并限制匿名用户目录为/home/ftpuser

anonymous_enable=YES 
anon_root=/home/ftpuser

这里特别说明,/home/ftp目录不能有w权限。这是一个只读目录,否则会报错。要更改权限,您可以使用

sudo chmod a-w /home/ftpuser

本地用户可以访问并具有写入权限

local_enable=YES 
write_enable=YES

本地用户登录后仅限于其主目录,但同时使用 /etc/vsftpd.chroot_list 文件来指定哪些用户文件下不需要限制目录(比如我们的user1不需要限制目录,所以我们需要写user1)并允许用户改变自己的主目录。

chroot_local_user=YES 
chroot_list_enable=YES 
chroot_list_file=/etc/vsftpd.chroot_list 
allow_writeable_chroot=YES

启用用户列表,不在列表中的用户禁止登录(所以我们需要在etc/allowed_users中写入user1、user2、anonymous、ftp,最后两个表示匿名登录)

user_list_enable=YES 
user_list_deny=NO 
userlist_file=/etc/allowed_users

这是一个经验元素,让配置可以避免参考文献中出现的一些错误。

seccomp_sandbox=NO

此时我还注意到其中包含了两个文件,一个是/etc/vsftpd.chroot_list,另一个是/etc/allowed_users。保存后,我们需要自己手动创建这两个文件,

sudo touch /etc/vsftpd.chroot_list 
sudo touch /etc/allowed_users

然后/etc/vsftpd.chroot_list中的用户就不是受限目录了。在这种情况下我们必须写成user1。在 /etc/allowed_users 中,我们必须写入允许访问服务器的用户。这里有user1、user2和匿名用户anonymous。 ftpuser,输入时请注意每行只写一个用户名。

版权声明

本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。

热门