我见过最好的Linux教程——FTP文件传输协议原来这么简单
会当凌绝顶,一览众山小。
FTP服务概述
FTP一个专门用来做文件传输的服务,FTP是File Transfer Protocol(文件传输协议)的英文简称,用户internet上控制文件的双向传输,同时他还是一个应用程序,用户也可以通过自己的客户机与世界所有运行ftp协议的服务器相连接,访问服务器上大量的程序和数据。
FTP的工作原理
FTP的诞生大大简化了文件传输的复杂性,它能够让文件通过网络从一台主机传送到另一台主机上面,却不受计算机和操作系统类型的限制,无论是pc 服务器 大型机 还是dos windows Linux 操作系统,只要双方都支持ftp协议,就可以方便,可靠的文件传送。
匿名用户详解
ftp不同于www ,想要通过ftp传输文件,首先要求登录到服务器上面,然后才能进行文件的传输,这对于很多公开提供软件下载的服务器来说非常的不方便,于是匿名用户就此诞生,通过使用一个共同用户名(Anonymous)的账户密码无限制的管理策略,让任何用户都可以很方便的在这些服务器上面下载。
FTP服务的两大模式
ftp有两种工作模式,主动传输模式和被动传输模式
通俗的来讲主动传输模式下的FTP服务器是主动连接客户机的数据端口来进行文件的传输,而被动传输模式下的FTP服务器是 被动的等待客户的来连接服务器的数据端口来进行文件的传输。被动传输模式下主适用与开启防火墙之后的客户机访问外界FTP服务器时的情况,因为在这种情况下防火墙通常配置为不允许外界访问此客户机,而只允许开启防火墙之后的服务器发起的连接通过,因此使用被动传输模式就可以很好的进行工作。
VSFTP主配置文件的详解
我会对文件中默认自带的配置进行解释,vsftp的高级配置我会再为大家讲的。
12 anonymous_enable=YES ##控制是否允许匿名用户登入,YES 为允许匿名登入,NO 为不允许。默认值为YES。 15 local_enable=YES ##允许本地用户登录 18 write_enable=YES ##是否允许登陆用户有写权限。属于全局设置,默认值为YES。 22 local_umask=022 ##设置本地用户上载文件的umask值为022 27 #anon_upload_enable=YES ##允许匿名登入者有上传文件(非目录)权限,只有在write_enable=YES时,此项才有效 31 #anon_mkdir_write_enable=YES ##允许匿名登入者有新增目录的权限,只有在write_enable=YES时,此项才有效。 35 dirmessage_enable=YES ##用户首次进入一个新目录时,允许得到欢迎信息 39 xferlog_enable=YES ##允许产生日志 42 connect_from_port_20=YES ##使用20号端口作为建立数据连接时的源端口 47 #chown_uploads= ##YES设置是否改变匿名用户上传文件(非目录)的属主。 48 #chown_username=whoever ##设置匿名用户上传文件(非目录)的属主名。建议不要设置为root。 52 #xferlog_file=/var/log/xferlog ##设置日志文件存放路径 56 xferlog_std_format=YES ##日志采用标准xferlog格式 59 #idle_session_timeout=600 ##设置多长时间不对FTP服务器进行任何操作,则断开该FTP连接,单位为秒 62 #data_connection_timeout=120 ##设置建立FTP数据连接的超时时间,单位为秒 85 #ftpd_banner=Welcome to blah FTP service.##这里用来定义欢迎话语的字符串 89 #deny_email_enable=YES ##若是启动这项功能,则必须提供一个档案banner_emails,内容为email address。 若是使用匿名登入,则会要求输入email address,若输入的email address 在此档案内,则不允许进入。 90 # (default follows) 91 #banned_email_file=/etc/vsftpd/banned_emails ##设置存放匿名用户邮件密码列表的文件 96 #chroot_local_user= ##YES指定用户列表文件中的用户是否允许切换到上级目录 97 #chroot_list_enable= ##YES是否启用chroot_list_file配置项指定的用户列表文件 98 # (default follows) 99 #chroot_list_file=/etc/vsftpd/chroot_list ##该文件用于控制哪些用户可以切换到用户家目录的上级目录 105 #ls_recurse_enable=YES ##允许登入者使用ls –R(可以查看当前目录下子目录中的文件) 110 listen=YES ##允许监听端口 115 #listen_ipv6=YES ##监听IPv6端口 117 pam_service_name=vsftpd ##指定PAM服务配置文件的名字,再/etc/pam.d目录 118 userlist_enable=YES ##使userlist_file选项生效,定义一个用户列表 119 tcp_wrappers=YES ##连接请求转有TCP_Wrappers完成访问控制
以上就是就是vsftp主配置文件默认的参数了,其他需要添加的参数后期我会为大家再详细讲解的
服务器配置完成之后我们就可以进行客户端的连接访问了
操作如下:
我们找一台服务器直接安装ftps然后重启就可以了,vsftp里的默认设置就可以支持我们不做限制的进行文件传输。
[root@Demo ~]# yum install -y vsftpd [root@Demo ~]# service vsftpd restart Shutting down vsftpd: [FAILED] Starting vsftpd for vsftpd: [ OK ] [root@Demo ~]#
在局域网中的一台客户机中安装ftp
[root@Client1 ~]# yum install -y ftp
安装完成我们直接请求连接ftp服务器(因为我们开启了ftp的匿名用户)我们直接使用匿名用户登录密码是空。
[root@Client1 ~]# ftp 192.168.0.101 Connected to 192.168.0.101 (192.168.0.101). 220 (vsFTPd 2.2.2) Name (192.168.0.101:root): anonymous 331 Please specify the password. Password: 230 Login successful. Remote system type is UNIX. Using binary mode to transfer files. ftp>
登录成功,是不是很简单呢,后面关于VSFTP的高级配置,比如多站点,虚拟用户目录访问控制等,关注我,我会在后面为大家讲解的。
制作不易,转载请注明出处。
- 我见过最好的Linux教程——超详细用户组的实例操作命令
- 我见过最好的Linux教程——关于用户的实战操作命令以及详细参数详解
- 原来用U盘安装LINUX操作系统是这么的简单
- 原来只需三步就可离网激活Linux!居然这么简单
- Linux搭建ftp服务器简单教程及使用方法
- 我见过最好的Linux教程——史上最详细的用户详解(用户配置文件详解)
- 原来在linux上切换jdk的版本是这么简单
- 我见过最好的vsftpd配置教程
- 原来这么简单(2)
- MAC下最好用的抓包工具charles简单操作教程,charles mac入门
- 在linux搭建最简单的ftp
- 3G挂Q技术笔记(登陆QQ原来这么简单)
- Linux下Apache 配置详解(最好的APACHE配置教程)
- linux ftp 服务器搭建教程(虚拟用户)
- Linux(1)——在Linux下安装Nodejs(详细教程,包会),并成功创建一个简单的服务器
- DAO层原来可以这么简单 FastQuery使用手册.
- Linux下解压:tar、rar、7z命令简单易懂的教程
- 简单FTP服务器的搭建(linux 、windows)
- Linux搭建FTP服务器、配置和实现简单通过客户端连接的例子
- Nginx Linux 安装 教程 就是这么简单 基于1.12X