Linux(CentOS)ftp服务搭建

1. 下载ftp服务

yum install -y vsftpd

2. 查找ftp配置文件

通常在/etc/vsftpd/vsftpd.conf

rpm -ql vsftpd | grep .conf$

3. 查看配置文件信息

筛选出没有注释的行

grep -v '^#' /etc/vsftpd/vsftpd.conf

内容如下(注释信息是后加的):

# 允许匿名用户访问 FTP 服务器,建议关闭
# 如果需要允许匿名用户上传文件,请确保配置文件中还有其他必要的设置。
anonymous_enable=YES

# 允许本地系统用户(即服务器上存在的用户)登录 FTP 服务器
# 本地用户通常是你在系统中创建的用户帐户。
local_enable=YES

# 允许本地用户在 FTP 服务器上执行写操作,比如上传文件或删除文件
# 确保你允许的操作符合你的安全需求。
write_enable=YES

# 设置本地用户上传文件时的权限掩码
# `022` 表示文件的默认权限将是 `755`,即所有者有读、写、执行权限,组和其他用户有读和执行权限。
local_umask=022

# 启用显示目录中的信息文件(如 README 文件)
# 当用户进入目录时,如果目录下有 `README` 文件,这些信息将被显示给用户。
dirmessage_enable=YES

# 启用记录 FTP 文件传输活动的日志
# 这些日志可以帮助你监控和审核文件传输的情况。
xferlog_enable=YES

# 启用使用端口 20 进行 FTP 数据传输
# 端口 20 是 FTP 数据连接端口。启用此选项可确保 FTP 数据连接正常工作。
# 端口 21 是 FTP 命令端口,远程连接用的就是 21 端口。
connect_from_port_20=YES

# 使用标准格式记录 FTP 文件传输日志
# 标准格式的日志记录更为常见,易于与其他日志分析工具兼容。
xferlog_std_format=YES

# 服务器将不会监听 IPv4 地址的连接请求
# 设置 `listen=NO` 表示 vsftpd 不会在 IPv4 上进行监听。
listen=NO

# 服务器将监听 IPv6 地址的连接请求
# 启用此选项表示 vsftpd 只在 IPv6 网络上进行监听。
listen_ipv6=YES

# 设置 PAM(可插拔认证模块)的服务名称为 vsftpd
# PAM 用于处理用户认证请求。指定服务名称为 `vsftpd` 以与系统 PAM 配置相匹配。
pam_service_name=vsftpd

# 启用用户列表功能
# 这允许你通过 user_list 文件来管理允许或禁止访问 FTP 服务器的用户。
userlist_enable=YES

# 启用 TCP 包过滤
# TCP 包过滤使用 /etc/hosts.allow 和 /etc/hosts.deny 文件来控制对 FTP 服务器的访问权限。
tcp_wrappers=YES

扩展配置项

# 指定登录后访问的目录
# 本地用户登录后默认访问用户家目录
# 匿名用户登录后默认访问 /var/ftp
# 指定的路径一定要对登录的用户开放权限,否者会出现各种权限问题
# 使用 setfacl 或者 chowm 或者 chmod 命令修改权限
local_root=路径

# 开启目录禁锢,不允许用户访问根目录。在文件 101 行,解开注释即可
# 默认情况下本地用户登录后可以访问根目录
chroot_local_user=YES

# 开启禁锢模式后要加上这个选项,允许在禁锢模式下读写
# 否则会报错 500
allow_writeable_chroot=YES

4. Windows连接ftp服务

1)使用文件资源管理器连接

  1. 启动vsftpd服务
systemctl start vsftpd
  1. 创建用户user1
useradd user1
  1. 给user1创建密码
echo '密码' | passwd --stdin user1
  1. 登录ftp服务,文件资源管理器 → 右键此电脑 → 添加一个网络位置
    在这里插入图片描述
  2. 点击下一步
    在这里插入图片描述
  3. 点击下一步
    在这里插入图片描述
  4. 填写ftp服务器的IP地址 → 下一步(可以点击查看示例,看一下格式)
    在这里插入图片描述
  5. 把匿名登录去掉 → 输入用户名 → 点击下一步
    匿名登录就直接下一步就行,匿名登陆前面勾上对号
    在这里插入图片描述
  6. 起一个名字,默认是服务器IP地址 → 点击下一步
    在这里插入图片描述
  7. 点击完成
    在这里插入图片描述
  8. 之后会弹出这个界面,输入密码后点登录就行,匿名登录就直接成功了
    在这里插入图片描述
  9. 出现下面报错要在,控制面板 → 网络和Internet → Internet选项 → 高级 → 找到使用被动 FTP(用于防火墙和 DSL调制解调器的兼容)-ON把前面的对号点掉 → 点完成即可
    在这里插入图片描述
    在这里插入图片描述在这里插入图片描述在这里插入图片描述
    在这里插入图片描述
    刷新即可,可以上传文件试试

2)使用FlashFXP工具,比文件资源管理器好用,强烈推荐

学习版网上很多
本人上传的学习版

  1. 按图所示,点击“快速连接”
    在这里插入图片描述
  2. 地址写ftp服务器的IP地址,用户名是自己在服务器上的本地用户,密码与登录服务器的密码一致,端口号默认为21,无特殊要求不建议更改
    如果要匿名登录就把“匿名”勾上,直接点连接就行,不需要输用户名和密码
    在这里插入图片描述
  3. 登录成功后地址栏显示为用户的家目录/home/user1/
    要想登录后在指定目录就在配置文件中添加local_root=路径
    在这里插入图片描述
  4. 登陆后默认情况是可以访问根目录的,要想杜绝这种危险情况可以在配置文件中加入chroot_local_user=YESallow_writeable_chroot=YES
    在这里插入图片描述
  5. 加入chroot_local_user=YES的结果
    在这里插入图片描述
  6. 如果发现有报错为 500 OOPS: vsftpd: refusing to run with writable root inside chroot(),则是因为allow_writeable_chroot=YES这个选项没加,开启目录禁锢一点要加
    在这里插入图片描述

5. Linux连接

下载ftp客户端

yum install -y ftp

登录,ftp.server换成你到地址

ftp ftp.server

回车后输入用户名,匿名登录输入anonymous
再回车输入密码,匿名登录不用密码直接回车

常用命令解释:

# 查看文件
ls

# 上传
put 本地文件路径

# 下载
get 远程文件路径

# 批量上传
mput 文件名称1 文件名称2 文件名称3 ... 

# 批量下载
mget 文件名称1 文件名称2 文件名称3 ...

# 退出
exit 或者 quit
  • 6
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值