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:
原因是没有激活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 只能下载不能上传
/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防火墙的设置修改。
本文深入解析 CentOS FTP 服务器的配置过程,包括启动、重启、关闭服务,解决常见故障如无法读取配置文件、访问权限受限等问题,并详细指导如何管理 CentOS 的 SELinux 和防火墙,确保 FTP 服务正常运行。
1202

被折叠的 条评论
为什么被折叠?



