热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

vsftp服务的安装以及常见问题

centos安装vsftpd:yum-yinstallvsftpd这个过程很快。。。。具体不表。/etc/init.d目录下会生成一个服务程序。[root@webmasterinit.d]#ls*ftp*vsftpd[root@webmasterinit.d]#pwd/etc/init.d[root@webmaster

centos安装vsftpd:

yum -y install vsftpd

这个过程很快。。。。具体不表。

/etc/init.d 目录下会生成一个服务程序。

[root@webmaster init.d]# ls *ftp*

vsftpd

[root@webmaster init.d]# pwd

/etc/init.d

[root@webmaster init.d]# ls *ftp*

vsftpd

一般情况下我只改配置文件的三个地方:1 不允许匿名登录;2 禁止用户列出其他目录;3 设定第2条中指定的用户文件。

vi /etc/vsftpd/vsftpd.conf

anonymous_enable=NO

chroot_list_enable=YES

# (default follows)

chroot_list_file=/etc/vsftpd/chroot_list

vi /etc/vsftpd/chroot_list

加入用户,这个用户是linux下的useradd建立的用户。

重启vsftpd。

在本机进行测试:

C:\Users\king>ftp 124.121.222.111

连接到 124.121.222.111。

220 (vsFTPd 2.0.5)

用户(124.121.222.111:(none)): kingdom

331 Please specify the password.

密码:

500 OOPS: chroot

500 OOPS: child died

远程主机关闭连接。

喔!哦!出错了,怀疑是selinux的问题:

# getenforce

Enforcing

哈哈,果不其然。于是执行:

/usr/sbin/setsebool -P ftp_home_dir 1

再试:

C:\Users\>ftp 124.121.222.111

连接到 124.121.222.111。

220 (vsFTPd 2.0.5)

用户(124.121.222.111:(none)): kingdom

331 Please specify the password.

密码:

230 Login successful.

以上情况是在linux服务器没有开防火墙情况下的ftp设置,很简单。但是一般情况下为了安全起见,防火墙是必须有的。那么再来看以下情况(我假设你的网络知识是初级,高级

的可飘过):

添加一条策略并且启动防火墙(21是默认ftp端口):

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT

service iptables start

# iptables -nL

Chain INPUT (policy ACCEPT)

target     prot opt source               destination         

RH-Firewall-1-INPUT  all  --  0.0.0.0/0            0.0.0.0/0           

Chain FORWARD (policy ACCEPT)

target     prot opt source               destination         

RH-Firewall-1-INPUT  all  --  0.0.0.0/0            0.0.0.0/0           

Chain OUTPUT (policy ACCEPT)

target     prot opt source               destination         

Chain RH-Firewall-1-INPUT (2 references)

target     prot opt source               destination         

ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           

ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0           icmp type 255 

ACCEPT     esp  --  0.0.0.0/0            0.0.0.0/0           

ACCEPT     ah   --  0.0.0.0/0            0.0.0.0/0           

ACCEPT     udp  --  0.0.0.0/0            224.0.0.251         udp dpt:5353 

ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0           udp dpt:631 

ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:631 

ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED 

ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:21 

可见我们的21端口开了。

再来试试:

ftp> get nginx.conf

200 PORT command successful. Consider using PASV.

425 Failed to establish connection.

出错了,能登陆,但是下载不了文件。

看下服务器连接:

tcp        0      0 124.121.222.111:21           118.26.245.134:57903        ESTABLISHED 9624/vsftpd         

tcp        0      1 124.121.222.111:20           118.26.245.134:39180        SYN_SENT    9628/vsftpd         

被动模式下本机会开放一个随机端口,告诉服务器你过来连我39180端口传输数据吧,但是服务器的20端口是不在防火墙策略里的,所以是SYN_SENT 的状态。

解决办法:添加个端口20的允许策略:

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 20 -j ACCEPT

service iptables restart

再试试:

ftp> get nginx.conf

200 PORT command successful. Consider using PASV.

150 Opening BINARY mode data connection for nginx.conf (1975 bytes).

226 File send OK.

ftp: 收到 1975 字节,用时 0.00秒 1975000.00千字节/秒。


推荐阅读
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • CentOS 7部署KVM虚拟化环境之一架构介绍
    本文介绍了CentOS 7部署KVM虚拟化环境的架构,详细解释了虚拟化技术的概念和原理,包括全虚拟化和半虚拟化。同时介绍了虚拟机的概念和虚拟化软件的作用。 ... [详细]
  • svnWebUI:一款现代化的svn服务端管理软件
    svnWebUI是一款图形化管理服务端Subversion的配置工具,适用于非程序员使用。它解决了svn用户和权限配置繁琐且不便的问题,提供了现代化的web界面,让svn服务端管理变得轻松。演示地址:http://svn.nginxwebui.cn:6060。 ... [详细]
  • Linux防火墙配置—允许转发
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • Linux一键安装web环境全攻略
    摘自阿里云服务器官网,此处一键安装包下载:点此下载安装须知1、此安装包可在阿里云所有Linux系统上部署安装,此安装包包含的软件及版本为& ... [详细]
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • 这是原文链接:sendingformdata许多情况下,我们使用表单发送数据到服务器。服务器处理数据并返回响应给用户。这看起来很简单,但是 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 本文介绍了在CentOS 7.x上进行端口映射配置的方法,通过修改内核和配置防火墙实现端口映射。作者分享了自己使用华为服务器进行端口映射的经验,发现网速比直连还快且稳定。详细的配置过程包括开启系统路由模式功能、设置IP地址伪装、设置端口映射等。同时,还介绍了如何监听本地端口的tcp请求,以及删除规则和开放的端口的方法。 ... [详细]
  • 目录浏览漏洞与目录遍历漏洞的危害及修复方法
    本文讨论了目录浏览漏洞与目录遍历漏洞的危害,包括网站结构暴露、隐秘文件访问等。同时介绍了检测方法,如使用漏洞扫描器和搜索关键词。最后提供了针对常见中间件的修复方式,包括关闭目录浏览功能。对于保护网站安全具有一定的参考价值。 ... [详细]
  • Linux下部署Symfoy2对app/cache和app/logs目录的权限设置,symfoy2logs
    php教程|php手册xml文件php教程-php手册Linux下部署Symfoy2对appcache和applogs目录的权限设置,symfoy2logs黑色记事本源码,vsco ... [详细]
  • centos6.8 下nginx1.10 安装 ... [详细]
  • UDP千兆以太网FPGA_verilog实现(四、代码前期准备UDP和IP协议构建)
    UDP:userDatagramprotocol用户数据报协议无连接的传输层协议,提供面向事务的简单不可靠信息传送服务,IETFRFC76 ... [详细]
author-avatar
rhp3465483
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有