Linux 搭建FTP服务器

简介:

介绍

本章主要介绍在Linux中搭建FTP服务器的过程,需要掌握的要点是配置文件的合理配置。

 

 

知识点

  • 在linux中使用的FTP是vsftp
  • FTP可以有三种登入方式分别是:
  1. 匿名登录方式:不需要用户密码
  2. 本地用户登入:使用本地用户和密码登入
  3. 虚拟用户方式:也是使用用户和密码登入,但是该用户不是linux中创建的用户

 

安装FTP

使用YUM安装

yum -y install vsftpd

 

文件配置

安装完之后在/etc/vsftpd/路径下会存在三个配置文件。

vsftpd.conf: 主配置文件

ftpusers: 指定哪些用户不能访问FTP服务器,这里的用户包括root在内的一些重要用户。

user_list: 指定的用户是否可以访问ftp服务器,通过vsftpd.conf文件中的userlist_deny的配置来决定配置中的用户是否可以访问,userlist_enable=YES ,userlist_deny=YES ,userlist_file=/etc/vsftpd/user_list 这三个配置允许文件中的用户访问FTP。

 

查看主配置文件的默认配置

cat /etc/vsftpd/vsftpd.conf |grep -v '^#';

anonymous_enable=YES #允许匿名用户

local_enable=YES #允许使用本地用户账号登陆

write_enable=YES #允许ftp用户写数据

connect_from_port_20=YES #通过20端口传输数据

复制代码
anonymous_enable=YES
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=YES

pam_service_name=vsftpd
tcp_wrappers=YES
chroot_local_user=yes
复制代码

 

其它的一些参数说明包括:

复制代码
ftpd_banner=welcome to ftp service :设置连接服务器后的欢迎信息

idle_session_timeout=60 :限制远程的客户机连接后,所建立的控制连接,在多长时间没有做任何的操作就会中断(秒)

data_connection_timeout=120 :设置客户机在进行数据传输时,设置空闲的数据中断时间

accept_timeout=60 设置在多长时间后自动建立连接

connect_timeout=60 设置数据连接的最大激活时间,多长时间断开,为别人所使用;

max_clients=200 指明服务器总的客户并发连接数为200

max_per_ip=3 指明每个客户机的最大连接数为3

local_max_rate=50000(50kbytes/sec)  本地用户最大传输速率限制

anon_max_rate=30000匿名用户的最大传输速率限制

pasv_min_port=端口

pasv-max-prot=端口号 定义最大与最小端口,为0表示任意端口;为客户端连接指明端口;

listen_address=IP地址 设置ftp服务来监听的地址,客户端可以用哪个地址来连接;

listen_port=端口号 设置FTP工作的端口号,默认的为21

local_root=path 无论哪个用户都能登录的用户,定义登录帐号的主目录, 若没有指定,则每一个用户则进入到个人用户主目录;

chroot_local_user=yes/no 是否锁定本地系统帐号用户主目录(所有);锁定后,用户只能访问用户的主目录/home/user;
chroot_list_enable
=yes/no 启用不锁定用户在主目录的名单 chroot_list_file=/etc/vsftpd/chroot_list指定列表文件 userlist_enable=YES/NO 是否加载用户列表文件; userlist_deny=YES 表示上面所加载的用户允许登录; userlist_file=/etc/vsftpd/user_list 指定列表文件
复制代码

 

创建FTP连接用户

复制代码
创建用户ftpuser
useradd ftpusr

设置用户只能ftp不能登入
usermod -s /sbin/nologin ftpuser

设置用户密码
passwd ftpusr
复制代码

用户的默认的家目录在/home下,当前用户就只能访问家目录。

修改用户的家目录位/mnt

usermod -d /mnt ftpuser

 

启动FTP服务

service vsftpd start

测试

在/mnt目录下创建一个测试文件

touch /mnt/test

连接ftp

 

 

解决普通的FTP无法登入问题

linux默认是带安全机制,使用普通的ftp 21端口无法连接到ftp服务器,使用sftp就可以。这个时候需要关闭selinux,修改配置文件需要重启服务器。

vim /etc/sysconfig/selinux

改成selinux=disabled

 

不重启服务器的方法:

setenforce 0

 

setenforce 1 :设置SELinux 成为enforcing模式
setenforce 0 :设置SELinux 成为permissive模式

 

查看SELinux状态

/usr/sbin/sestatus -v

总结

 还有其他的一些配置方法在这里就暂时不列举,有兴趣的可以去深入研究一下。

 

 



本文转自pursuer.chen(陈敏华)博客园博客,原文链接:http://www.cnblogs.com/chenmh/p/5365274.html,如需转载请自行联系原作者

目录
相关文章
|
2天前
|
Linux 网络安全 数据库
linux centos系统搭建samba文件服务器 NetBIOS解析 (超详细)
linux centos系统搭建samba文件服务器 NetBIOS解析 (超详细)
|
2天前
|
域名解析 存储 缓存
Linux中搭建DNS 域名解析服务器(详细版)
Linux中搭建DNS 域名解析服务器(详细版)
|
2天前
|
Web App开发 安全 Unix
Linux 配置FTP服务器 + vsftpd服务安装配置 (Good篇)
Linux 配置FTP服务器 + vsftpd服务安装配置 (Good篇)
|
8天前
|
数据安全/隐私保护 Windows
使用Serv-U FTP服务器共享文件,实现无公网IP环境下远程访问-2
使用Serv-U FTP服务器共享文件,实现无公网IP环境下远程访问
|
8天前
|
存储 网络协议 文件存储
使用Serv-U FTP服务器共享文件,实现无公网IP环境下远程访问-1
使用Serv-U FTP服务器共享文件,实现无公网IP环境下远程访问
|
8天前
|
弹性计算 关系型数据库 MySQL
|
8天前
|
Shell 数据安全/隐私保护 Docker
如何使用Docker安装FTP服务器?
【4月更文挑战第25天】
15 0
如何使用Docker安装FTP服务器?
|
10天前
|
安全 算法 Linux
【专栏】Linux 服务器还有漏洞?建议使用 OpenVAS 日常检查!
【4月更文挑战第28天】OpenVAS 是一款开源的漏洞扫描工具,用于全面评估 Linux 服务器安全。它具有全面性、准确性和实时性的特点,能扫描各种设备并及时发现安全漏洞。使用 OpenVAS 包括安装、配置和执行扫描,以及分析结果并采取修复措施。在使用过程中应注意扫描时间、范围和策略的选择。通过定期检查和修复漏洞,结合其他安全措施,可以提升服务器安全性。OpenVAS 是保障 Linux 服务器安全的重要工具,但安全维护也需要持续学习和适应新挑战。
|
11月前
|
网络协议 Linux 网络安全
Linux文件服务配置FTP服务
之前学习了网络管理,在平时我们去各网站下载电影或者文件,比如去电影天堂下载电影的时候,细心的会发现网站的前缀是ftp://,这篇文章就开始学习怎么配置ftp服务器供客户端进行下载文件。
460 2