如何在centos 7中安装和配置ftp服务器

在本文中,我们将学习如何使用“ vsftpd”在CentOs 7上配置FTP服务器。“ vsftpd”(非常安全的文件传输协议守护程序)是Linux系统上安全且非常快速的FTP服务器。

安装'vsftpd'

下面是安装“ vsftpd”的命令,我们需要一个root用户才能运行以下命令

# yum install vsftp ftp –y
Loaded plugins: fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile * base: ftp.iitm.ac.in
* extras: ftp.iitm.ac.in
* updates: ftp.iitm.ac.in
Setting up Install Process
No package vsftp available.
Resolving Dependencies
--> Running transaction check
---> Package ftp.x86_64 0:0.17-54.el6 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
=================================================================================================================================================================================
Package Arch Version Repository Size
=================================================================================================================================================================================
Installing:
vsftpd x86_64 2.2.2-21.el6 base 155 k ftp x86_64 0.17-54.el6 base 58 k
Transaction Summary
=================================================================================================================================================================================
Install 2 Package(s)
Total download size: 58 k
Installed size: 95 k
Is this ok [y/N]: y
Downloading Packages:
ftp-0.17-54.el6.x86_64.rpm , vsftpd-2.2.2-21.el6.x86_64.rpm | 58 kB 00:00
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Installing : ftp-0.17-54.el6.x86_64
Installing : vsftpd-2.2.2-21.el6.x86_64
Verifying : vsftpd-2.2.2-21.el6.x86_64
Verifying : ftp-0.17-54.el6.x86_64
Installed:
ftp.x86_64 0:0.17-54.el6, vsftpd.x86_64 0:2.2.2-21.el6
Complete!

配置'vsftpd'

我们需要编辑配置文件“ vsftpd”以保护FTP服务器的安全,因为默认情况下它将允许匿名用户登录并使用该服务器。

# vi /etc/vsftpd/vsftpd.conf

我们必须禁止匿名,身份不明的用户通过FTP访问文件;将Anonymous_enable设置更改为NO:

anonymous_enable=NO

通过将local_enable设置更改为YES,允许本地用户登录:

local_enable=YES

如果要允许本地用户写入目录,则将配置文件中的write_enable设置更改为YES:

write_enable=YES

本地用户将被“ chroot监禁”,并且他们将被拒绝访问本地用户到服务器的任何其他部分;将配置文件中的chroot_local_user设置更改为YES:

chroot_local_user=YES

以下是简单的配置文件供您参考-

anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
chroot_local_user=YES
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=YES
#listen_ipv6=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
Save the file with the command :wq .

重新启动vsftpd服务

我们需要重新启动“ vsftpd”服务,以便应用配置更改

# systemctl restart vsftpd

我们将'vsftpd'服务设置为在引导时启动,以下是启用'vsftpd'的命令。

# systemctl enable vsftpd

允许“ vsftpd”通过防火墙

我们必须允许默认的FTP端口,端口21,通过防火墙。

# firewall-cmd --permanent --add-port=21/tcp

我们需要重新加载防火墙,以便防火墙。

# firewall-cmd –reload

创建FTP用户的

我们将创建本地用户以外的FTP用户并分配主目录

在本教程中,我将创建一个没有主目录的用户,因此我使用–M而不是–m。

# useradd -M user1 –s /sbin/nologin
# passwd user1

接下来,我们将通过创建新目录来为“ user1”设置主目录

# mkdir /var/www/mike
# chmod 755 /var/www/mike

我们必须提供对FTP上“ user1”的访问权限

# chown -R mike /var/www/user1
We can access the FTP server from the client on your favorite browser using the url ftp://192.168.100.108

通过使用以上信息,我们可以轻松地配置和安装FTP服务器。“ vsftpd”是一个简单且非常安全的FTP服务器,我们可以使用本地用户,也可以创建其他用户来专门使用FTP“ vsftpd”服务器,该服务器也具有更多功能。