您的位置:首页 > 运维架构 > Linux

关于linux中建立ftp服务的一些问题

2015-04-03 18:30 309 查看
今天因为项目需要,要在linux的系统上部署一个ftp服务,本来一个挺简单的事最后却困扰了半天,所以讲部署的过程记录下来,大家引以为鉴。

首先:

先在系统上安装一个虚拟机(我用的VMware10),为了大家使用的方便,虚拟机安装好后,大家再安装一下VMwareTool,这样就可以在虚拟机内外互相复制拷贝文件了。至于具体

的安装步骤,请大家在网上参考,很多的,我就不多赘述了。

其次:

安装好虚拟机后,就要安装linux了,我用的是(red hat6.4),至于具体的安装步骤也请大家参考一下网络的,也挺简单的,无非就是下一步而已。

最后就是ftp的安装部署了

注:在linux安装时是可以初始化安装ftp的,但是本人由于linux早已装好,所以用的是命令行的方法,所以有兴趣的同学可以自行百度。

好了,下面正式安装配置ftp。

1、安装ftp。

如果在安装linux的时候已经安装了ftp,可以不用再安装了,如果没有则通过此方法进行安装。如果你不确定系统是否安装了ftp,可以用一下命令检查。

打开终端(以后所有的命令操作都是在这里执行)。

rpm -qa|grep vsftpd: --查看是否已经安装了ftp(在linux中叫vsftpd),如果有结果则安装了,否则没有。

如果没有安装,则在linux的镜像文件中找到vsftpd的安装包(vsftpd-2.2.2-11.el6.x86_64.rpm),然后将该文件拷贝到linux系统的一个目录下(我的是/rpm/),最后cd到这个

目录,执行以下命令

rpm -ivh vsftpd-2.2.2-11.el6.x86_64.rpm

在用以上命令检查一下是否安装成功。

另外,卸载vsftpd的命令:

rpm -e vsftpd

2、ftp安装好后,建立一个用户并给其一个主目录:

/usr/sbin/adduser -d /opt/ftp -g ftp -s /sbin/nologin ftpuser --这里是执行adduser命令(注1),ftpuser是新建的ftp用户,其登录的主目录是ftp,ftpuser用户所在的

群组是ftp。

3、给ftpuser用户密码

passwd ftpuser --然后按照提示给予ftpuser账号初始密码。

4、打开 /etc/vsftpd目录下的vsftpd.conf文件

vi /etc/vsftpd/vsftpd.conf

配置:

4.1、将anonymous_enable=YES 改为 anonymous_enable=NO #禁止匿名访问

4.2、将chroot_list_file=/etc/vsftpd/chroot_list的注释去掉(#去掉),并在相应的路径下建立相应的文件chroot_list,并在该文件中加上新建的ftp用户,即ftpuser。

4.3、将防火墙关掉。

service iptables stop --关闭防火墙

service iptables restart --启动防火墙

5、启动ftp服务(注2)

service vsftpd start --启动ftp

service vsftpd status --ftp运行状态

service vsftpd restart --重启ftp

6、连接ftp

浏览器或资源管理器 访问: ftp://192.168.xxx.xxx 输入用户名和密码(注3)

注1:

adduser

用途说明

添加用户,与useradd是同一命令。需要root权限才能执行(有root權限)。

常用参数

-d home_dir 设定使用者的主目录为 home_dir

-p passwd 指定用户的登录密码。RHEL4支持此参数,RHEL5已经去掉这个参数了。

-g group 指定用户所在的群组。

-s shell 设定该用户无法登陆,也就是说你用ftpuser是无法登陆进入系统的,因为他不是普通用户,而是为ftp服务器所使用的用户,所以通常设置为不让其登陆。

注2:

每次配置文件修改后,一定要重起ftp服务。

注3:如果此时仍然访问不到ftp服务,比如我建立的两个用户,一个在home/ftp目录下,一个在opt/ftp目录下。结果是opt目录下的可以访问,home目录下的不能访问,纠结半天

,原来是selinux的原因,将selinux服务关掉即可。

解决的方法如下:

查看SELinux状态:

1、/usr/sbin/sestatus -v ##如果SELinux status参数为enabled即为开启状态

SELinux status: enabled

2、getenforce ##也可以用这个命令检查

关闭SELinux:

1、临时关闭(不用重启机器):

setenforce 0 ##设置SELinux 成为permissive模式

##setenforce 1 设置SELinux 成为enforcing模式

2、修改配置文件需要重启机器:

修改/etc/selinux/config 文件

将SELINUX=enforcing改为SELINUX=disabled

重启机器即可

注4:

一些参考:
http://bguncle.blog.51cto.com/3184079/957315 http://www.cnblogs.com/hnrainll/archive/2011/02/16/1956538.html http://www.linuxidc.com/Linux/2014-05/101166.htm
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: