centos FTP服务器的架设和配置

本文深入解析 CentOS FTP 服务器的配置过程,包括启动、重启、关闭服务,解决常见故障如无法读取配置文件、访问权限受限等问题,并详细指导如何管理 CentOS 的 SELinux 和防火墙,确保 FTP 服务正常运行。

yum install vsftpd

2.启动/重启/关闭vsftpd服务器
[root@localhost ftp]# /sbin/service vsftpd restart
Shutting down vsftpd: [ OK ]
Starting vsftpd for vsftpd: [ OK ]
OK表示重启成功了.
启动和关闭分别把restart改为start/stop即可.
如果是源码安装的,到安装文件夹下找到start.sh和shutdown.sh文件,执行它们就可以了.



故障1:

500 OOPS: cannot read config file: start

原因是没有激活vsftpd,并设置其运行级别。
解决方法:
用root帐号登陆后,在/etc 目录下
输入:chkconfig --level 35 vsftpd on

再输入 service vsftpd start


故障2

500 OOPS: cannot change directory:/home/***
CentOS系统安装了SELinux,因为默认下是没有开启FTP的支持,所以访问时都被阻止了。
//查看SELinux设置
# getsebool -a|grep ftp
ftpd_disable_trans --> off
或者
ftp_home_dir-->off
解决方法:
//使用setsebool命令开启
# setsebool ftpd_disable_trans 1
或者
# setsebool ftp_home_dir 1
//再次查看当前状态是否是on的状态
# getsebool -a|grep ftp
ftpd_disable_trans --> on
或者
ftp_home_dir-->on


//setsebool使用-P参数,无需每次开机都输入这个命令
# setsebool -P ftpd_disable_trans 1
或者
# setsebool -P ftp_home_dir 1
# service vsftpd restart


有关selinux的配置
如关闭,仅仅警告,强制等等 需要编辑/etc/sysconfig/selinux 默认是强制


故障3 只能下载不能上传

是一个叫SElinux的东西在作怪。它是用于安全子系统的权限的控制的,如果弄得好会很好用,弄不好就会诸多限制,于是我查询了一下如何关闭它:

  /usr/sbin/setenforce 0 立刻关闭 SELINUX

  /usr/sbin/setenforce 1 立刻启用 SELINUX



故障x 解决方案

#/etc/init.d/iptables stop                    ## 本次关闭防火墙





**********************************************************************************************************************************

关闭防火墙

#/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT  

#/sbin/iptables -I INPUT -p tcp --dport 22 -j ACCEPT  

#/etc/rc.d/init.d/iptables save 

重启计算机后,防火墙默认已经开放了80和22两个端口。

 

临时性的完全关闭防火墙,可以不重启机器:

#/etc/init.d/iptables status                ## 查看防火墙状态

#/etc/init.d/iptable stop                    ## 本次关闭防火墙

#/etc/init.d/iptable restart                ## 重启防火墙

永久性关闭防火墙

#chkconfig --level 35 iptables off   ## 注意中间的是两个英式小短线;重启

 


附:

设置防火墙开放端口的方法如下:

vi /etc/sysconfig/iptables

修改防火墙时注意最好留下VNC和SSH的管理端口。 

     下面是一个iptables的示例:

     # Firewall configuration written by system-config-securitylevel
     # Manual customization of this file is not recommended.*filter
     :INPUT ACCEPT [0:0]
     :FORWARD ACCEPT [0:0]
     :OUTPUT ACCEPT [0:0]
     :RH-Firewall-1-INPUT - [0:0]
     -A INPUT -j RH-Firewall-1-INPUT
     -A FORWARD -j RH-Firewall-1-INPUT
     -A RH-Firewall-1-INPUT -i lo -j ACCEPT
     -A RH-Firewall-1-INPUT -p icmp –icmp-type any -j ACCEPT
     -A RH-Firewall-1-INPUT -p 50 -j ACCEPT
     -A RH-Firewall-1-INPUT -p 51 -j ACCEPT
     -A RH-Firewall-1-INPUT -m state –state ESTABLISHED,RELATED -j ACCEPT
     -A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 53 -j ACCEPT
     -A RH-Firewall-1-INPUT -m state –state NEW -m udp -p udp –dport 53 -j ACCEPT
     -A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 22 -j ACCEPT    
     -A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 25 -j ACCEPT
     -A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT
     -A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 443 -j ACCEPT
     -A RH-Firewall-1-INPUT -j REJECT –reject-with icmp-host-prohibited
      COMMIT

      要根据具体需求修改此文件,如不希望开放80端口提供web服务,那么应相应地删除这一行:

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

     全部修改完之后重启iptables:
     service iptables restart

     你可以验证一下是否规则都已经生效:iptables -L

     这样,我们就完成了CentOS防火墙的设置修改。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值