Ubuntu 22.04搭建ftp服务器教程
1.安装vsftpd
打开终端并输入以下命令:
sudo apt update
sudo apt install vsftpd
2.配置vsftpd
在终端中打开vsftpd配置文件:
sudo vim /etc/vsftpd.conf
修改以下参数 有些只需要将源文件中的#号删掉,打开注释即可。
anonymous_enable=NO
local_enable=YES
chroot_local_user=YES
添加:
allow_writeable_chroot=YES
pasv_min_port=39000
pasv_max_port=40000
以上参数分别表示
禁止匿名用户登录
仅允许本地用户访问FTP服务器
防止FTP用户访问其主目录之外的任何文件
允许用户在FTP根目录下创建和修改文件夹和文件
设置FTP端口范围,(39000到40000之间)以便在打开了防火墙的情况下开放对应端口
保存文件,重启vsftpd服务,以使更改生效。
从启动服务
sudo systemctl restart vsftpd
设置开机启动:
sudo systemctl enable vsftpd
1
如果想关闭开机启动:
sudo systemctl disable vsftpd
3.防火墙设置
打开防火墙的指定端口
sudo ufw allow 20:21/tcp
sudo ufw allow 39000:40000/tcp
重新加载防火墙设置
sudo ufw reload
验证更改 请运行
sudo ufw status
4.添加FTP用户
创建名为fptuser的用户并设置好密码
sudo adduser ftpuser
sudo passwd ftpuser
设置两次密码
5.Windows下访问FTP服务器
打开文件资源管理器,在地址栏输入ftp://FTP服务器ip并且在弹出来的对话框中输入用户名和密码即可。
访问FTP服务器并且新建了一个test文件夹,如果要上传文件,只需要把对应的文件拖到框里。
6.linux服务器访问FTP服务器
安装客户端
apt install lftp
FTP连接
本机连接:
ftp 127.0.0.1
其它电脑连接:
ftp ip
# eg:ftp 192.168.0.3
FTP客户端常用命令
ls:和 linux上的 ls命令类似
Ctrl+Shift + L:清屏
put:使用 put "本地文件路径+名称" 上传
get:使用 get "远程文件路径+名称" 下载
mput:批量上传多个文件 mput 文件名1 文件名2
mget:批量获取多个文件 mget 文件名1 文件名2
prompt:屏蔽批量输出信息,批量上传下载文件就不需要一直回车确认了
quit:退出 ftp访问
定时脚本
服务器 192.168.10.11
先装 lftp 这个工具
ubuntu 22.x
apt install lftp -y
自动同步脚本如下:
sync-backup.sh,文件保存在/www/websites/task/目录下
#!/bin/bash
#时间
TIMESTAMP=`date "+%Y-%m-%d-%H-%M-%S"`
# ftp ip
HOST=10.10.201.222
USERNAM=ftpuser
PASSWD=qwer123
lftp -u $USERNAM,$PASSWD ftp://$HOST
服务器上设置定时任务
crontab -e
# 每天 5 点执行,定时备份上传
0 5 * * * /bin/bash /www/websites/task/sync-backup.sh
其他使用方式
lftp -u ftpuser,123456 -e"mirror -R -n -v /www www/" 192.168.10.12
服务器租用托管,机房租用托管,主机租用托管,https://www.e1idc.com