FTP服务搭建与配置

FTP介绍

当使用跳板机连接时,rz工具就不好使用,此时FTP可以解决该问题。

FTP(file transfer protocol)文件传输协议,用于在Internet上控制文件的双向传输。FTP主要作用是让用户连接一个远程计算机(这些计算机上运行着FTP服务器程序)查看远程计算机有哪些文件,然后把文件从远程计算机上拷贝到本地计算机,或把本地文件传送到远程计算机。
该服务在小公司用的比较多,由于FTP服务的安全性较差,所以大公司不使用该服务。

使用vsftpd搭建ftp

安装vsftpd工具

centos中默认自带vsftpd安装包。

[root@shuai-01 ~]# yum install -y vsftpd

创建用户:

[root@shuai-01 ~]# useradd -s /sbin/nologin virftp
//-s 指定shell 不能登录

vsftpd可以使用系统级别的用户进行登录,但是这样做不安全,所以需要使用vsftpd创建一个虚拟用户。在此创建一个系统普通用户的作用是使vsftpd的虚拟用户来进行映射,然后完成数据的传输。

编辑密码文件

[root@shuai-01 ~]# vim /etc/vsftpd/vsftpd_login

testuser1
shuai
user1
111111

奇数行为用户名,偶数行为密码,多个用户就写多行
这里,1,3行尾用户名 2 ,4行为密码

设置密码文件权限

[root@localhost ~]# chmod 600 /etc/vsftpd/vsftpd_login

将密码文本文件转化成二进制文件

[root@localhost ~]# db_load -T -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db

创建虚拟用户目录和虚拟用户配置文件

[root@localhost ~]# mkdir /etc/vsftpd/vsftpd_user_conf
[root@localhost ~]# cd /etc/vsftpd/vsftpd_user_conf

定义虚拟用户配置文件时,文件名需要和密码文件定义的用户名保持一致,我这里定义的为testuser1

[root@localhost vsftpd_user_conf]# vim testuser1

配置如下:

local_root=/home/virftp/testuser1                #虚拟用户家目录
anonymous_enable=NO         #是否允许匿名用户   
write_enable=YES            #是否可写
local_umask=022
anon_upload_enable=NO       #是否允许匿名用户上传
anon_mkdir_write_enable=NO  #是否允许匿名用户创建目录并且可写
idle_session_timeout=600    #链接ftp超时时间
data_connection_timeout=120 #数据传输的超时时间
max_clients=10              #最大的客户端

在此保持虚拟用户配置文件和虚拟用户名称一致。

创建虚拟用户家目录

[root@shuai-01 vsftpd_user_conf]# mkdir /home/virftp/testuser1

家用户目录下,创建一个文件

[root@localhost vsftpd_user_conf]# touch /home/virftp/testuser1/test.txt

改一下全限

[root@localhost vsftpd_user_conf]# chown -R virftp:virftp /home/virftp

定义密码文件路径

[root@shuai-01 vsftpd_user_conf]# vim /etc/pam.d/vsftpd 

在最前面加上

auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

这里写图片描述

编辑vsftpd主配置文件

[root@localhost ~]# vim /etc/vsftpd/vsftpd.conf


将anonymous_enable=YES 改为 anonymous_enable=NO
 将#anon_upload_enable=YES 改为 anon_upload_enable=NO 
 将#anon_mkdir_write_enable=YES 改为 anon_mkdir_write_enable=NO

  再增加如下内容
chroot_local_user=YES
guest_enable=YES            #开启虚拟用户
guest_username=virftp       #映射系统用户
virtual_use_local_privs=YES
user_config_dir=/etc/vsftpd/vsftpd_user_conf
allow_writeable_chroot=YES

[root@localhost ~]# systemctl start vsftpd

客户端测试

如果在Windows系统进行测试,可以在Windows安装filezilla软件。在Linux中测试,安装lftp工具。

filezilla工具 lftp工具

# yum install -y lftp

用法:

[root@localhost ~]# lftp ggg@127.0.0.1

口令:

#登录
lftp testuser1@127.0.0.1:~> ls      
drwxr-xr-x    2 1002     1002           22 Aug 24 10:19 testuser1
lftp testuser1@127.0.0.1:/> ?
#查询在lftp中可执行的命令
#常用命令:put、get
lftp testuser1@127.0.0.1:/> get testuser1/adai.txt
lftp testuser1@127.0.0.1:/> quit

xshell使用xftp传输文件

下载Xshell的Xftp插件:
快捷键:Ctrl + Alt + F

这里写图片描述

这里写图片描述

这里写图片描述

进邮箱里,点击链接

这里写图片描述

就可以下载Xftp5.exe这个包

这里写图片描述

这里写图片描述

在Xshell登录状态,快捷键:Ctrl + Alt + F 弹出XFtp
默认状态:左边是Windows系统桌面,右边centos系统用户夹目录
这两个系统,可以互传文件!!
这里写图片描述

使用pure-ftpd搭建ftp服务

安装epel-release和pure-ftpd:

[root@centos7 ~]#  yum install -y pure-ftpd

编辑pure-ftpd.conf配置文件:

vim /etc/pure-ftpd/pure-ftpd.conf

找到pureftpd.pdb这行,把行首的#删除

这里写图片描述

关闭vsftpd服务(下面打开pure-ftpd服务 也需要占用21端口):

[root@centos7 ~]# systemctl stop vsftpd
[root@centos7 ~]# systemctl start pure-ftpd

查看pure-ftpd服务端口号:

[root@centos7 ~]# netstat -nutlp| grep 21
tcp        0      0 0.0.0.0:21              0.0.0.0:*               LISTEN      15034/pure-ftpd (SE 
tcp6       0      0 :::21                   :::*                    LISTEN      15034/pure-ftpd (SE 

创建一个测试目录ftp:

[root@centos7 ~]# mkdir /data/ftp

创建一个普通用户,-u指定uid:

[root@centos7 ~]# useradd -u 1010 pure-ftp

把测试目录ftp,属主属组改为pure-ftp:

[root@centos7 ~]# chown -R pure-ftp:pure-ftp /data/ftp

创建虚拟用户,指定映射的系统用户,指定虚拟用户夹目录:

[root@centos7 ~]# pure-pw useradd ftp_usera -u pure-ftp -d /data/ftp
Password: 
Enter it again: 


[root@centos7 ~]# pure-pw mkdb #必须执行这步,建立数据
[root@centos7 ~]#  touch /data/ftp/123.txt
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值