CentOS 6.2 安装vsftpd 服务器(转)

时间:2022-10-20 10:51:02

CentOS 6.2 安装vsftpd 服务器

本人的CentOS 6.2是安装在win 2008 R2 server 的 Hyper-V 虚拟机中。
centos使用光盘安装,以最小模式安装,完成后用Putty 登陆 SSH ,然后用
#yum  update -y
升级到最新版本,现在就安装vsftp及配置方法作一实录,希望对各位有所帮助。
安装ftp server,主要用于内部用户ftp上传文件,匿名及虚拟用户暂时不设置。

1. 安装
使用chkconfig --list来查看是否装有vsftpd服务;或者用 rpm -qa |grep ftp 检查有无安装。系统为mini安装,未安装任何ftp

server。
使用yum命令直接安装:
yum -y install vsftpd
然后为它创建日志文件:
touch /var/log/vsftpd.log

这样简单的两个命令就完成了vsftp的安装,但是如果你现在想这样ftp://your_ip来访问的话,那还不行,还需要配置权限!

2. 启动与配置自启动
使用chkconfig --list来查看vsftpd服务启动项情况;
如果看到的是如下显示的结果:
vsftpd          0:off   1:off   2:off   3:off   4:off   5:off   6:off
服务全部都是off的,注意这里的off表示的是服务器启动的时候是否会自启动服务,我们使用如下命令来配置其自启动:
chkconfig --level 235 vsftpd on #2345对应的是上面对应的0-6项

查看与管理ftp服务可以使用以下命令:
启动ftp服务:service vsftpd start
查看ftp服务状态:service vsftpd status
重启ftp服务:service vsftpd restart
关闭ftp服务:service vsftpd stop

3. 配置vsftp服务
编辑/etc/vsftpd/vsftpd.conf文件,配置vsftp服务:
#vi /etc/vsftpd/vsftpd.conf
3.1 编辑修改如下项目:
anonymous_enable=NO #设定不允许匿名访问
local_enable=YES #设定本地用户可以访问。注:如使用虚拟宿主用户,在该项目设定为NO的情况下所有虚拟用户将无法访问。
chroot_list_enable=YES #使用户不能离开主目录

暂时就修改这几个选项,其余更多设置、使用请百度。

4. 启动vsftpd
service vsftpd start

用netstat -tl 可以查看ftp端口是否在侦听了。

5. 检查 SELinux 设置

centos 安装了SElinux加强安全性,现在你用用户帐号登陆ftp,会提示无法切换到用户目录。
执行下面命令检查 SELinux 设置:
#getsebool -a | grep ftp
allow_ftpd_anon_write --> off
allow_ftpd_full_access --> off
allow_ftpd_use_cifs --> off
allow_ftpd_use_nfs --> off
ftp_home_dir --> off
ftpd_connect_db --> off
ftpd_use_passive_mode --> off
httpd_enable_ftp_server --> off
tftp_anon_write --> off

默认都是OFF的,为了本地用户能够正常登陆ftp目录,执行:

#setsebool -P ftp_home_dir ON

也可以编辑/etc/selinux/config 文件来修改不同的安全等级,不过不建议如此操作。

可以再用getsebool -a | grep ftp命令检查是否设置上了。

好了,现在先关闭防火墙来看看ftp server是否工作正常了。
#service iptables stop
连接ftp看看,应该能够正常工作了。
接下来我们就来设置棘手的防火墙了。

6. 设置iptables防火墙
ftp server已经启动了,当然需要设置防火墙开放ftp。(关闭防火墙也是一个办法,不过强烈建议不如此做)

默认新安装系统的iptables的禁止所有的端口(除了ssh 22端口),设置了访问策略后大部分情况下会出现ftp不能正常访问的问题,因

为ftp有主动和被动连接两种模式,少添加一些策略就会出问题。

6.1首先加载:
#modprobe ip_conntrack_ftp
#modprobe ip_nat_ftp

6.2然后加载iptables策略
#iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
#iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
#iptables -I INPUT -p tcp --dport 21 -j ACCEPT
#iptables -I OUTPUT -p tcp --dport 21 -j ACCEPT

设置这些规则后,ftp应该能够访问了(用一个账户登陆,会出现提示无法切换用户目录,这个问题需要第6步解决)。
这些iptables规则设置在系统重新启动后就不保存了,为了保证每次启动都作这些设置,参照如下做法:
编辑iptables 配置文件
#vi /etc/sysconfig/iptables-config
IPTABLES_MODULES="" 修改为:
IPTABLES_MODULES="ip_conntrack_ftp ip_nat_ftp"

如果原来有模块,只需要在原有模块后面增加ip_conntrack_ftp ip_nat_ftp,用空格作分割。

重新启动iptables
#service iptables  restart

添加iptable 规则:
iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -I INPUT -p tcp --dport 21 -j ACCEPT
iptables -I OUTPUT -p tcp --dport 21 -j ACCEPT

用另外计算机连接ftp测试,正常的话,把规则保存到iptables

#service iptables save

也可以编辑iptables规则文件,增加

编辑/etc/sysconfig/iptales 文件

增加:

-A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-I INPUT -p tcp --dport 21 -j ACCEPT
-I OUTPUT -p tcp --dport 21 -j ACCEPT

好了,现在可以用ftp程序访问centos。暂时未测试IE浏览器访问FTP,待日后再测试。

CentOS 6.2 安装vsftpd 服务器(转)的更多相关文章

  1. 在CentOS 7中安装nginx服务器

    简要地介绍一下,如何在CentOS 7中安装nginx服务器  下载对应当前系统版本的nginx包(package) # wget  http://nginx.org/packages/centos/ ...

  2. CentOS 7 安装vsftpd 服务器

    在CentOS7上安装ftp服务器用于保存服务端上传的图片. 1.CentOS卸载vsftpd的方法 如果服务器上已经安装了vsftpd服务,配置出错需要卸载vsftpd服务. 1.1 查找vsftp ...

  3. Centos 安装vsftpd 服务器

    一:检查有没有安装vsftpd 二:安装vsftpd 三:安装之后重启 四:修改vsftpd配置文件 配置文件路径在/etc/vsftpd目录下 默认是注释掉的,把#号去掉 然后重启vsftpd 五: ...

  4. Linux\CentOS 安装 vsftpd 服务器

    安装 查看电脑是否存在 vsftpd 服务器 rmp -qa|grep vsftpd 如果有就删除,没有就使用yum 安装 vsftpd yum -y install vsftpd 配置 在根目录下创 ...

  5. Centos 6.5下安装vsftpd服务器

    1.查看是否安装vsftp  [root@localhost ~]#rpm -qa|grep vsftpd 如果出现 vsftpd-2.2.2-13.el6_6.1.x86_64  则说明已经安装了v ...

  6. CentOS 6.8 安装vsftpd

    简介: vsftpd是“very secure FTP daemon”的缩写,是一个完全免费的.开发源代码的ftp服务器软件. 特点: vsftpd是一款在Linux发行版本中最受推崇的FTP服务器程 ...

  7. 如何在CentOS 7上安装Percona服务器

    在这篇文章中我们将了解关于 Percona 服务器,一个开源的MySQL,MariaDB的替代品.InnoDB的数据库引擎使得Percona 服务器非常有吸引力,如果你需要的高性能,高可靠性和高性价比 ...

  8. 如何在 CentOS 7 上安装 Redis 服务器

    大家好,本文的主题是 Redis,我们将要在 CentOS 7 上安装它.编译源代码,安装二进制文件,创建.安装文件.在安装了它的组件之后,我们还会配置 redis ,就像配置操作系统参数一样,目标就 ...

  9. 在CentOS 7中安装Jetty服务器

    Jetty 是一款纯Java的HTTP (Web) 服务器和Java Servlet容器. 通常在更大的网络框架中,Jetty经常用于设备间的通信,而其他Web服务器通常给"人类" ...

随机推荐

  1. SQL初级第三课(下)

    我们续用第三课(上)的表 辅助表 Student                   Course               Score                    Teacher Sno ...

  2. MongoDB学习笔记——聚合操作之MapReduce

    MapReduce MongoDB中的MapReduce相当于关系数据库中的group by.使用MapReduce要实现两个函数Map和Reduce函数.Map函数调用emit(key,value) ...

  3. Linux 上使用 Gmail SMTP 服务器发送邮件通知

    导读 假定你想配置一个 Linux 应用,用于从你的服务器或桌面客户端发送邮件信息.邮件信息可能是邮件简报.状态更新(如 Cachet).监控警报(如 Monit).磁盘时间(如 RAID mdadm ...

  4. 动软模板系列二(Model层模板)

    动软模板其实和CodeSmith的模板差不多 实现的原理是一样的,但是CodeSmith貌似只支持表生成,而且不够“国人化”,所以打算研究下动软的模板,如果熟练掌握后想必以后开发项目效率可以提高很多了 ...

  5. 什么是Servlet,Servlet的作用,生命周期,如何创建、配置Servlet

    什么是Servlet,作用是? servlet是一个基于java技术的WEB组件,运行在服务器端,我们利用 sevlet可以很轻松的扩展WEB服务器的功能,使它满足特定的应用需要.servlet由se ...

  6. C# 编写windows服务及服务的安装、启动、删除、定时执行任务

    一.编写windows服务 1.VS2017  - 创建服务Myservice 2.创建好项目之后 --- >> 双击 Service1.cs  ---- >>  出现一个设计 ...

  7. BZOJ.3667.Rabin-Miller算法(MillerRabin PollardRho)

    题目链接 Pollard_Rho:http://blog.csdn.net/thy_asdf/article/details/51347390 #include<cstdio> #incl ...

  8. 【R作图】lattice包,画多个分布柱形图,hist图纵轴转换为百分比

    一开始用lattice包,感觉在多元数据的可视化方面,确实做得非常好.各种函数,可以实现任何想要实现的展示. barchart(y ~ x) y对x的直方图 bwplot(y ~ x) 盒形图 den ...

  9. python遇到的文件错误

    学习了json.load,运行时出现了以下错误 load读取的是前面写入的文件,如果读取的文件为空,则会出现这个错误,如果不为空,则正确.所以一定要保证读取的文件不为空.

  10. Linux 内核开发 - 内核定时器

    时间差的度量 系统的定时器硬件以固定的频率产生时钟中断,产生始终中断的间隔以HZ 常量来决定,通常在50~1200之间,x86默认是1000.HZ能够依据不同的内核来配置. Linux 採用jiffi ...