ftp介绍和搭建
2018-08-27 18:56
441 查看
FTP介绍
FTP是File Transfer Protocol(文件传输协议的英文简称),用于internet上控制文件双向传输,ftp主要作用就是让用户连接一个远程计算机(安装了FTP程序),并查看远程计算机中的文件,可以把远程计算机中的文件复制到本地计算机中,或者把文件传输到远程计算机当中。什么情况下使用FTP;在远程终端中操作linux时,有时候我们需要传输一个很大的文件到服务器,或者需要从服务器下载一个很大的文件。通常我们使用rzsz命令就可以满足大部分需求,但是当文件大于4GB以上时,rzsz会不支持大文件传输,这时候rzsz这个命令就无能为力了。我们就需要使用一个能够传输大文件的传输协议,这个就是文件传输协议,即FTP传输工具
FTP因为安全性较差,大的企业中应用到的地方不多,因为大企业都会有自己的一套传输控制的方案
使用vsftp搭建ftp服务
安装vsftpd[root@aaa /]# yum install -y vsftpd 已加载插件:fastestmirror base | 3.6 kB 00:00:00 epel/x86_64/metalink | 8.3 kB 00:00:00 epel 已安装: vsftpd.x86_64 0:3.0.2-22.el7 完毕!
创建运行的用户,vsftp可以使用系统级别的用户,该用户是系统用户,可以登录到系统当中,但是这样又会不安全,所以vsftp有虚拟用户这一设置,虚拟用户建立在真实用户上,虚拟用户可以登录访问vsftp,但是不可以登录系统,增加了安全性
创建真实用户和虚拟用户,虚拟用户在配置文件中定义,奇数行为用户名。偶数行为用户的密码,创建后保存退出
[root@aaa /]# useradd -s /sbin/nologin vsftpd [root@aaa /]# vim /etc/vsftpd/vsftpd_login user1 passwd1 ~
使用db_load转换用户密码配置文件 db_load -T -t hash -f 密码配置文件 转换后的文件.db
将虚拟用户配置文件权限设置为600只允许root可读,其他用户无权限访问,并把虚拟用户配置文件转为二进制的文件
[root@aaa /]# db_load -T -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db [root@aaa /]# ll -h /etc/vsftpd/ 总用量 36K -rw------- 1 root root 125 8月 3 2017 ftpusers -rw------- 1 root root 361 8月 3 2017 user_list -rw------- 1 root root 5.0K 8月 3 2017 vsftpd.conf -rwxr--r-- 1 root root 338 8月 3 2017 vsftpd_conf_migrate.sh -rw------- 1 root root 14 8月 18 09:05 vsftpd_login -rw-r--r-- 1 root root 12K 8月 18 09:10 vsftpd_login.db
创建虚拟用户配置文件,创建虚拟用户配置文件保存目录,并配置文件必须要和虚拟用户配置文件中的用户名保持一致
[root@aaa /]# mkdir /etc/vsftpd/vsftpd_user_conf [root@aaa /]# cd /etc/vsftpd/vsftpd_user_conf/ [root@aaa vsftpd_user_conf]# vim user1 local_root=/home/vsftpd/user1 指定虚拟用户的家目录,即可访问的目录 anonymous_enable=NO 是否禁止匿名用户访问,YES允许/NO拒绝 write_enable=YES 是否设置为只读 local_umask=022 创建的文件默认权限 anon_upload_enable=NO 匿名用户是否可写 anon_mkdir_write_enable=NO 匿名用户是否可读 idle_session_timeout=600 链接的最大时间,超过这个时间为超时链接,会被结束掉 data_connection_timeout=120 数据最大保持时间 max_clients=10 最大链接数
创建虚拟用户的访问目录,创建测试文件并将虚拟用户家目录设置为指定的所属主、所属组
[root@aaa vsftpd_user_conf]# mkdir /home/vsftpd/user1 [root@aaa vsftpd_user_conf]# touch /home/vsftpd/user1/index.html [root@aaa vsftpd_user_conf]# chown -R vsftpd:vsftpd /home/vsftpd/
在vsftp的模块配置文件中添加保存虚拟用户和用户密码的文件位置,指定支持库的位置。
加入如下两行,注意的是在lib64这个位置,是区分系统位数的,如lib32对应的是32位的操作系统
auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login [root@aaa vsftpd_user_conf]# vim /etc/pam.d/vsftpd #%PAM-1.0 auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login session optional pam_keyinit.so force revoke auth required pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed auth required pam_shells.so auth include password-auth
修改vsftpd的主配置文件,这个文件起到全局作用,其配置生效的优先级大于虚拟用户配置文件中的配置
在主配置文件中修改下列内容,取消注释并将YES改为NO
[root@aaa vsftpd_user_conf]# vim /etc/vsftpd/vsftpd.conf anonymous_enable=NO 禁止匿名用户访问 anon_upload_enable=NO 禁止匿名用户写入 anon_mkdir_write_enable=NO 禁止匿名用户读取
主配置文件中添加新的配置项
chroot_local_user=YES guest_enable=YES guest_username=vsftpd vurtual_use_local_privs=YES user_config_dir=/etc/vsftpd/vsftpd_user_conf allow_writeable_chroot=YES
相关文章推荐
- 55.exportfs命令 NFS客户端问题 FTP介绍与使用vsftpd搭建ftp
- 在win7系统下IIS搭建FTP服务器图文教程介绍
- Android中FTP服务器、客户端搭建以及SwiFTP、ftp4j介绍
- 十三周四次课 2018.01.17 exportfs命令、NFS客户端问题、FTP介绍、使用vsftpd搭建ftp
- exportfs命令、NFS客户端问题、FTP介绍、使用vsftpd搭建ftp服务
- 关于在本地搭建ftp服务器的介绍
- exportfs命令-NFS客户端问题实例-FTP介绍-使用vsftpd搭建ftp
- Android中FTP服务器、客户端搭建以及SwiFTP、ftp4j介绍
- Android中FTP服务器、客户端搭建以及SwiFTP、ftp4j介绍
- 14.4 exportfs命令 14.5 NFS客户端问题 15.1 FTP介绍 15.2/15.3 使用vsftpd搭建ftp
- 关于搭建ftp服务端的流程方法介绍
- FTP介绍及使用vsftpd搭建ftp服务(上)
- exportfs命令、NFS客户端问题、FTP介绍、使用vsftpd搭建ftp
- FTP(介绍,使用vsftpd搭建ftp,xshell使用xftp来传输文件)
- exportfs命令,NFS客户端问题,FTP介绍,使用vsftp搭建ftp
- Linux环境下快速搭建ftp服务器方法介绍
- linux学习第五十二篇: exportfs命令,NFS客户端问题,FTP介绍,使用vsftpd搭建ftp服务
- exportfs命令,NFS客户端问题,FTP介绍,使用vsftpd搭建ftp
- exportfs命令、NFS客户端问题、FTP介绍、使用vsftpd搭建ftp
- exportfs命令、NFS客户端问题、FTP介绍、使用vsftpd搭建ftp