快捷搜索:   nginx

Centos 5.x下配置虚拟主机的FTP

最近很多客户咨询如何把Centos美国独立主机成虚拟主机对外提供主机服务。其中很重要的一个环节就是ftp的。下面将其步骤与大家分享 如下:

适应环境:Centos 5.1 5.2 5.3 5.4

首先查看有没有安装vsftpd软件包

运行命令

rpm -qa | grep vsftpd

然后通过yum安装vsftpd,一般云志互联提供的美国独立主机已经默认安装了vsftpd,可以省略此步骤。

运行命令

yum install vsftpd

centos会自动下载安装。

安装完毕后,设置开机自动运行。

service vsftpd start

chkconfig vsftpd on

此时可以通过 netstat -tl查看是否在监听21端口。

接着就可以添加ftp虚拟帐号:

特别提醒:用useradd建立的,如果后面不加–s /sbin/nologin参数,建立的为普通系统用户,有系统登陆centos服务器的权限,在虚拟主机环境下,这非常危险。所以要在 useradd命令后面加上参数–s /sbin/nologin,为centos 服务器虚拟主机添加不可以登录系统的ftp专用账号,命令如下:
# useradd –s /sbin/nologin –d /var/www   -g ftp gpu

说明:

-s /sbin/nologin是让其不能登陆系统
-d 是指定用户目录为/var/www ,这里可以替换成任何你需要的目录。
-g ftp 把用户加入到ftp组中
gpu是ftp用户名,在配置时把这个gpu换成你的ftp用户名。

执行该命令后,如果出现这样的错误提示:

useradd: warning: the home directory already exists.
Not copying any file from skel directory into it.

这说明用户的目录已经存在(/var/www,这个可以是任何你设定的目录),不可再新建此目录,并非添加用户失败,可以忽略。

下面就为这个新添加的用户创建 ftp密码

# passwd gpu

接下来修改/var/www目录属性:(或任何自己定义的目录)
$ chmod -R 777 /var/www 递归地给此目录下所有文件和子目录的读、写、执行权限
$ chgrp -R ftp   /var/www 递归地把此目录及该目录下所有文件和子目录的组属性设置成ftp组

然后配置 vsftpd 的配置文件

vi /etc/vsftpd/vsftpd.conf

基本可以保持默认的参数不变,只有2个地方需要修改为如下:

anonymous_enable=NO

chroot_local_user=YES

最后重启 vsftpd服务

#service vsftpd restart

顶(0)
踩(0)

您可能还会对下面的文章感兴趣:

最新评论