Linux系统如何搭建FTP服务器
主讲老师:郭盛华
FTP服务器(vsftpd):
vsftpd 是“very secure FTP daemon”的缩写,安全性是它的一个最大的特点。
vsftpd 是一个UNIX 类操作系统上运行的服务器的名字,它可以运行在诸如 Linux、BSD、Solaris、 HP-UNIX等系统上面,是一个完全免费的、开放源代码的ftp服务器软件,支持很多其他的FTP 服务器所不支持的特征。
比如:非常高的安全性需求、带宽限制、良好的可伸缩性、可创建虚拟用户、支持IPv6、速率高等。 vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序。特点是小巧轻快,安全易用。
搭建环境:
1、LinuxCentOS 8 64 位
2、vsftpd
3、 FlashFXP
安装命令:
大概划分为三个步骤
1、执行yum命令安装:
# yum -y install vsftpd
![](/d/file/shipinkecheng/Linux/2019-11-15/7b2f344d62ee804b0760025a9837ad7a.png)
安装完成后重启ftp服务,并设置开机自动启动
2、设置vsftpd服务开机启动
#systemctl restart vsftpd.service ‘重启服务
#systemctl enable vsftpd.service ‘开机启用
安装过程:
3、创建FTP用户
添加FTP用户命令:# useradd XXX
useradd -s /sbin/nologin -d ftp目录ftpadmin ‘创建一个ftpadmin用户,设置用户无法登陆服务器系统并且家目录下
设置FTP用户密码:# passwd ftpadmin
配置完成后就可以新建ftp用户进行使用了,随便用一个ftp客户端访问测试是否连接成功即可!
ftp://ip地址,应该能成功登陆,继续配置外网访问。
关闭防火墙,systemctl stop firewalld.service ,在浏览器地址中输入ftp://服务器ip地址,即可访问
如出现530错误,解决办法: # vi /etc/pam.d/vsftpd 注释掉 #authrequired pam_shells.so
如出现500错误,解决办法:设置SELinux设置为【禁用】
关掉selinux,#vi /etc/selinux/config (看一页图)
Selinux服务如果没有关掉的话会出现各种问题,比如能访问服务器但是无法打开目录和文件等等。在系统内部尝试自己访问,
如何关闭SELinux :
SELinux是Linux系统上一个常见的安全软件,如果熟悉它的规则,可以用它来为Linux系统新增一道保障,但是对于新手来说,一般都很难使用这个东西。因此在最开始学习的时候建议把这个给关掉。我们可以将它后面的值修改为permissive或者disabled,这样它就关闭了,重启Linux,之后再重启vsftpd服务
![](/d/file/shipinkecheng/Linux/2019-11-15/87a6ff1402debc93290917b19a8004ab.png)
配置ftp:
2、修改配置文件
按照下面修改配置文件,ftp的配置文件在/etc/vsftpd目录下主要有三个文件,vsftpd是主要的配置文件,ftpusers是黑名单,这里的用户是不允许访问ftp服务器的,user_list是白名单,是允许访问ftp服务器的
# cd/etc/vsftpd
# vim vsftpd.conf
![](/d/file/shipinkecheng/Linux/2019-11-15/dff0796b7594b3bfe1e1c7b263a01302.png)
配置说明:
#是否允许匿名,默认no
anonymous_enable=NO
#这个设定值必须要为YES时,在/etc/passwd内的账号才能以实体用户的方式登入我们的vsftpd主机
local_enable=YES
#具有写权限
write_enable=YES
#本地用户创建文件或目录的掩码
local_umask=022
#当dirmessage_enable=YES时,可以设定这个项目来让vsftpd寻找该档案来显示讯息!您也可以设定其它档名!
dirmessage_enable=YES
#当设定为YES时,使用者上传与下载日志都会被纪录起来。记录日志与下一个xferlog_file设定选项有关:
xferlog_enable=YES
xferlog_std_format=YES
#上传与下载日志存放路径
xferlog_file=/var/log/xferlog
#开启20端口
connect_from_port_20=YES
#关于系统安全的设定值:
ascii_download_enable=YES(NO)
如果设定为YES,那么 client就可以使用 ASCII 格式下载档案。
一般来说,由于启动了这个设定项目可能会导致DoS 的攻击,因此预设是NO。
ascii_upload_enable=YES(NO)
与上一个设定类似的,只是这个设定针对上传而言!预设是NO。
ascii_upload_enable=NO
ascii_download_enable=NO
#通过搭配能实现以下几种效果:
①当chroot_list_enable=YES,chroot_local_user=YES时,在/etc/vsftpd.chroot_list文件中列出的用户,可以切换到其他目录;未在文件中列出的用户,不能切换到其他目录。
②当chroot_list_enable=YES,chroot_local_user=NO时,
在/etc/vsftpd.chroot_list文件中列出的用户,不能切换到其他目录;未在文件中列出的用户,可以切换到其他目录。
③当chroot_list_enable=NO,
chroot_local_user=YES时,所有的用户均不能切换到其他目录。
④当chroot_list_enable=NO,
chroot_local_user=NO时,所有的用户均可以切换到其他目录。
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
#这个是pam模块的名称,我们放置在/etc/pam.d/vsftpd
pam_service_name=vsftpd
#当然我们都习惯支持TCPWrappers的啦!
tcp_wrappers=YES
#不添加下面这个会报错:500 OOPS: vsftpd:refusing to run with writable root inside chroot()
allow_writeable_chroot=YES
#ftp的端口号
listen_port=60021
#启动被动式联机(passivemode)
pasv_enable=YES
#上面两个是与passivemode 使用的 port number 有关,如果您想要使用65400 到65410 这 11个 port 来进行被动式资料的连接,可以这样设定
pasv_min_port=65400
pasv_max_port=65410
#FTP访问目录
local_root=/data/ftp/
具体请看视频教程:https://bbs.vm888.com/thread-171-1-1.html
FTP服务器(vsftpd):
vsftpd 是“very secure FTP daemon”的缩写,安全性是它的一个最大的特点。
vsftpd 是一个UNIX 类操作系统上运行的服务器的名字,它可以运行在诸如 Linux、BSD、Solaris、 HP-UNIX等系统上面,是一个完全免费的、开放源代码的ftp服务器软件,支持很多其他的FTP 服务器所不支持的特征。
比如:非常高的安全性需求、带宽限制、良好的可伸缩性、可创建虚拟用户、支持IPv6、速率高等。 vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序。特点是小巧轻快,安全易用。
搭建环境:
1、LinuxCentOS 8 64 位
2、vsftpd
3、 FlashFXP
安装命令:
大概划分为三个步骤
1、执行yum命令安装:
# yum -y install vsftpd
![](/d/file/shipinkecheng/Linux/2019-11-15/7b2f344d62ee804b0760025a9837ad7a.png)
安装完成后重启ftp服务,并设置开机自动启动
2、设置vsftpd服务开机启动
#systemctl restart vsftpd.service ‘重启服务
#systemctl enable vsftpd.service ‘开机启用
安装过程:
3、创建FTP用户
添加FTP用户命令:# useradd XXX
useradd -s /sbin/nologin -d ftp目录ftpadmin ‘创建一个ftpadmin用户,设置用户无法登陆服务器系统并且家目录下
设置FTP用户密码:# passwd ftpadmin
配置完成后就可以新建ftp用户进行使用了,随便用一个ftp客户端访问测试是否连接成功即可!
ftp://ip地址,应该能成功登陆,继续配置外网访问。
关闭防火墙,systemctl stop firewalld.service ,在浏览器地址中输入ftp://服务器ip地址,即可访问
如出现530错误,解决办法: # vi /etc/pam.d/vsftpd 注释掉 #authrequired pam_shells.so
如出现500错误,解决办法:设置SELinux设置为【禁用】
关掉selinux,#vi /etc/selinux/config (看一页图)
Selinux服务如果没有关掉的话会出现各种问题,比如能访问服务器但是无法打开目录和文件等等。在系统内部尝试自己访问,
如何关闭SELinux :
SELinux是Linux系统上一个常见的安全软件,如果熟悉它的规则,可以用它来为Linux系统新增一道保障,但是对于新手来说,一般都很难使用这个东西。因此在最开始学习的时候建议把这个给关掉。我们可以将它后面的值修改为permissive或者disabled,这样它就关闭了,重启Linux,之后再重启vsftpd服务
![](/d/file/shipinkecheng/Linux/2019-11-15/87a6ff1402debc93290917b19a8004ab.png)
配置ftp:
2、修改配置文件
按照下面修改配置文件,ftp的配置文件在/etc/vsftpd目录下主要有三个文件,vsftpd是主要的配置文件,ftpusers是黑名单,这里的用户是不允许访问ftp服务器的,user_list是白名单,是允许访问ftp服务器的
# cd/etc/vsftpd
# vim vsftpd.conf
![](/d/file/shipinkecheng/Linux/2019-11-15/dff0796b7594b3bfe1e1c7b263a01302.png)
配置说明:
#是否允许匿名,默认no
anonymous_enable=NO
#这个设定值必须要为YES时,在/etc/passwd内的账号才能以实体用户的方式登入我们的vsftpd主机
local_enable=YES
#具有写权限
write_enable=YES
#本地用户创建文件或目录的掩码
local_umask=022
#当dirmessage_enable=YES时,可以设定这个项目来让vsftpd寻找该档案来显示讯息!您也可以设定其它档名!
dirmessage_enable=YES
#当设定为YES时,使用者上传与下载日志都会被纪录起来。记录日志与下一个xferlog_file设定选项有关:
xferlog_enable=YES
xferlog_std_format=YES
#上传与下载日志存放路径
xferlog_file=/var/log/xferlog
#开启20端口
connect_from_port_20=YES
#关于系统安全的设定值:
ascii_download_enable=YES(NO)
如果设定为YES,那么 client就可以使用 ASCII 格式下载档案。
一般来说,由于启动了这个设定项目可能会导致DoS 的攻击,因此预设是NO。
ascii_upload_enable=YES(NO)
与上一个设定类似的,只是这个设定针对上传而言!预设是NO。
ascii_upload_enable=NO
ascii_download_enable=NO
#通过搭配能实现以下几种效果:
①当chroot_list_enable=YES,chroot_local_user=YES时,在/etc/vsftpd.chroot_list文件中列出的用户,可以切换到其他目录;未在文件中列出的用户,不能切换到其他目录。
②当chroot_list_enable=YES,chroot_local_user=NO时,
在/etc/vsftpd.chroot_list文件中列出的用户,不能切换到其他目录;未在文件中列出的用户,可以切换到其他目录。
③当chroot_list_enable=NO,
chroot_local_user=YES时,所有的用户均不能切换到其他目录。
④当chroot_list_enable=NO,
chroot_local_user=NO时,所有的用户均可以切换到其他目录。
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
#这个是pam模块的名称,我们放置在/etc/pam.d/vsftpd
pam_service_name=vsftpd
#当然我们都习惯支持TCPWrappers的啦!
tcp_wrappers=YES
#不添加下面这个会报错:500 OOPS: vsftpd:refusing to run with writable root inside chroot()
allow_writeable_chroot=YES
#ftp的端口号
listen_port=60021
#启动被动式联机(passivemode)
pasv_enable=YES
#上面两个是与passivemode 使用的 port number 有关,如果您想要使用65400 到65410 这 11个 port 来进行被动式资料的连接,可以这样设定
pasv_min_port=65400
pasv_max_port=65410
#FTP访问目录
local_root=/data/ftp/
具体请看视频教程:https://bbs.vm888.com/thread-171-1-1.html
>更多相关文章
- 11-15Linux系统如何搭建Apache服务器
- 11-15Linux系统如何搭建FTP服务器
- 11-15Linux系统 yum命令详解
- 11-15Linux系统的Vim文书编辑器
- 11-15Linux系统的常用操作命令
- 11-12Linux系统的远程登陆方法
- 11-12Linux系统如何连接网络
- 11-12Linux系统怎样切换到Root用户
首页推荐
佛山市东联科技有限公司一直秉承“一切以用户价值为依归
- 01-11全球最受赞誉公司揭晓:苹果连续九年第一
- 12-09罗伯特·莫里斯:让黑客真正变黑
- 12-09谁闯入了中国网络?揭秘美国绝密黑客小组TA
- 12-09警示:iOS6 惊现“闪退”BUG
- 05-06TCL科技:预计大尺寸面板价格上涨动能有望延
- 05-06新加坡电信Optus任命新首席执行官以重建品牌
- 05-06微软宣布为消费级用户账户提供安全密钥支持
- 05-06当好大数据产业“守门员”(筑梦现代化 共绘
- 04-29通用智能人“通通”亮相中关村论坛
相关文章
24小时热门资讯
24小时回复排行
热门推荐
最新资讯
操作系统
黑客防御