多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
## Question: 1.新建一个1大小的分区,文件系统为ext3 ,要求挂载到 /ftp下,以此分区作为 ftp服务器的数据存放空间。(略) 2.假设现在有两个部门:sxu_bm1,sxu_bm2(以下我们用部门1和部门2 描述),它们分别分配相应的目录 /ftp/sxu_bm1,/ftp/sxu_bm2 3.创建另一个公共目录 /ftp/public 4.假设现有两个用户:姓名_1,姓名_2(以下我们用用户1和用户2 来描述),用户1属于部门1,用户2属于部门2,他们分别只能访问自己所属部门的目录,但可访问public目录。 5.另外创建一个用户,用户名为admin,假设该用户为为管理员用户,即可以访问 ftp 服务器上的任何目录。 6.各个用户权限说明,用户1和用户2在其所能访问的目录中,能够上传和下载文件,但不能够删除文件、更改文件名。admin用户对所有目录都可以上传、下载、删除、等功能。 7.ftp服务不支持匿名用户访问。 ## Answer: 使用本地用户模式 ``` yum -y install vsftpd groupadd depart1 groupadd depart2 groupadd ftppub useradd -G depart1,ftppub name_1 useradd -G depart2,ftppub name_2 useradd -G depart1,depart2,ftppub admin echo pass1 | passwd --stdin name_1 echo pass2 | passwd --stdin name_2 echo admin | passwd --stdin admin mkdir /ftp mkdir /ftp/sxu_bm1 mkdir /ftp/sxu_bm2 mkdir /ftp/pub chown name_1:depart1 /ftp/depart1 chown name_2:depart2 /ftp/depart2 chown admin:ftppub /ftp/public chmod -R 770 /ftp/* vim /etc/vsftpd/vsftpd.conf anonymous_enable=NO local_root=/ftp user_config_dir=/etc/vsftpd/local_user_config chroot_list_enable=YES chroot_list_file=/etc/vsftpd/chroot_list touch /etc/vsftpd/chroot_list mkdir /etc/vsftpd/local_user_config cd /etc/vsftpd/local_user_config vim name_1 cmds_allowed=ABOR,CWD,LIST,MDTM,MKD,NLST,PASS,PASV,PORT,PWD,QUIT,RETR,RMD,SITE,SIZE,STOR,TYPE,USER,ACCT,APPE,CDUP,HELP,MODE,NOOP,REIN,STAT,STOU,STRU,SYST vim name_2 cmds_allowed=ABOR,CWD,LIST,MDTM,MKD,NLST,PASS,PASV,PORT,PWD,QUIT,RETR,RMD,SITE,SIZE,STOR,TYPE,USER,ACCT,APPE,CDUP,HELP,MODE,NOOP,REIN,STAT,STOU,STRU,SYST vim admin cmds_allowed=ABOR,CWD,LIST,MDTM,MKD,NLST,PASS,PASV,PORT,PWD,QUIT,RETR,RMD,RNFR,RNTO,SITE,SIZE,STOR,TYPE,USER,ACCT,APPE,CDUP,HELP,MODE,NOOP,REIN,STAT,STOU,STRU,SYST,DELE ``` ## cmds_allowed ``` CWD - change working directory 更改目录 LIST - list remote files 列目录 MKD - make a remote directory 新建文件夹 NLST - name list of remote directory PWD - print working directory 显示当前工作目录 RETR - retrieve a remote file 下载文件 STOR - store a file on the remote host 上传文件 DELE - delete a remote file 删除文件 RMD - remove a remote directory 删除目录 RNFR - rename from 重命名 RNTO - rename to 重命名 以上是常用的一些参数,大家对照学习一下!下面是列也的全部参数,供大家参考! # ABOR - abort a file transfer 取消文件传输 # CWD - change working directory 更改目录 # DELE - delete a remote file 删除文件 # LIST - list remote files 列目录 # MDTM - return the modification time of a file 返回文件的更新时间 # MKD - make a remote directory 新建文件夹 # NLST - name list of remote directory # PASS - send password # PASV - enter passive mode # PORT - open a data port 打开一个传输端口 # PWD - print working directory 显示当前工作目录 # QUIT - terminate the connection 退出 # RETR - retrieve a remote file 下载文件 # RMD - remove a remote directory # RNFR - rename from # RNTO - rename to # SITE - site-specific commands # SIZE - return the size of a file 返回文件大小 # STOR - store a file on the remote host 上传文件 # TYPE - set transfer type # USER - send username # less common commands: # ACCT* - send account information # APPE - append to a remote file # CDUP - CWD to the parent of the current directory # HELP - return help on using the server # MODE - set transfer mode # NOOP - do nothing # REIN* - reinitialize the connection # STAT - return server status # STOU - store a file uniquely # STRU - set file transfer structure # SYST - return system type ```