基于Ubuntu搭建FTP文件服务
搭建FTP文件服务安装并启动FTP服务安装VSFTPD
使用apt-get安装vsftpd:
sudo apt-get install vsftpd -y
vsftpd是在Linux上被广泛使用的FTP服务器,依据其[官网介绍][],它可能是UNIX-like系统下最安全和快速的FTP服务器软件。
启动VSFTPD
安装完成后VSFTPD会手动启动,通过netstat命令可以看见系统早已[]:
sudo netstat -nltp | grep 21
若果没有启动,可以自动开启VSFTPD服务:
sudo systemctl start vsftpd.service
FTP合同默认使用21端口作为服务端口
sudo mkdir /home/uftp
执行完后,在这儿/home/uftp[]能够看见新建的文件夹uftp了。
创建登陆欢迎文件[]:
sudo touch /home/uftp/welcome.txt
便捷用户登入后可以看见欢迎信息linux开启ftp服务,但是确定用户确实登陆到了主目录上。
用户的主目录是用户通过FTP登陆后看见的根目录
新建用户uftp并设置密码
创建一个用户uftp[]:
sudo useradd -d /home/uftp -s /bin/bash uftp
为用户uftp设置密码[]:
sudo passwd uftp
删掉掉pam.d中vsftpd,由于该配置文件会造成使用用户名登陆ftp失败:
sudo rm /etc/pam.d/vsftpd
为了便捷旁边的实验步骤,不建议使用其它的用户名
请记住设置的密码以用于后续步骤
限制该用户仅能通过FTP访问
限制用户uftp只能通过FTP访问服务器,而不能直接登陆服务器:
sudo usermod -s /sbin/nologin uftp
更改vsftpd配置
sudo chmod a+w /etc/vsftpd.conf
更改/etc/vsftpd.conf文件中的配置(直接将如下配置添加到配置文件最下方):
# 限制用户对主目录以外目录访问 chroot_local_user=YES # 指定一个 userlist 存放允许访问 ftp 的用户列表 userlist_deny=NO userlist_enable=YES # 记录允许访问 ftp 用户列表 userlist_file=/etc/vsftpd.user_list # 不配置可能导致莫名的530问题 seccomp_sandbox=NO # 允许文件上传 write_enable=YES # 使用utf8编码 utf8_filesystem=YES
新建文件/etc/vsftpd.user_list,用于储存准许访问ftp的用户:
sudo touch /etc/vsftpd.user_list sudo chmod a+w /etc/vsftpd.user_list
更改/etc/vsftpd.user_list,加入刚才创建的用户:
示例代码:/etc/vsftpd.user_list
uftp
设置访问权限
设置主目录访问权限(只读):
sudo chmod a-w /home/uftp
新建公共目录,并设置权限(读写):
sudo mkdir /home/uftp/public && sudo chmod 777 -R /home/uftp/public
重启vsftpd服务:
sudo systemctl restart vsftpd.service
访问FTP服务
FTP服务已安装并配置完成,下边我们来使用该FTP服务
访问FTP服务
按照您个人的工作环境,选择一种方法来访问早已搭建的FTP服务
通过FTP顾客端工具访问
FTP顾客端工具诸多,下边推荐两个常用的:
下载和安装FTP顾客端后LINUX虚机,使用下边的凭据进行联接即可:
[]:
用户:
uftp
输入密码后linux开启ftp服务,假如才能正常联接,这么大功告成,您可以开始使用属于您自己的FTP服务器了!
接出来红帽子linux,请上传任意一张图片到您的FTP服务器上的uftp的public目录下,之后,就可以在/home/uftp/public中见到了。
通过Windows资源管理器访问
Windows用户可以复制下边的[]到资源管理器的地址栏访问:
ftp://uftp:你的密码@
倘若您申请了域名,可以将Ip地址替换为对应的域名作为访问凭据
倘若您申请了域名,可以将链接中的Ip地址替换为对应的域名访问FTP服务
大功告成
恭喜!您已然成功完成了搭建FTP服务器的实验任务。