Centos7之FTP服务实践

FTP服务器配置

环境:
服务端:centos7 192.168.10.121
客户端:centos7 192.168.10.122

服务器缺省安装

  1. 安装vsftpd
  2. 启动服务
  3. 客户端安装ftp服务
  4. 客户端进行登录测试
  5. 修改服务端vsftp配置,锁定用户目录(修改前应备份配置文件)

  6. 修改配置文件及上传文件夹的权限,使匿名用户可以上传下载(ftp目录权限应当为755,不应修改)


  7. 登录后测试
  8. 上传下载测试

  9. 创建用于登录ftp的系统用户(为用户指定shell时需要检测/etc/shells文件是否存在该shell,不存在需要手动添加,否则无法登陆)


  10. 修改配置文件,并将用户加入允许登录列表,重启服务




  11. 登录系统用户并进行上传下载


使用虚拟用户登录

  1. 创建虚拟用户列表(用户列表文件中用户名为奇数行,密码为偶数行)

  2. 将用户列表文件转换为可识别的数据文件
  3. 添加系统用户,作为虚拟用户的实际映射(用户家目录权限必须为755)
  4. 修改vsftpd的PAM配置文件修改如下

  5. 修改vsftpd配置文件


  6. 为用户设定控制权限文件



  7. 重启服务
  8. 使用匿名账户进行登录
  9. 上传下载测试
    注:user1只有读权限因此只能下载无法上传,user2拥有上传与下载权限,虚拟用户登录的根目录为创建实际用户时指定的家目录



ftp常用命令

  • 连接主机
    • ftp [options] [host]
  • 非交互式登录
ftp -n HOST << EOF
user USERNAME PASSWD #登录
ACTIVE #表示进行文件上传或下载
EOF #结束退出ftp
知识兔
  • 基础命令
    • dir:显示服务器目录和文件列表
    • ls:显示服务器简易的文件列表
    • cd:进入服务器指定的目录
    • lcd:改变当前本地主机的工作目录,缺省为当前用户的家目录
    • cdup:返回上一级目录
    • pwd:显示当前所在路径
  • 下载
    • type:查看当前的传输方式
    • ascii:设定传输方式为ASCII码方式
    • binary:设定传输方式为二进制方式
    • get:下载文件到当前路径下get filename
  • 上传
    • put:上传指定文件put filename [newname]
    • send:上传指定文件send filename [newname]
  • 退出
    • close:结束与服务器的FTP会话返回到FTP命令状态
    • quit:结束与服务器的FTP会话并退出FTP
    • bye:结束与服务器的FTP会话并退出FTP
  • 其他命令
    • delete:删除指定文件
    • help:查看帮助信息
    • status:显示当前FTP的状态.
    • system:显示远端主机系统类型.
计算机