跟阿铭学Linux(利尼克斯)第五章

第五章 Linux系统用户与用户组管理

5.1 

cat /etc/passwd | head或者cat /etc/shadow | head -n 3可以查看系统存在的用户有哪些   

但下面这行命令更加简洁可以查看有哪些用户

cat /etc/passwd|grep -v nologin|grep -v halt|grep -v shutdown|awk -F":" '{ print $1"|"$3"|"$4 }'|more

直接在命令行输入w回车可以直接查看目前在Linux活跃的用户

Last  查询当前和过去登录的用户信息  输出的有用户名、登录终端、登录ip、登陆时间、登出时间(在线时间)

lastlog  查看所有用户最后一次登录时间  输出的有用户名、登录终端、登录ip、最后一次登陆时间

5.2 

groupadd 增加一个组,格式为groupadd [-g GID] groupname 。如果不加-g选项,则按照系统默认的gid创建组。跟uid一样,gid也是从1000开始的。

groupdel 删除一个组,格式为groupdel groupname。如果组中有用户存在则不能删除这个组,必须要删除这个用户才能删除组

useradd 增加用户,格式为useradd [-u UID] [-g GID] [-d HOME] [-M] [-s]

-u表示自定义UID。-g表示新增用户属于已经存在的某个组,后面可以跟组id,也可以跟组名。-d表示自定义用户的家目录。-M表示不建立家目录。-s表示自定义shell

userdel 删除用户,格式为userdel [-r] username,-r的作用是当删除用户时,一并删除该用户的家目录

chfn(change finger)用于改变用户的finger,finger就是在/etc/passwd文件第5个字段中显示的信息,格式为chfn username

5.3

passwd 设置密码,格式passwd username ,该命令后面不加用户名就是为自己设定密码,当登录的是root账户时,该命令后面跟去他账户名则可以修改指定账户的密码,只有root用户可以修改其他用户的密码,普通用户只能修改自己的密码。

mkpasswd 用于生成密码。默认的Linux是没有这个命令的,可以使用安装命令来安装,

yum install -y except 

mkpasswd -l 12 -s 0 -d 3   这条命令-l 表示生成12个长度的密码,-s指定特殊字符的个数,-d指定数字的个数

5.4

su  用户之间的切换命令,格式为su [-] username ,su 后面可以跟-也可以不跟-。-意味着初始化当前用户的各种环境变量,简单来说就是如果加了-,然后再输入pwd就是切换用户的家目录,不加就是被切换用户的家目录。

su 后面什么都不跟默认切换到root用户,切换到root用户后如果想退出这个用户输入exit回车即可退出到原来的账户

sudo 为了改进经常使用root账户进行操作造成的密码丢失的情况下,Linux系统工程师设计了sudo这个命令。使用sudo执行一个只有root才能执行的命令是可以办到的,但是需要输入密码。这个密码并不是root的密码,而是用户自己的密码。默认情况下,只有root用户能使用sudo命令,普通用户要想使用sudo是需要root预先设定的。我们可以使用visudo命令编辑相关的配置文件/etc/sudoers。如果没有visudo这个命令先使用yum install -y sudo安装。

默认root支持sudo,是因为这个文件中有一行 root  ALL=(ALL) ALL。在该行下面加入 test  ALL=(ALL ) ALL,就可以让test用户拥有sudo的特权。从左到右,第一段test这里为一个用户,指定让哪个用户有sudo特权;第二段ALL=(ALL)比较难理解,左边的ALL指的是所有的主机,右边的ALL指的是获取哪个用户的身份,第二段几乎都不用配置;第三段设定可以使用sudo的命令有哪些。

使用 visudo命令编辑/etc/sudoers配置文件(必须要使用root用户),它的使用方法和前面阿铭介绍

的vi命令一样,即输入i进人编辑模式,编辑完成后,按Esc键,再输入:wq完成保存。具体操作方法如下所示

## Allow root to run any commands anywhere

root ALL=(ALL)  ALL

test ALL=(ALL) ALL

此时可以验证一下test账户的权限了,方法如下(如下操作是在root账号下进行的)

su test

$ls              //当前目录是在root下

ls:无法打开目录,:权限不够

$ sudo Is

We trust you have received the usual lecture from the local system

Administrator. It usually boils down to these three things:

#1)Respect the privacy of others

#2)Think before you type

#3)With great power comes great responsibility

[sudo) password for test:

123 456 anaconda-ks cfg Desktop Documents Downloads initial-setup-kscfg Music Pictures Public

Templates Videos

由于切换到test账户后当前目录还是/root,test账户没有任何权限,所以使用命令ls查看时,提示

权限不够。然而使用命令sudo  ls输人test账户自身的密码后,就有权限了。初次使用sudo命令时,会出现上面一大堆提示,当再次使用sudo就不会在提示了。

大批量增加用户使用sudo的权限的方法,就是设置一个组都可以使用sudo。方法:把# %wheel ALL=(ALL) ALL前面的#去掉,让这一行生效。他的意思就是wheel这个组的所有用户都有了sudo权力,接下来只要把需要sudo权限的所有用户加入到这个wheel组中就可以了。

配置文件/etc/sudoers 包含了许多配置项,可以使用命令 man sudoers来获得帮助信息。下面绍一个很实用的案例,我们们的需求是把 Linux服务器设置成这个样子:只允许使用普通账户登录,而普通账户登录后,可以不输入密码就能用sudo切换到root账户。配置方法是,输入如下命令:

#visudo

然后在文件的最后加入如下3行:

User _Alias USER_SU =test, test1, aming

Cmnd_Alias SU = /usr/bin/su

USER_SU All=(ALL)  NOPASSWD:SU

第一行设定了一个user别名,其实这个USER_SU相当于是test、 testl和 aming三个账户;第二行设定了一个命令别名,SU相当于/usr/bin/su;第三行我们刚刚介绍过。保存配置文件后,使用test、 testl、aming这3个账户登录 Linux。执行命令sudo su-切换到root账户,获取root账户的所有权利,如下所示

# su  -  test

$ sudo su -

# whoami

root

不允许root直接登录,即设置一个复杂得连自己都记不住的密码。不过这样也会有一个问题,就是普通用户可以使用su命令切换到 Root,然后他再修改简单的密码就能直接登录root了。其实还有一个更好的办法。

不允许root远程登录 Linux

/etc/ssh/sshd_config为sshd服务的配置文件,默认允许roo账户通过ssh远程登录 Linux。要想不允许root用户远程登录linux,具体操作方法为:修改配置文件/ etc/ssh/sshd_ config,在文件中查找 #PermitRoot Login yes并修改为 PermitRootLogin no。保存配置文件后,需要重启sshd服务,如下所:  #systemctl restart sshd.service,需要注意的是,这个方法只适用于通过ssh远程登录Linux的情况。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,793评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,567评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,342评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,825评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,814评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,680评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,033评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,687评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 42,175评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,668评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,775评论 1 332
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,419评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,020评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,978评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,206评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,092评论 2 351
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,510评论 2 343

推荐阅读更多精彩内容