linux 系统下搭建ftp服务器

linux 系统下搭建ftp服务器只需要几段命令,按照步骤一步一步的进行,就可搭建成功。

准备工作:

linux系统为CentOS Linux release 7.5.1804 (Core)  可以使用 lsb_release -a  命令查看

window系统中安装 SecureCRT 和 Secure File Transfer Client 软件

使用SecureCRT 客户端远程登录服务器,进行一系列的安装操作,使用Secure File Transfer Client  客户端可以手动操作服务器端文件

开始搭建FTP服务器:

1.检查linux服务器上是否安装了vsftpd软件

rpm -qa | grep vsftpd

2.如果没有安装,使用yum命令进行安装

yum -y install vsftpd

到此vsftpd软件就安装成功了。

查看vsftpd服务的运行情况

systemctl status vsftpd.service

如果运行状态是stoped的,则启动vsftpd服务

systemctl start vsftpd.service

如果运行状态是started的话,则可以重启服务

systemctl restart vsftpd.service

关闭服务使用stop命令

systemctl stop vsftpd.service

匿名用户:

vsftpd安装好后,进行匿名用户访问的话,需要修改/etc/vsftpd/vsftpd.conf配置文件。

1.执行 cd 命令,切换到vsftpd.conf配置文件所在目录

cd /etc/vsftpd/vsftpd.conf

2.执行 vi 命令,打开 vsftpd.conf 配置文件,进入阅读模式

vi vsftpd.conf

3.点击 i ,进入编辑模式,我的配置文件如下

#设置是否允许匿名用户登录FTP服务器。默认为YES
anonymous_enable=YES
 
#是否允许本地用户登录FTP服务器。默认为NO
local_enable=YES
 
#是否对登录用户开启写权限。属全局性设置。默认NO
write_enable=YES
 
#是否允许匿名用户上传文件。只有在write_enable设置为YES时,该配置项才有效。而且匿名用户对相应的目#录必须有写权限。默认为NO。
anon_upload_enable=YES
 
#是否允许匿名用户创建目录。只有在write_enable设置为YES时有效。且匿名用户对上层目录有写入的权限。#默认为NO。
anon_mkdir_write_enable=YES
 
#若设置为YES,则匿名用户会被允许拥有多于上传和建立目录的权限,还会拥有删除和更名权限。默认值为#NO。
anon_other_write_enable=NO
 
#设置本地用户新增文档的umask,默认为022,对应的权限为755。umask为022,对应的二进制数为000 010 #010,将其取反为111 101 101,转换成十进制数,即为权限值755,代表文档的所有者(属主)有读写执行 
#权,所属组有读和执行权,其他用户有读和执行权。022适合于大多数情 况,一般不需要更改。若设置为#077,则对应的权限为700。
local_umask=022
 
#设置是否显示目录消息。若设置为YES,则当用户进入特定目录(比如/var/ftp/linux)时,将显示该目录中#的由message_file配置项指定的文件(.message)中的内容。
dirmessage_enable=YES
 
#是否启用上传/下载日志记录。默认为NO
xferlog_enable=YES
 
#日志文件是否使用标准的xferlog日志文件格式(与wu-ftpd使用的格式相同) 。默认为NO
xferlog_std_format=YES
 
#默认值为YES,指定FTP数据传输连接使用20端口。若设置为NO,则进行数据连接时,所使用的端口由#ftp_data_port指定。
connect_from_port_20=YES
 
#设置vsftpd服务器是否以standalone模式运行。以standalone模式运行是一种较好的方式,此时listen必
#须设置为YES, 此为默认值,建议不要更改。很多与服务器运行相关的配置命令,需要此运行模式才有效。若#设置为NO,则vsftpd不是以独立的服务运行,要受 xinetd服务的管理控制,功能上会受限制。
listen=NO
 
#"listen=YES"和"listen_ipv6=YES"是不能同时开启,需要一个开启一个关闭
#让vsftpd同时支持IPv4和IPv6
listen_ipv6=YES
 
#设置在PAM所使用的名称,默认值为vsftpd。
pam_service_name=vsftpd
 
#决定/etc/vsftpd/user_list文件是否启用生效。YES则生效,NO不生效。
userlist_enable=YES
 
#用来设置vsftpd服务器是否与tcp wrapper相结合,进行主机的访问控制。默认设置为YES,vsftpd服务器会#检查/etc/hosts.allow和/etc /hosts.deny中的设置,以决定请求连接的主机是否允许访问该FTP服务器。#这两个文件可以起到简易的防火墙功能。
#比如,若要仅允许192.168.168.1~192.168.168.254的用户,可以访问连接vsftpd服务器,则可 
#在/etc/hosts.allow文件中添加以下内容:
#vsftpd:192.168.168.0/255.255.255.0 :allow
#all:all:deny
tcp_wrappers=YES

4.按ESC键,输入 :wq 保存修改的配置文件

:wq

5.重启vsftpd服务,即可使用匿名用户访问。

匿名用户实现文件的上传、下载、删除:

注意 匿名用户的根目录/var/ftp/是不可以直接设置777权限的,否则会无法访问ftp服务,要想实现匿名用户的上传、下载和删除,需要使用“other”用户,也就是在/var/ftp/根目录下新建upload目录,然后给upload文件夹设置777权限即可。

1.创建upload文件夹

mkdir /var/ftp/upload

2.给upload文件夹设置权限

chmod -R 777 /var/ftp/upload/

3.重启ftp服务,即可实现匿名用户的上传、下载、删除操作。

创建用户:

使用useradd命令:

useradd admin ,默认在/home文件夹下创建一个和 admin一样名称的文件作为该用户所拥有的文件

useradd admin #回车
passwd admin #回车,设置密码

密码设置后,千万不要忘记修改 vsftpd.conf 配置文件

1.执行 cd 命令,切换到vsftpd.conf配置文件所在目录

cd /etc/vsftpd/vsftpd.conf

2.执行 vi 命令,打开 vsftpd.conf 配置文件,进入阅读模式

vi vsftpd.conf

3.点击 i ,进入编辑模式,我的配置文件如下

#设置是否允许匿名用户登录FTP服务器。默认为YES
anonymous_enable=NO
 
#是否允许本地用户登录FTP服务器。默认为NO
local_enable=YES
 
#是否对登录用户开启写权限。属全局性设置。默认NO
write_enable=YES
 
#设置本地用户新增文档的umask,默认为022,对应的权限为755。umask为022,对应的二进制数为000 010 #010,将其取反为111 101 101,转换成十进制数,即为权限值755,代表文档的所有者(属主)有读写执行 
#权,所属组有读和执行权,其他用户有读和执行权。022适合于大多数情 况,一般不需要更改。若设置为#077,则对应的权限为700。
local_umask=022
 
#设置是否显示目录消息。若设置为YES,则当用户进入特定目录(比如/var/ftp/linux)时,将显示该目录中#的由message_file配置项指定的文件(.message)中的内容。
dirmessage_enable=YES
 
#是否启用上传/下载日志记录。默认为NO
xferlog_enable=YES
 
#默认值为YES,指定FTP数据传输连接使用20端口。若设置为NO,则进行数据连接时,所使用的端口由#ftp_data_port指定。
connect_from_port_20=YES
 
#日志文件是否使用标准的xferlog日志文件格式(与wu-ftpd使用的格式相同) 。默认为NO
xferlog_std_format=YES
 
#设置vsftpd服务器是否以standalone模式运行。以standalone模式运行是一种较好的方式,此时listen必
#须设置为YES, 此为默认值,建议不要更改。很多与服务器运行相关的配置命令,需要此运行模式才有效。若#设置为NO,则vsftpd不是以独立的服务运行,要受 xinetd服务的管理控制,功能上会受限制。
listen=YES
 
#设置vsftpd允许的最大连接数,默认为0,表示不受限制。若设置为150时,则同时允许有150个连接,超出的将拒绝建立连接。只有在以standalone模式运行时才有效。
max_clients=0
 
#设置每个IP地址允许与FTP服务器同时建立连接的数目。默认为0,不受限制。通常可对此配置进行设置,防止同一个用户建立太多的连接。只有在以standalone模式运行时才有效。
max_per_ip=0
 
#"listen=YES"和"listen_ipv6=YES"是不能同时开启,需要一个开启一个关闭
#让vsftpd同时支持IPv4和IPv6
listen_ipv6=NO
 
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES

4.按ESC键,输入 :wq 保存修改的配置文件

:wq

5.重启vsftpd服务,即可使用用户密码访问。

用户登录实现文件的上传、下载、删除:

用户登录后,需要给该用户设置权限,该用户才可以对文件进行操作。

1.这里创建的admin用户,访问路径在 /home/admin,所以需要给 /home/admin/ 文件下设置777权限

chmod -R 777 /home/admin/

2.重启ftp服务,即可实现匿名用户的上传、下载、删除操作。

结束

版权声明:本文为qq_31712553原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

本文链接:linux系统快速搭建ftp服务器——实现匿名用户和创建用户访问服务器_搭建简单的ftp服务器,并实现匿名访问_fanxingbin的博客-CSDN博客

你可能感兴趣的:(服务器,linux,运维)