在虚拟机上搭建FTP服务器

1.FTP简介

ftp(File Transfer Protocol文件传输协议)是基于TCP/IP 协议的应用层协议,用于文件的传输,包括ftp服务器(或服务端)和ftp客户端
ftp客户端与服务器创建网络连接,请求登录服务器,登录成功后,就可以进行文件传输,主要包括下载文件和上传文件两种操作。

2.具体搭建步骤

配置虚拟机的网络设置,确保使用桥接模式或NAT模式

安装FTP服务器软件,如FileZilla Server或vsftpd。(Vsftp是一个在Linux操作系统上的运行的FTP服务端程序,具有完全开源及免费、速率高、安全性好,支持IPv6、虚拟用户等其他FTP服务端软件不具有的功能。

# yum -y install vsftpd

安装ftp命令
# yum -y install ftp

安装FTP服务器软件,如FileZilla Server或vsftpd。(Vsftp是一个在Linux操作系统上的运行的FTP服务端程序,具有完全开源及免费、速率高、安全性好,支持IPv6、虚拟用户等其他FTP服务端软件不具有的功能。

# systemctl start vsftpd  \\开启服务
 
# systemctl enable vsftpd  \\设置为开机启动

#systemctl stop firewalld.service  \\关闭防火墙
 
#systemctl disable firewalld.service  \\禁止防火墙开机启动
 
#firewall-cmd --reload  \\重启防火墙

设置用户登录的不同方式
Vsftpd程序提供的FTP服务分为三种登录认证方式,分别为匿名访问、本地用户和虚拟用户

匿名访问:任何用户无需验证即可登录FTP服务端

本地用户:需要使用FTP服务器中的用户、密码信息

虚拟用户:创建独立的FTP账号信息

安全程度由前到后依次递增,虚拟用户是最安全的

新建测试文件并编辑主配置文件
# touch /var/ftp/pub/sample.tar
# vi /etc/vsftpd/vsftpd.conf

重启FTP服务器
# systemctl restart vsftpd
# systemctl stop firewalld

关闭防火墙和selinux
[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# setenforce 0

验证:

Win+R 打开运行 输入ftp://192.168.3.10

进入pub目录

配置

1)先添加用户信息

# 创建文件目录
mkdir -p /data/ftp/ftpuser
# 为该目录配置权限
chmod -R 755 /data/ftp/ftpuser

# 新建用户组ftp
groupadd ftp
# 指定用户主目录:/data/ftp/ftpuser -M
# 指定用户的shell: -s /usr/bin/nologin
# 新建用户ftpuser,并且设置不支持ssh系统登录,只能登录ftp服务器
# -g 用户组; -d 指定家目录; -s 不能登陆系统; -M 不创建家目录
useradd -g ftp -d /data/ftp/ftpuser -M -s /usr/bin/nologin ftpuser

==============================================================
# 如果要恢复ftpuser用户的ssh登录(可登入CentOS7系统),执行下面的语句即可
usermod -s /bin/bash ftpuser
# echo "新密码" | passwd --stdin 用户名
echo "ftppassword" | passwd --stdin ftpuse

(2)修改配置文件,路径/etc/vsftpd/ 下的文件

[root@localhost ~]# vim /etc/vsftpd/vsftpd.conf   #打开配置文件 
 # 修改这一行代码
   anonymous_enable=YES 改为 anonymous_enable=NO    # 禁止匿名登录
 # 添加一行代码
   allow_writeable_chroot=YES                       # 允许登录用户的写入操作
 # 在配置文件中找到以下几行代码, 去掉注释(去掉 "#"号)
   chroot_list_enable=YES                           # 表示对用户访问进行限制
   chroot_list_file=/etc/vsftpd/chroot_list         # 对chroot_list下用户限制
   chroot_local_user=YES                            # 允许本地账户登录 
[root@localhost ~]#  vim /etc/vsftpd/chroot_list     
 #  增加一行代码 (即是允许登录的用户)
    fdwftp    
 # ESC + :wq     //保存退出
[root@localhost ~]#  systemctl restart vsftpd.service #重启服务

  • 8
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值