时间:2023-07-31 08:15:02 | 来源:网站运营
时间:2023-07-31 08:15:02 来源:网站运营
半小时搭建简易ftp服务器:背景:sudo apt-get install vsftpd -y
vsftpd
是在 Linux 上被广泛使用的 FTP 服务器,支持三种登陆方式:sudo netstat -nltp | grep 21
如果没有运行sudo systemctl start vsftpd.service
FTP 协议默认使用 21 端口作为服务端口。sudo mkdir /home/ftp
新建一个用户sudo useradd -d /home/ftp -s /bin/bash ftpuser
为用户设置密码sudo passwd ftpuser
删除掉 pam.d 中 vsftpd,因为该配置文件会导致使用用户名登录 ftp 失败:sudo rm /etc/pam.d/vsftpd
设置用户只能通过ftp访问sudo usermod -s /sbin/nologin ftpuser
此时我们输入tail /etc/passwd
sudo chmod a+w /etc/vsftpd.conf
修改/etc/vsftpd.conf文件中的配置:vim /etc/vsftpd.conf
直接将如下配置添加到配置文件最下方# 限制用户对主目录以外目录访问chroot_local_user=YES# 指定一个 userlist 存放允许访问 ftp 的用户列表userlist_deny=NOuserlist_enable=YES# 记录允许访问 ftp 用户列表userlist_file=/etc/vsftpd.user_list# 不配置可能导致莫名的530问题seccomp_sandbox=NO# 允许文件上传write_enable=YES# 使用utf8编码utf8_filesystem=YES
然后创建vsftpd.user_list文件sudo touch /etc/vsftpd.user_listsudo chmod a+w /etc/vsftpd.user_list
将ftpuser用户添加到vsftpd.user_list中,占一行。vim /etc/vsftpd.user_list
5 配置目录sudo chmod a-w /home/ftp
新建公共目录,并设置权限(读写):sudo mkdir /home/uftp/public && sudo chmod 777 -R /home/uftp/public
重启服务,大功告成sudo systemctl restart vsftpd.service
6 试一下ls -al /home/ftp/
看到public的权限是rwxrwxrwx,也就是说谁都可以在这个文件夹下面创建和删除文件。自己用当然没问题。sudo mkdir ufp1
新建用户sudo useradd -d /home/ftp -s /bin/bash ufp1
设置密码sudo passwd ufp1
将用户加入到vsftpd.user_list中vim /etc/vsftpd.user_list
修改ufp1文件夹权限sudo chmod 755 uftp1sudo chown ufp1 uftp1sudo chgrp ufp1 uftp1
此时只有ufp1用户才能在uftp1文件夹下创建和删除文件,而其他用户只能查看和下载uftp1中的文件。关键词:服务,简易,小时