在Linux系统中,搭建一个服务,就是修改其配置文件,一般情况下,配置文件的修改出现问题的概率不大,多半是一些其他因素导致客户机与服务器之间访问出现问题,下面就针对客户机访问FTP服务器常出现的一些问题找出解决办法。其他服务的解决办法也类似。
1.客户机无法访问FTP服务器
如果说客户机无法访问FTP服务器多半是防火墙的作怪,iptables 防火墙管理工具默认禁止了 FTP 传输协议的端口号,因此在正式配置 vsftpd 服务程序之前,为了避免这些默认的防火墙策略“捣乱”,还需要清空 iptables 防火墙的默认策略,并把当前已经被清理的防火墙策略状态保存下来
2.配置完匿名开放模式后,客户机可以登录FTP服务器,但是无法创建和上传文件或目录
在前面已经清空了 iptables 防火墙策略,而且也在 vsftpd 服务程序的主配置文件中添加了允许匿名用户创建目录和写入文件的权限,但貌似没有生效。这种情况不是防火墙或者配置文件的问题,而是默认共享目录的权限在作怪,在 vsftpd 服务程序的匿名开放认证模式下,默认访问的是/var/ftp 目录。通过查看该目录的权限得知,只有 root 管理员才有写入权限。怪不得系统会拒绝操作呢!下面将目录的所有者身份改成系统账户 ftp 即可(该账户在系统中已经存在),这样应该可以了吧。
但是用客户机登录FTP服务器后,系统再次报错,还是不能创建和上传文件和目录,这又是为什么了?会不会是SELinux在作怪了,下面使用 getsebool 命令查看与 FTP 相关的 SELinux 域策略都有哪些:
我们可以看到许多关于ftp相关的规则,我们只需注意上面圈出的这条,将off修改为on即可,修改方法如下:
修改完后,便可以顺利执行文件创建、修改及删除等操作了
提示:其他两种模式,本地用户模式和虚拟用户模式,如果在配置文件没有问题的前提下,客户机无法访问FTP服务器的话,只要修改SELinux策略即可。
原文地址:http://blog.51cto.com/13803922/2169011