阿里云CentOS使用vsftpd搭建FTP服务器
原文地址
自己学习用的
[if !supportLists]1. [endif]检查更新:# yum check-update
[if !supportLists]2. [endif]安装更新:# yum update
前两条可省略
[if !supportLists]3. [endif]检查是否安装vsftpd:#rpm -q vsftpd或者rpm –qa | grep vsftpd
[if !supportLists]4. [endif]安装vsftpd:# yum install vsftpd –y
[if !supportLists]5. [endif]vsftpd.ftpusers:位于/etc目录下.它指定了哪些用户账户不能访问FTP服务器,例如root等. vsftpd.user_list:位于/etc目录下.该文件里的用户账户在默认情况下也不能访问FTP服务器,仅当vsftpd .conf配置文件里启用userlist_enable=NO选项时才允许访问. vsftpd.conf:位于/etc/vsftpd目录下.来自定义用户登录控制、用户权限控制、超时设置、服务器功能选项、服务器性能选项、服务器响应消息等FTP服务器的配置.
[if !supportLists]6. [endif]设置开机启动vsftpd ftp服务
# chkconfig vsftpd on
启动vsftpd服务
# service vsftpd start
管理vsftpd相关命令:
停止vsftpd:# service vsftpd stop
重启vsftpd:# service vsftpd restart
[if !supportLists]7. [endif]开通telnet服务(这一步经过验证可以省略。)
# rpm -q xinetd
# yum -y install xinetd
# chkconfig xinetd on
# service xinetd start
这样就开通了telnet了。
[if !supportLists]8. [endif]建立用户组和用户和相应的文件夹并更改权限,达到题目要求
# groupadd group1
# useradd -g group1 user1
# useradd -g group1 user2# useradd -g group1 admin
增加一个新用户到主要用户组,-g的意思是将user1的主要用户组设为group1
# passwd user1# passwd user2# passwd admin
# mkdir /home/zc
# chown :group1 /home/zc
chown将指定文件的拥有者改为指定的用户或组
# chmod 770 /home/zc
8. linux下如何查看所有的用户和组信息
/etc/group文件是用户组的配置文件。
/etc/passwd文件是用户的配置文件。
使用cat、more、less、head、tail以及vim等命令都可以查看、修改这两个配置文件。
说明:
/etc/passwd的文件内容格式:注册名:口令:用户标识号:组标识号:用户名:用户主目录:命令解释程序 。以root用户为例。root是用户注册名,X表示密码保存在/etc/shadow,用户ID为0,所在用户组ID为0,用户名是root,home目录为/root,解释程序/bin/bash。
/etc/group的文件内容格式: 组名:密码保存位置:组ID:组成员。以root用户组为例,即组名是root,密码保存位置为/etc/shadow,root组的GID为0,组下面的用户是root用户。
9. 编辑VSFTPD.CONF
# vim /etc/vsftpd/vsftpd.conf
anonymous_enable=NO
加入
local_root=/etc/zancheng
user_config_dir=/etc/vsftpd/ftp_config_dir
开启chroot
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
10.建立并编辑chroot_list
# vi /etc/vsftpd/chroot_list
填入你创建的用户
user1
user2
user3
user4
admin
11. 建立用户的独立文件
# mkdir /etc/vsftpd/ftp_config_dir
# vim /etc/vsftpd/ftp_config_dir/user1
cmds_allowed=ABOR,ACCT,APPE,CWD,CDUP,HELP,LIST,MODE,MDTM,NOOP,NLST,PASS,PASV,PORT,PWD,QUIT,REIN,RETR,SITE,SIZE,STOR,STAT,STOU,STRU,SYST,TYPE,USER
# cp /etc/vsftpd/ftp_config_dir/user1 /etc/vsftpd/ftp_config_dir/user2
# cp /etc/vsftpd/ftp_config_dir/user1 /etc/vsftpd/ftp_config_dir/user3
# cp /etc/vsftpd/ftp_config_dir/user1 /etc/vsftpd/ftp_config_dir/user4
12.现在admin具有可读可写可修改的权限,user1、user2、user3、user4具有可读可写权限,如果想修改权限,可按下面的做法:
1、只能上传。不能下载、删除、重命名。
cmds_allowed=FEAT,REST,CWD,LIST,MDTM,MKD,NLST,PASS,PASV,PORT,PWD,QUIT,RMD,SIZE,STOR,TYPE,USER,ACCT,APPE,CDUP,HELP,MODE,NOOP,REIN,STAT,STOU,STRU,SYST
2、只能下载。不能上传、删除、重命名。
write_enable=NO
3、只能上传、删除、重命名。不能下载。
download_enable=NO
4、只能下载、删除、重命名。不能上传。
cmds_allowed=FEAT,REST,CWD,LIST,MDTM,MKD,NLST,PASS,PASV,PORT,PWD,QUIT,RMD,RNFR,RNTO,RETR,DELE,SIZE,TYPE,USER,ACCT,APPE,CDUP,HELP,MODE,NOOP,REIN,STAT,STOU,STRU,SYST
13. 关掉SELinux:打开终端,输入:setsebool -P ftpd_disable_trans 1然后重启FTP服务:service vsftpd restart
14.使用Windows文件资源管理器或者filezilla登录ftp://123.123.123.123(填你自己的外网地址)试一下