通过网络传输数据的手段
1. ssh
2. http
3. nfs
4. rsync
5. ftp
6. samba ftp的简介:
1. ftp是应用层协议,是基于TCP
2. 使用21端口 FTP的模型
-------- 命令连接 ---------
| Client | <-------------------> | Server |
| | | |
| | 数据连接 | |
| | <-------------------> | |
--------- ---------- 1)命令连接(控制连接)
这个连接,始终是打开的。
客户端,通过这个连接,来发送命令。 2)数据连接
用来传输数据的。
数据连接,是按需打开的。
在传输数据时,才打开数据链接。 了解ftp服务器的“数据连接"的模式
1)主动模式
服务器主动连接客户端。
2)被动模式
客户端主动连接服务器。 FTP的服务器端程序
1) vsftpd
very secure ftp daemon
非常安全的ftp服务器。
2) proftpd
3) pureftpd 客户端ftp程序
1)命令行界面
ftp
lftp
2) 图形界面
gftpd 安装: yum install vsftpd
说明: vsftpd软件,包含了客户端ftp vsftpd的主要程序:
1) /etc/vsftp 配置文件目录
2) /etc/init.d/vsftpd 服务程序的脚本
3) /usr/sbin/vsftpd 主程序 启动vsftpd
# /etc/init.d/vsftpd start

# service vsftpd start 设置为开机启动
# chkconfig vsftpd on 关闭防火墙(先关闭,用于测试)
在生产环境中,需要打开防火墙,再对指定端口开放。
# /etc/init.d/iptables stop 安装ftp客户端
# yum install ftp
说明:也可以直接安装服务器端的vsftpd 使用ftp客户端
# ftp ftp服务器端的IP地址
提示输入用户名和密码 用户名:
ftp或anonymous 表示使用“匿名用户”登录。
如果登录失败,需要检查服务器的vsftpd的配置文件 还可以输入其他系统用户,或普通用户。 vsftpd的配置文件
/etc/vsftpd/vsftpd.conf anonymous_enable=YES
表示允许匿名用户登录,默认是不允许匿名用户登录。 local_enable=YES
表示是否允许系统用户和普通用户以ftp登录 write_enable=YES
是否允许系统用户和普通用户上传文件 anon_upload_enable=YES
是否允许匿名用户上传文件 anon_mkdir_write_enable=YES
是否允许匿名用户创建目录 dirmessage_enable=YES
当dirmessage_enable为YES时,通过ftp进入某个目录后,
就会自动的把该目录下的.message文件输出。
目的在于:自动提示。 xferlog_enable=YES
是否使用传输日志,如果为YES,则所有数据传输,都会被记录到传输日志文件中。 xferlog_file=....
用来指定传输日志的文件 chown_uploads=YES
是否允许改变文件上传后的属主。
疑问:设置为NO之后,数组被修改为文件上传者。 chown_username=
表示文件上传后,文件的所有者修改为谁 //待确认!
chroot_list_enable=YES 是否把chroot_list_file中指定的用户以ftp登录后,被限制在其家目录中访问。
而且把他的家目录显示为"/"目录。
chroot_list_file= userlist_enable=YES
userlist_deny=NO
如果userlist_enable=YES,
那么,userlist_deny将生效:
如果userlist_deny=YES, 那么/etc/vsftpd/user_list文件中的用户名,将不能ftp登录
如果userlist_deny=NO, 那么/etc/vsftpd/user_list文件中的用户名, 可以ftp登录 使用ftp时,有两个当前目录:
1)客户端的当前目录 就是使用ftp登录之前的当前目录
可以使用lcd命令来改变。
2)服务器端的当前目录 使用匿名用户登录ftp服务器
使用匿名用户登录时(用户名输入为ftp或anonymous)
使用pwd显示的是 /
注意,此时的/并不是服务器上的/
而是 /var/ftp 1. 下载
把ftp服务器上的文件下载到本地客户端
把服务器上的资源下载本地客户端的当前目录 # get a.txt
表示把服务器当前目录下的a.txt 下载到客户端的当前目录下。 # get pub/a.txt
表示把服务器当前目录下的pub/a.txt下载到客户端的当前目录下的pub目录下! 2. 上传
默认情况下,是禁止匿名用户使用ftp上传文件。
匿名用户不能在“根目录”(/var/ftp)下上传文件 匿名用户上传文件,需要:
1)把vsftpd的配置文件中的anonymous_enable设置为YES
anonymous_enable=YES 2)在服务器的对应目录中对ftp用户授权
setfacl -m u:ftp:rwx /var/ftp/upload
表示匿名用户可以在/var/ftp/upload目录下上传文件了 非匿名用户的使用
以下用户都是指vsftpd服务器端的用户 1)root用户
默认情况下,禁止root用户通过ftp登录
为什么? 因为vsftpd是使用pam来实现用户认证(登录检查)
而pam的配置文件 /etc/pam.d/vsftpd中:
---------------------------------------------------------------------------------------------
uth required pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=su
---------------------------------------------------------------------------------------------
表示/etc/vsftpd/ftpusers文件中的所有用户不能通过ftp登录 如果把root从该文件中删除,那么就可以使用root用户ftp登录。
但是,实际生产环境中,不应该允许root用户ftp登录, 因为不安全! 2) 使用普通用户
使用普通用户的用户名和密码就可以登录。
登录后的,默认的当前目录,就是该 普通用户的家目录 此时,ftp> pwd
所显示的路径中的/就是服务器端真正的根目录 直接使用get下载,put上传 1)普通用户登录以后,默认的当前目录是,该用户的家目录
2)上传和下载时,都要把当前目录切换到合适的位置。
客户端的当前目录使用lcd切换,服务器端的当前目录使用cd切换 3)使用系统用户
uid为1-499, 而且不能用来登录系统 用法和普通用户类似。 ftp客户端中有很多命令
ftp > help
可以显示能够使用的命令 最常用的命令:
put
get
cd
lcd
ls

  

FTP安装及使用的更多相关文章

  1. [转]CentOS 5.5下FTP安装及配置

    一.FTP的安装 1.检测是否安装了FTP : [root@localhost ~]# rpm -q vsftpd vsftpd-2.0.5-16.el5_5.1 否则显示:[root@localho ...

  2. FTP 安装配置

    FTP 安装配置: 一.基础操作 yum install -y ftp yum install -y vsftpd service iptables stop chkconfig iptables o ...

  3. centos 7 linux系统默认ftp安装配置和部署(详细讲解)

    小生接触 Linux 系统时间不长,想解决linux系统ftp安装及部署问题,折腾了大半天,终于弄出来了,将各路高手的配置方法综合了一下,如有不对之处,欢迎各位看客指正,感谢! 一.声明: 本文采用操 ...

  4. 阿里云服务器: centos7 ftp安装

    阿里云服务器: centos7 ftp安装 ftp需要您参考下面链接和附件开放安全组20.21.1024-65535 后查看是否正常. 配置步骤如下, 1, 如果没有安装ftp,需要先安装 yum - ...

  5. filezilla server FTP 安装报错 "could not load TLS network. Aborting start of administration interface"

    filezilla server FTP 安装报错   "could not load TLS network. Aborting start of administration inter ...

  6. [Windows Server 2003] IIS自带FTP安装及配置方法

    ★ 欢迎来到[护卫神·V课堂],网站地址:http://v.huweishen.com★ 护卫神·V课堂 是护卫神旗下专业提供服务器教学视频的网站,每周更新视频.★ 本节我们将带领大家:IIS6.0自 ...

  7. linux下的FTP安装及调优

    前言: 在之前交换平台的开发中,FTP的各种操作算是核心功能点. 在FTP的开发中,遇到了不少坑. 如FTP需要设置被动模式,否则10M以上的包可能会上传失败. 如FTP需要设置囚牢模式,否则访问的文 ...

  8. Linux ftp安装

    ftp安装部分,操作步骤如下: 可以使用yum命令直接安装ftp # yum install vsftpd ftp服务的开启与关闭命令: 开启:# /bin/systemctl start vsftp ...

  9. Linux下FTP安装与配置

    第一部分 .note-content {font-family: 'Helvetica Neue', Arial, 'Hiragino Sans GB', STHeiti, 'Microsoft Ya ...

  10. FTP安装与使用

    1.查看ftp是否已安装:rpm -qa | grep vsftpd 2.安装ftp:rpm -ivh vsftpd 或yum install vsftpd 3.匿名用户配置文件主要参数: anony ...

随机推荐

  1. 从实例学习 Go 语言、"并发内容" 学习笔记及心得体会、Go指南

    第一轮学习 golang "并发内容" 学习笔记,Go指南练习题目解析.使用学习资料 <Go-zh/tour tour>.记录我认为会比较容易忘记的知识点,进行补充,整 ...

  2. Java学习day42

    继续刷力扣题

  3. docker进阶_docker-compose

    Docker-compose 为什么使用docker-compose 官方介绍 ​ Compose 是一个用于定义和运行多容器 Docker 应用程序的工具.使用 Compose,您可以使用 YAML ...

  4. python基础练习题(题目 阶乘求和)

    day17 --------------------------------------------------------------- 实例025: 阶乘求和 题目 求1+2!+3!+-+20!的 ...

  5. Java 18 新特性:使用Java代码启动jwebserver

    前几天分享了Java 18 新特性:简单Web服务器的jwebserver命令行功能. 今天换一种方式,使用Java代码来实现一个静态资源服务器. 详细步骤我录了个视频放到B站了,感兴趣的小伙伴可以点 ...

  6. [AcWing 2816] 判断子序列

    点击查看代码 #include<iostream> using namespace std; const int N = 1e5 + 10; int a[N], b[N]; int mai ...

  7. insert语句生成的存储过程

    问题: 1.如何配置数据库数据: 方式一:图形界面点击输入数据,导出成sql. 缺点:表多,数据多的时候非常繁琐,字段含义需要另外开窗口对照. 方式二:徒手写或者修改已有语句:insert table ...

  8. Linux中几个正则表达式的用法

    开源Linux 长按二维码加关注~ 上一篇:盘点提高国内访问Github的速度的9种方案 正则表达式就是用于匹配每行输入的一种模式,模式是指一串字符序列.拥有强大的字符搜索功能.也非常方便的搜索过滤出 ...

  9. Python技法:实用运维脚本编写(进程/文件/目录操作)

    Python在很大程度上可以对shell脚本进行替代.笔者一般单行命令用shell,复杂点的多行操作就直接用Python了.这篇文章就归纳一下Python的一些实用脚本操作. 1. 执行外部程序或命令 ...

  10. 【Azure 环境】【Azure Developer】使用Python代码获取Azure 中的资源的Metrics定义及数据

    问题描述 使用Python SDK来获取Azure上的各种资源的Metrics的名称以及Metrics Data的示例 问题解答 通过 azure-monitor-query ,可以创建一个 metr ...