linux搭建FTP服务

简介:

在万维网出现以前,用户使用DOS方式传输文件,最通用的应用程序就是FTP,FTP属于应用层协议,使用TCP端口20和21进行传输
FTP有两种文件传输模式:
二进制模式,用于传输程序文件(比如后缀名为.app、.bin和.btm的文件)
ASCII码模式,用于传输文本格式的文件(比如后缀名为.txt、.bat和.cfg的文件)

第一步、安装ftp软件

[root@localhost ~]#yum install vsftpd -y 
第二步、设置FTP的配置文件

[root@localhost ~]#vim /etc/vsftpd/vsftpd.conf 

#vsftpd默认支持匿名用户的访问,Vsftpd的匿名用户叫做ftp,ftp帐号的家目录是/var/ftp,其中有个目录称为pub

anonymous_enable=YES //设置是否允许匿名用户登录FTP服务器,默认为YES(改为no就使用本地用户名密码登录)
local_enable=YES //是否允许本地用户登录FTP服务器,默认为NO。
write_enable=YES //是否对登录用户开启写权限,属全局性设置,默认NO。
pam_service_name=vsftpd //设置PAM认证服务的配置文件名称,该文件存放在/etc/pam.d/目录下.
userlist_enable=YES //用户列表中的用户是否允许登录FTP服务器,默认是不允许
tcp_wrappers=YES //使用tcp_wrqppers作为主机访问控制方式
chroot_local_user=YES#将本地帐号锁定在其家目录中
local_max_rate=1000#本地帐号的限速操作
local_umask=022#上传后文件的权限

local_root=/var/ftp#设置本地用户登录后所在的目录
anon_root=/var/ftp#设置匿名用户登录后所在的目录

第三步、修改用户权限(将root注释掉,不拒绝root用户登录,其它用户都拒绝访问)

[root@localhost ~]#vim /etc/vsftpd/user_list

[root@localhost ~]#vim /etc/vsftpd/ftpusers
user_list这个文件是用来记录"不允许"登录到FTP服务器的用户,通常是一些系统默认的用户
root //默认情况下,root和它以下的用户是不允许登录FTP服务器的.可以将不允许登录的用户添加到这里来.但切记每个用户都要单独占用一行.
ftpusers其实它的内容结合user_list对用户检测

在vsftpd中使用本地帐号登录,将直接登录到该帐号的家目录中,这时要特别注意selinux,如果开启,将无切换到家目录中

setsebool -P ftpd_disable_trans=1  //配置VSFTPD时本地用户无法切换

第四步、设置ftp目录权限

[root@localhost ~]# chmod 777 /var/ftp#默认匿名帐号只能下载,不能上传,修改,重命名文件
匿名帐号只能向其家目录下的一个子目录上传文件,例如:向/var/ftp/pub目录中上传文件。(/var/ftp/pub目录必须有写入的权限)

[root@localhost ~]# vim /etc/hosts.allow 
通过/etc/hosts.allow和/etc/hosts.deny来控制用户的访问,这种方式称为TCPWRAPPER

/etc/hosts.allow
vsftpd:172.24.254.254

etc/hosts.deny
ALL:ALL

第五步、重启FTP服务

[root@localhost ~]#service vsftpd  restart  重新启动FTP服务(这里防火墙已经关闭了)

[root@localhost ~]# sestatus -b | grep ftp  

[root@localhost ~]#sudo setsebool -P /var/ftp on

第六步、验证登录信息
打开浏览器 输入ftp://IP  即可登录或
wKiom1m-MwmzLh-hAAGlDV884L4264.jpg

关闭windows防火墙再试试

wKioL1m-M1HBBxcVAAHOIwfFs8c535.jpg

搭建TFTP服务
[root@localhost ~]# yum install tftp-server -y 
[root@localhost ~]# vim /etc/xinetd.d/tftp #编辑使其打开tftp功能    

# default: off
# description: The tftp server serves files using the trivial file transfer \
#       protocol.  The tftp protocol is often used to boot diskless \
#       workstations, download configuration files to network-aware printers, \
#       and to start the installation process for some operating systems.
service tftp
{
        socket_type             = dgram
        protocol                = udp
        wait                    = yes
        user                    = root
        server                  = /usr/sbin/in.tftpd
        server_args             = -s /var/lib/tftpboot
        disable                 = no
        per_source              = 11
        cps                     = 100 2
        flags                   = IPv4
}
~                                                                                           
~                                                                                           
~              
}
[root@localhost ~]# service xinetd restart










本文转自 周小玉 51CTO博客,原文链接:http://blog.51cto.com/maguangjie/1875211,如需转载请自行联系原作者
目录
相关文章
|
2月前
|
Linux
在Linux中,怎么把脚本添加到系统服务里,即用 service 来调用?
在Linux中,怎么把脚本添加到系统服务里,即用 service 来调用?
|
1月前
|
网络协议 安全 Linux
如何配置Linux端的ftp?
如何配置Linux端的ftp?
137 64
|
11天前
|
Ubuntu Linux 网络安全
Linux中服务管理问题
【10月更文挑战第4天】
11 2
|
6天前
|
网络安全 数据安全/隐私保护
FTP服务搭建
FTP服务搭建
13 0
|
13天前
|
弹性计算 关系型数据库 网络安全
阿里云国际版无法连接和访问Windows服务器中的FTP服务
阿里云国际版无法连接和访问Windows服务器中的FTP服务
|
14天前
|
应用服务中间件 Linux Shell
Linux 配置 Nginx 服务的详细步骤,绝对干货
Linux 配置 Nginx 服务的详细步骤,绝对干货
43 0
|
1月前
|
NoSQL Linux Redis
Linux Redis 服务设置开机自启动
【9月更文挑战第2天】在 Linux 系统中,可使用两种方法设置 Redis 开机自启动:一是通过创建 `redis.service` 文件并利用 systemd 进行管理,包括定义服务参数和启动脚本;二是编辑 `/etc/rc.local` 文件,在其中添加启动命令。推荐使用 systemd 方法,因为它更符合现代 Linux 系统的设计理念。设置完成后,可通过 `sudo systemctl status redis.service` 检查服务状态。
121 3
|
1月前
|
编解码 Linux 开发工具
Linux平台x86_64|aarch64架构RTMP推送|轻量级RTSP服务模块集成说明
支持x64_64架构、aarch64架构(需要glibc-2.21及以上版本的Linux系统, 需要libX11.so.6, 需要GLib–2.0, 需安装 libstdc++.so.6.0.21、GLIBCXX_3.4.21、 CXXABI_1.3.9)。
|
2月前
|
JavaScript Linux 应用服务中间件
【Azure 应用服务】FTP 部署 Vue 生成的静态文件至 Linux App Service 后,访问App Service URL依旧显示Azure默认页面问题
【Azure 应用服务】FTP 部署 Vue 生成的静态文件至 Linux App Service 后,访问App Service URL依旧显示Azure默认页面问题
|
2月前
|
机器学习/深度学习 Ubuntu Linux
在Linux中,如何按照该要求抓包:只过滤出访问http服务的,目标ip为192.168.0.111,一共抓1000个包,并且保存到1.cap文件中?
在Linux中,如何按照该要求抓包:只过滤出访问http服务的,目标ip为192.168.0.111,一共抓1000个包,并且保存到1.cap文件中?