怎样给FTP设置指定的用户名访问和目录

怎样给FTP设置指定的用户名访问和目录,第1张

在桌面上右击“我的电脑”,执行“管理”命令,在“计算机管理”窗口的左窗格中依次展开“系统工具”→“本地用户和组”目录,单击选中“用户”选项。在右侧窗格中单击右键,执行“新用户”命令。在打开的“新用户”对话框中填写用户名(如hanjiang),并设定密码。然后取消“用户下次登录时需更改密码”复选框,并勾选“用户不能更改密码”和“密码永不过期”复选框,单击“创建”按钮完成该用户的添加。重复这一过程添加其他用户,最后单击“关闭”按钮即可。

为方便对这些用户的管理,最好将他们放入一个专门的组中。例如我们可以创建一个“FTPUsers”组:在“计算机管理”窗口的目录树中单击选中“组”选项,然后在右侧窗格中单击右键,执行“新建组”命令,并将该组命名为“FTPUsers”。接着依次单击“添加”→“高级”→“立即查找”按钮,将刚才创建的用户全部添加进来,最后依次单击“创建”→“结束”按钮。

然而事情并没有完,因为上述创建的用户默认隶属于“Users”组,也就是说他们拥有对大部分资源的浏览权限。为了实现对特定资源的有效管理,需要将这些用户从“Users”组中删除。在“计算机管理”窗口的右侧窗格中双击“Users”选项,用鼠标拖选所有刚添加的用户并单击“删除”按钮即可。 设置独立权限

这里的权限设置需要分两部分来进行,即对FTP服务器主目录的权限设置和对各个用户文件夹的权限设置。假设FTP服务器的主目录路径为“G:/FTPServer”,我们先来取消“FTPUsers”组的用户对“FTPServer”文件夹的“写入 ”权限。右击“FTPServer”文件夹,执行“属性”命令。在打开的“FTPServer 属性”对话框中切换至“安全”选项卡下,然后依次单击“添加”→“高级”→“立即查找”按钮,单击选中“FTPUsers”组并依次单击“确定”按钮回到“FTPServer 属性”对话框。接着在“FTPUsers的权限”列表框中勾选“拒绝写入”复选框。为了使“拒绝写入”权限仅对“FTPServer”文件夹有效,还需要单击“高级”按钮,在“FTPServer的高级安全设置”对话框中双击“权限列表”中的“拒绝FTPUsers写入”选项,打开“FTPServer的权限设置”对话框。在“应用到”下拉列表中选中“只有该文件夹”选项,连续单击“确定”按钮完成设置(如图1)。

接着我们为每个用户创建独立的文件夹(以用户名命名),并针对每个文件夹赋予相应用户适当的权限。以文件夹“hanjiang”为例,在“hanjiang 属性”对话框的“安全”选项卡下将用户“hanjiang”添加进来,并赋予其读取和写入的权限。同理,对于其他文件夹,也只赋予相应用户读取和写入的权限。

小提示:需要受到权限保护的文件夹必须在NTFS分区中创建,FAT32分区内的资源无法设置权限。 至此,设置工作就全部结束了。在任意一台机器上以用户“hanjiang”的身份登录FTP服务器,你会发现该用户只能在“hanjiang”文件夹中任意读写,而无法看到主目录和其他用户目录的内容。

使用root账号登录centos系统

检查是否已安装vsftp

rpm -qa |grep vsftpd #未输出信息,表示未安装vsftp

通过yum安装vsftp

yum -y install vsftpd

ftp启动、重启、停止、状态查询命令

service vsftpd start        #启动ftpservice vsftpd stop         #停止ftpservice vsftpd restart      #重启ftpservice vsftpd status       #查询ftp状态

设置为开机启动(可设置)

chkconfig vsftpd on

设置配置文件

vi /etc/vsftpd/vsftpd.conf

修改如下内容:

anonymous_enable=NO            #设置不允许匿名账户登录chroot_local_user=YES          #所有用户限制在主目录中chroot_list_enable=NO          #不启动限制用户名单,直接限制所有用户userlist_enable=NO             #当为YES时只有userlist_file文件中指定的用户才能登录allow_writeable_chroot=YES     #(在文件尾部新增)防止用户有写入权限时报错local_root=/home/www            #(在文件尾部新增)设置用户的根目录

重启ftp

service vsftpd restart

创建ftp用户

创建用户组

groupadd ftpgroups

创建用户

# useradd 添加用户命令   -d /home/www 指定用户根目录  -g ftpgroups 加入用户组  ftptest用户名useradd -d /home/www -g ftpgroups ftptest

设置用户密码

passwd ftptest          # passwd(命令) ftptest(用户名,根据你实际情况写)

设置不允许用于系统登录

usermod -s /sbin/nologin ftptest  #ftptest(用户名,根据你实际情况写)

设置文件权限

chmod 755 /home/www

设置目录拥有者

chown -R ftptest:root /home/www      #ftptest:ftp用户名 /home/www:文件目录

设置防火墙 

查看防火墙状态,如果未启动,直接跳过本步骤

systemctl status firewalld

开放20、21端口(阿里云服务器还需配置安全组开放防火墙)

firewall-cmd --permanent --zone=public --add-port=20/tcpfirewall-cmd --permanent --zone=public --add-port=20/udpfirewall-cmd --permanent --zone=public --add-port=21/tcpfirewall-cmd --permanent --zone=public --add-port=21/udpfirewall-cmd --reload #重新载入

至此ftp服务安装成功,如果出现不能访问或不能写入的情况,就还需要设置SELinux(关闭)

sestatus -v     #查看SELinux状态,如果SELinux status参数为enabled即为开启状态setenforce 0    #临时关闭(不用重启机器)


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/373855.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-13
下一篇2023-05-13

发表评论

登录后才能评论

评论列表(0条)

    保存