linux系统快速搭建ftp服务器——实现匿名用户和创建用户访问服务器

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

准备工作:

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

window系统中安装 SecureCRTSecure 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服务,即可实现匿名用户的上传、下载、删除操作。

结束:

到这里,关于ftp的快速搭建以及匿名用户和非匿名用户使用就介绍完毕了,有什么需要交流的小伙伴留言,看到回复

最后详细的 linux中vsftpd配置文件详解 在这里,需要了解的可以参考下

 

### 如何使用 Linux 搭建 FTP 服务器Linux 系统搭建 FTP 服务器可以通过多种方式实现,其中最常见的是使用 vsftpd (Very Secure FTP Daemon),它是一个快速、稳定且安全的 FTP 服务器软件。以下是关于如何配置运行一个基础的 FTP 服务器的过程。 #### 安装 vsftpd 软件包 首先,在 Linux 上需要安装 `vsftpd` 工具来创建 FTP 服务环境。对于基于 Debian 的系统(如 Ubuntu),可以执行以下命令完成安装: ```bash sudo apt update && sudo apt install vsftpd ``` 而对于 CentOS 或 RHEL 类型的操作系统,则可采用 yum 命令进行安装: ```bash sudo yum install vsftpd ``` 上述过程完成后,FTP 服务的基础组件就已经被部署到了操作系统中[^1]。 #### 配置 vsftpd 件 默认情况下,主要的配置件位于 `/etc/vsftpd.conf` 中。为了使 FTP 功能正常运作并满足安全性需求,需编辑此件调整若干参数。例如启用匿名访问或者仅允许特定用户登录等功能都可以在此处定义。下面是一些常用的设置项及其含义说明: - **anonymous_enable=NO**: 关闭匿名用户访问权限。 - **local_enable=YES**: 允许本地用户通过用户名密码认证的方式登陆。 - **write_enable=YES**: 授权已验证过的客户端能够修改远程目录中的数据,比如上传新档或删除现有项目等操作。 保存更改后的配置件之后记得重新加载服务以应用新的设定值: ```bash sudo systemctl restart vsftpd.service ``` #### 测试 FTP 连接 当所有的前期准备工作都结束后就可以尝试从其他设备上去连接这个新建好的 FTP Server 来检验其可用性状况了。假如是在同一局域网环境下的话,那么只需知道目标机器 IP 地址便可以直接利用标准浏览器输入形如 ftp://<ip_address> 格式的链接地址来进行初步探测;当然也可以借助专业的第三方工具像 FileZilla 实现更加复杂的交互功能[^2]。 另外需要注意的一点是,某些时候出于网络安全考虑,默认开启状态下的防火墙可能会阻挡外部请求进入内部网络区域从而阻止正常的 FTP 数据交换活动发生。因此有必要确认相关端口(通常是21号端口用于控制通道以及动态分配的数据传输端口范围)已被正确开放给公网访问才行[^5]。 --- ### 提高 FTP 服务器的安全性性能优化建议 尽管 FTP 是一种广泛使用的协议,但由于明传输特性存在固有的安全隐患,所以推荐尽可能选用加密版本的服务形式——SFTP(Secure Shell File Transfer Protocol)。虽然 SFTP 更加注重保护通信双方的信息隐私不受窃听威胁影响,但它同时也带来了额外计算负担使得整体吞吐量有所下降。所以在实际应用场景当中应当权衡两者之间的利弊关系做出合理的选择决策。 此外还可以采取诸如限定IP白名单接入、定期更新密钥证书等一系列措施进一步强化整个系统的防护能力水平。 ---
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值