linux添加新用户并设置权限 - Go语言中文社区

linux添加新用户并设置权限


本文来自我的网站-跨时代的jay

linux是一个多用户分布式系统

同一台主机可供多人使用

尤其是在服务器这块应用广泛

有可能同时会有几千人在登录同一台主机

但这时权限的设置就显得尤为重要

简单点说就是够用就好

linux添加新用户

# root用户下
$ adduser ch
# 下面的某些信息可以按enter跳过



创建完后,同时为ch分配了一个家目录

登录新用户

我们采用ssh的方式

$ ssh ch@xxx.xxx.xxx.xxx

这时候的ip是你所连的局域网的ip



查看权限

假设新添加的用户ch是你的室友

你允许他访问你的电脑的时候

但是你有个人小秘密

不想让他看到

怎么办

那我们就来试探一下

创造一个secret目录

并创建文件mimi

$ mkdir secret 
# 创建secret目录
$ touch mimi
# 创建空文件mimi
$ echo "mimi" > secret/mimi
# 为mimi文件添加内容

怎么查看权限呢?

查看目录信息以及内容

$ ls -ld secret
# d表示dicretionary 

下面的drwxr-xr-x表示什么呢?

d 表示这是一个目录

后面有9位

每三位一组

r->read 拥有读的权利 用数字4表示

w->write 拥有写即改的权利 用数字2表示

x->execute 即我们熟悉的.exe可执行 用数字1表示

所以当我们看到 777 时表明拥有所有权限

第一组rwx : 表示文件所有者的权限 为可读可写可执行

第二组r-x : 表示所属群组的权限 为可读可执行

第三组r-x : 表示其他人的权限 可读可执行

后面的2 root root

2便是该目录的链接数(不用在意)

第一个root是文件所有者

第二个root为所属群组

默认的话新创建的用户没有加入组

就自创一个,他一个人在那一个组

再看一看目录下文件的权限

$ ls -l /secret/mimi


-表示这是一个文件

rw- 文件所有者可读可写

r-- 群组可读

r-- 其他人可读

对于文件来说默认是不给可执行的权限的

因为很多病毒就是通过文件的可执行才能运行

这里是为了安全考虑

验证权限

注意对于目录的权限和文件的权限的区别

目录的可写

表示对目录下的文件可以删除和创造新文件

目录的可读表示可以列出目录下的文件

验证一下我这位亲爱的室友能不能看到我创建的文件

不然我的小秘密被看到了怎么办

上面查询到的ch用户是有权限看的

那我们先验证可以看

切换到ch用户

$ cat mimi
# 查看内容



那他能不能修改呢

$ echo "看看我能不能写" > mimi

对不起,您是不能修改我文件的内容的

NEXT!

He cannot read!

切换到root用户

修改权限

$ chmod o-r setret/mimi
# 对于root群组来说 由于ch用户并不在群组里面
# 他这时候的身份就是其他人
# chmod 表示修改权限
# o-r 表示 把可看的权限去掉

切换到ch用户

验证这时候他能不能看到

hahaha

舒舒服服

对不起 我莫得感情

要是他气的想要删除怎么办?

对不起不可能

因为前面说了对目录的权限是可读可执行

并没有写的权限

那就验证一下咯

切换到ch用户

$ rm mimi




哈哈哈

对不起

我莫得感情

他要是起的把我文件夹都删了怎么办

那就更不可能了

你对我的目录仅有读的权利

$ rm -rf secret
# rm -rf 强制并且递归删除目录secret

仍然是没有权限的

大可放心

如果某一天我向和他共同拥有这个小秘密呢

那我就给他读写的权利呗

这时候发现显示权限不足

于是发现既然是让他能修改

那肯定是能先读啊

这是如果我们让让有可写但没有可读的权限

看看是怎样的

首先我们确认

在root用户下看一看该文件

内容为:

mimi

切换到ch用户

因为他是没有读的权利

但是他可以改

但是改完之后

以前的内容被覆盖了

改完之后他仍旧是不能看

切换到root用户

看,的确内容被覆盖了

所以如果你想让他和你一起拥有秘密

请你也给他读的权限吧

$ chmod o+r secret/mimi

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0qCGwdek-1575292207594)(https://picture.nj-jay.com/2019-11-25%2013-22-04%20%E7%9A%84%E5%B1%8F%E5%B9%95%E6%88%AA%E5%9B%BE.png)]

这时候他就能读能写了

并且没有覆盖掉原来的内容

我们就可以一起快快乐乐的分享秘密了

倘若我给他目录写的能力,他就也可以创建新的秘密与我分享了

这样更好喔

$ chmod o+w secret

这是他就可以对在目录下添加文件和删除文件了

$ touch xiaoxiao

没有报错说明创建成功

再看看他能不能删除这个mimi这个文件



即便文件的所有者是root用户

他仍然是可以删除的

因为给了他对这个目录写的权限

修改文件所有者并添加群组

前面我们了解到root用户拥有至高无上的权利

不管是谁创建的文件

他都拥有最高的权限

现在我们更换一个情景

对于一个团队来讲

是要共同完成一个任务的

对于我们寝室xinfeng来讲

寝室现在要完成一项任务

就是要把做的作业放进一个文件中

这是后该怎么办呢

假设寝室有三个人

前面我们新建了一个用户ch

现在我们再来新建两个用户

一个叫dww

一个叫pyj

$ adduser dww
$ adduser pyj
groupadd xinfeng
#添加群组xinfeng
$ usermod -G xinfeng ch
$ usermod -G xinfeng dww
$ usermod -G xinfeng pyj
$ mkdir zuoye
$ cd zuoye
$ touch gaoshu

查看权限

现在我想选出一个寝室长

并将文件的所有者给ch用户

并将这个文件交给群组xinfeng

$ chown ch zuoye
# change owner 
$ chgrp xinfeng zuoye
# change group

现在这个文件的所有者就是寝室长ch

目录的所属组就是xinfeng

可以看到

对目录的权限

目录所有者ch 可读可写可执行

目录所属组的成员( ch dww pyj) 可读可执行

其他人员 可读可执行

现在对文件也修改一下

同样的操作

$ chown ch zuoye/gaoshu
# change owner 
$ chgrp xinfeng zuoye/gaoshu
# change group

现在目录以及文件都属于ch

所属组都是xinfeng

但是现在成员dww以及pyj都只能看到文件

为不能向gaoshu里面写文件

或者也不能删除文件

因为他们对目录的操作是不可写的

在/etc/group中可以看到分组情况




验证

ssh登录dww和pyj






可以查看文件

但是他们是不能修改文件的

现在我们要为他们添加权限

因为要一起完成任务

$ chmod g+w zuoye/gaoshu

群组用户dww修改




群组用户ch文件所有者ch同样可以修改

他的区别在于他可以删除gaoshu这个文件,而组内的其他成员不可以

实验:

# dww用户下:
$ rm gaoshu

再来看看ch用户

$ rm gaoshu



删除成功!

再来看看其他人

现在随便建一个用户

$ adduser who

用who用户登录主机

我们让他连看目录的资格都没有

这也比较符合具体的场景

$ chmod o-r zuoye

那这样就完美了啊

哈哈哈

我是个合格的管理员了!

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/weixin_45254641/article/details/103357248
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢