FTP客户端命令

Windows和Linux等平台下都自带有命令行形式的FTP客户端软件,在Linux中FTP命令有很多参数及内部命令。熟练掌握这些命令及参数的使用,是FTP进行自动化运维的关键步骤。

FTP常用参数:

-v          #显示远程服务器的所有响应信息
-i          #多个文件传送时关闭交互提示
-n          #禁止自动登录到初始连接
-g          #禁用文件名和路径中的通配符(*和?)
-s          #指定包含FTP命令的文本文件
-d          #启用调试,限制客户端与服务器之间传递的左右FTP命令

FTP常用内部命令

help            #显示FTP内部命令的帮主信息
cd              #进入目录
cdup            #进入父目录
ls              #列出文件和目录
pwd             #显示当前目录
delete          #删除文件
mkdir           #创建目录
![command]      #在本地种执行交互shell
get             #下载文件
mget            #下载多个文件
put             #上传文件
mput            #上传多个文件
close           #断开连接
bye, quit       #退出FTP

FTP错误信息

在使用FTP客户端连接服务端时,服务器返回的信息中包含的3位数字的代码。
如:230 Login successful.————>230表示用户登录成功

错误代码规则:

2开头--成功
3开头--权限问题
4开头--文件问题
5开头--服务器问题

常见错误代码:

200 命令执行正常结束
220 新连接的用户服务已经就绪
227 进入被动模式
230 用户已登入
530 没有登录

FTP虚拟用户

FTP可以使用Linux系统的用户,遵循Linux系统用户的配置。
如果不想使用Linux系统的用户来当作FTP的用户的话,就需要FTP的虚拟用户。

FTP虚拟用户的创建步骤:

  1. 生成虚拟用户口令库文件
  2. 配置生成VSFTPD的认证文件
  3. 建立虚拟用户的访问权限
  4. 建立配置文件

以上步骤的具体实现:

1.生成虚拟用户口令库文件
创建login.txt文件:

vim login.txt

在该文件中添加以下内容:

guest   //用户名
guest   // 密码

修改口令库文件的权限

chmod 600 /etc/vsftpd/vsftpd_login.db

2.配置生成VSFTPD的认证文件
使用db_load命令生成口令库文件

db_load –T –t hash –f login.txt /etc/vsftpd/vsftpd_login.db

修改改文件权限

chmod 600 /etc/vsftpd/vsftpd_login.db

注:如系统中无db_load命令,使用yum install db4*安装相应软件包。

编辑PAM配置文件

vim /etc/pam.d/vsftpd

将所有内容注释后,添加如下两行:

auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

3.建立虚拟用户的访问权限
建立虚拟用户virtual并设置目录及权限

useradd –d /home/ftp virtual
chmod 700 /home/ftp

4.建立配置文件
VSFTPD主配置文件中修改:

local_enable=YES                //PAM方式此处必须为YES
guest_enable=YES                //启用虚拟用户
guest_username=virtual          //映射到本地virtual用户

修改完成后,保存退出,重启服务:

service vsftpd restart

虚拟FTP服务

虚拟FTP服务的配置步骤:

  1. 创建虚拟FTP服务器的根目录
  2. 增加虚拟FTP服务器的匿名用户
  3. 创建虚拟FTP服务器的配置文件

以上步骤的具体实现:
1.创建虚拟FTP服务器的根目录
创建/var/newftp/pub,并将目录所有者设为root,权限为755

mkdir –p /var/newftp/pub
chmod 755 /var/newftp –R

2.增加虚拟FTP服务器的匿名用户账号

useradd –d /var/newftp –M newftp

原来FTP服务匿名用户账号为ftp
虚拟FTP服务匿名用户账号为newftp

3.创建虚拟FTP服务器的配置文件
复制原来的vsftpd.conf作为虚拟FTP服务器的配置文件,并修改相关参数

cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd2.conf
listen=YES
listen_address=192.168.1.13
ftp_username=newftp

在原来的vsftpd.conf中添加

listen_address=192.168.1.11

FTP客户端的基本使用---Linux学习笔记相关推荐

  1. Linux学习笔记12——配置ftp、squid、Tomcat、Samba、MySQL主从

    Linux学习笔记12 Linux学习笔记12 配置FTP服务 配置pure-ftpd 开机启动 上传下载文件 配置vsftpd CentOS 70安装配置Vsftp服务器 搭好vsftp之后出现55 ...

  2. Linux学习笔记(3)- 网络编程以及范例程序

    Linux学习笔记(3)- 网络编程以及范例程序 前言 网络介绍 IP地址的介绍 端口和端口号的介绍 通信流程 socket介绍 TCP介绍 python3编码转换 TCP客户端程序开发流程 多任务版 ...

  3. (零)我为什么要写Linux学习笔记?

    我对Linux有强烈的好奇心,兴趣:写学习笔记会让我有成就感:我记忆力实在不好.好吧,其实真正原因是:如果我能把自己学到的知识简明扼要的讲出来,写出来,那便证明我真的学懂了我想学的知识.没时间怎么办? ...

  4. Linux学习笔记--导航(CentOS 7)

    Linux学习笔记1 Linux学习笔记2 Linux学习笔记3 Linux学习笔记4 Linux学习笔记5 Linux学习笔记6 Linux学习笔记7 Linux学习笔记8 Linux学习笔记9 L ...

  5. Linux学习笔记13

    Linux学习笔记13 Linux学习笔记13 配置Nagios 基本介绍 Nagios安装 - 服务端 Nagios安装 - 客户端 监控中心添加被监控主机 配置文件的简单说明 继续添加需要服务端通 ...

  6. Linux学习笔记 文件服务Vsftp详细介绍

    Linux学习笔记 文件服务Vsftp详细介绍 知识点: 1.FTP使用TCP连接和TCP端口 2.在进行通信时,FTP需要建立两个TCP连接: 一个用于控制信息,TCP端口号缺省为21 一个用于数据 ...

  7. Linux学习笔记---使用BusyBox创建根文件系统(一)

    目录 下载BusyBox 修改makefile 添加中文支持 编译busybox 下载BusyBox BusyBox 可以在其官网下载到,官网地址为:https://busybox.net 打开官网后 ...

  8. Linux学习笔记---移植官方linux步骤(二)

    目录 修改网络驱动 修改 LAN8720 的复位 以及网络时钟 引脚驱动 修改fec1和fec2节点pinctrl-0属性 修改LAN8720A的PHY地址 修改 fec_main.c 文件 配置 L ...

  9. Linux学习笔记---移植官方linux步骤(一)

    使用的开发板是正点原子IMX6U-MINI  EMMC512M的开发板,这个板子也是移植的NXP官方linux,所以这里就直接从NXP官方的linux移植. 这里所说的移植,其实不是自己编写驱动文件等 ...

最新文章

  1. img 在video上面_HTML,img,video无法铺满屏幕解决方法,同视频做网页背景无法全屏的解决方法...
  2. ARM嵌入式操作系统启动
  3. 自己动手用gensim 生成句子的word2vec 向量
  4. 第一次使用考试宝进行作业练习
  5. xi mapping function-concat
  6. mysql57 修改root密码,MySQL 5.7.x修改root默认密码(CentOS下)
  7. 都说AIOps是必然趋势,那实践AIOps之前需要做些什么准备?\n
  8. 思考:Linux Kernel的中断处理函数中是否会被其它程序(中断/异常)打断?
  9. Spring AOP两种使用方式以及如何使用解析
  10. IDEA项目目录里下找不到src,但是src确实存在的的解决方案
  11. C ++标准是否允许未初始化的bool使程序崩溃?
  12. 远程电脑备份与还原数据库
  13. 弗洛伊德的兔子与乌龟
  14. 什么是数字化的马太效应
  15. 遥感测深方法综述(二)CZMIL 机载LiDAR 测深系统
  16. idea 启动参数设置
  17. 应广单片机例程EERPOM页写中一个BUG
  18. 用matlab求互谱cpsd,互相关函数Rxy(C)
  19. Unity热更新系列之一: bundle打包和打包策略
  20. 关于flex布局和九宫格布局的实现

热门文章

  1. Mybatis传入多参问题
  2. js动态添加meta标签
  3. express中get和post的区别
  4. vue8种组件通信方式
  5. element UI 制作模糊搜索框
  6. SVD分解.潜语义分析.PythonCode
  7. Spring Boot 动态注入的两种方式
  8. java:我们对Iterator理解错了
  9. MySQL实现差集(Minus)和交集(Intersect)
  10. 精美jQuery插件及源码 前端开发福利