Centos7.5 yum安装搭建ftp服务器并连接本地ftp实现文件传输

本文详细介绍了如何在Linux系统中通过yum命令安装vsftpd,并通过创建虚拟用户、设置权限和配置文件来搭建FTP服务器。内容包括用户及密码管理、目录配置、vsftpd主配置文件修改、防火墙与selinux设置,以及启动和测试FTP服务。此外,还强调了文件传输时对用户权限的检查。
摘要由CSDN通过智能技术生成

一、安装

1、yum命令安装

yum -y install vsftpd

二、使用vsftpd搭建ftp

1、创建虚拟用户,并映射到系统普通用户来使用vsftpd

useradd -s /sbin/nologin virftp

2 、创建虚拟用户的密码文件

testuser1
123456
user1
654321

3、权限设置

#为了确保密码文件的安全,防止所有的用户都可以读取
chmod 600 /etc/vsftpd/vsftpd_login

4、将文本的密码文件装换成二进制的密码文件

#增加安全性
db_load -T -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db

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

mkdir /etc/vsftpd/vsftpd_user_conf
cd /etc/vsftpd/vsftpd_user_conf
#配置userstest1用户
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
#连接ftp超时时间(秒)
idle_session_timeout=600
#数据传输的超时时间(秒)
data_connection_timeout=120
#最多允许同时几个终端连接
max_clients=10

#创建一个测试文件
mkdir /home/virftp/testuser1
touch /home/virftp/testuser1/ftptest.txt

同理创建user1的目录和配置文件

vim user1
#配置内容:
#指定虚拟用户的家目录
local_root=/home/virftp/user1
#是否允许匿名用户
anonymous_enable=NO
#是否可写
write_enable=YES
#创建新文件目录的默认权限
local_umask=022
#是否允许匿名用户上传
anon_upload_enable=NO
#是否允许匿名用户创建目录和写
anon_mkdir_write_enable=NO
#连接ftp超时时间(秒)
idle_session_timeout=600
#数据传输的超时时间(秒)
data_connection_timeout=120
#最多允许同时几个终端连接
max_clients=10

#创建一个测试文件
mkdir /home/virftp/user1
touch /home/virftp/user1/user1test.txt

6、修改家目录的主和组为virftp

chown -R virftp:virftp /home/virftp

7、定义认证的文件/etc/pam.d/vsftpd

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

在这里插入图片描述
8、编辑 /etc/vsftpd/vsftpd.conf 主配置文件

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

在这里插入图片描述

三、连接本地ftp

1、配置防火墙

#加入21端口
firewall-cmd   --zone=public  --add-port=21/tcp  --permanent
#重启防火墙
systemctl restart firewalld.service

2、关闭selinux服务

vim /etc/selinux/config
将  SELINUX=enforcing   改为   SELINUX=disabled 

在这里插入图片描述
3、启动vsftpd服务

#启动服务
systemctl start vsftpd
#查看进程
ps aux |grep vsftpd
#查看监听的端口
netstat -lntp |grep vsftpd

4、连接配置
在这里插入图片描述
在这里插入图片描述
5、成功
在这里插入图片描述
在这里插入图片描述
注意:如果不能实现文件传输,记得查看用户的权限

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值