linux 用户创建、管理、权限分配
(1)su与sudo
su:通过su可以在用户之间切换,如果超级权限用户root向普通或虚拟用户切换不需要密码,什么是权力?这就是!而普通用户切换到其它任何用户都需要密码验证;
sudo:
sudo扮演的角色注定了它要在安全方面格外谨慎,否则就会导致非法用户攫取root权限。同时,它还要兼顾易用性,让系统管理员能够更有效,更方便地使用它。
# 1. sudo能够限制指定用户在指定主机上运行某些命令。
# 2. sudo可以提供日志,忠实地记录每个用户使用sudo做了些什么,并且能将日志传到中心主机或者日志服务器。
# 3. sudo为系统管理员提供配置文件,允许系统管理员集中地管理用户的使用权限和使用的主机。它默认的存放位置是/etc/sudoers。
# 4.sudo使用时间戳文件来完成类似“检票”的系统。当用户执行sudo并且输入密码后,用户获得了一张默认存活期为5分钟的“入场券”(默认值可以在编译的时候改变)。超时以后,用户必须重新输入密码。
配置sudo
配置sudo必须通过编辑/etc/sudoers文件,而且只有超级用户才可以修改它,还必须使用visudo编辑。之所以使用visudo有两个原 因,一是它能够防止 两个用户同时修改它;二是它也能进行有限的语法检查。所以,即使只有你一个超级用户,你也最好用visudo来检查一下语法。
(2)linux普通用户获取管理员权限【待测试】
原文:http://www.cnblogs.com/likwo/p/3435404.html
测试环境:CentOS 5.5
1、添加用户,首先用adduser命令添加一个普通用户,命令如下:
#adduser tommy
#passwd tommy //修改密码
Changing password for user tommy.
New UNIX password: //在这里输入新密码
Retype new UNIX password: //再次输入新密码
passwd: all authentication tokens updated successfully.
2、赋予root权限
方法一: 修改 /etc/sudoers 文件,找到下面一行,把前面的注释(#)去掉
# Allows people in group wheel to run all commands
%wheel ALL=(ALL) ALL
然后修改用户,使其属于root组(wheel),命令如下:
#usermod -g root tommy
修改完毕,现在可以用tommy帐号登录,然后用命令 su - ,即可获得root权限进行操作。
方法二: 修改 /etc/sudoers 文件,找到下面一行,在root下面添加一行,如下所示:
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
tommy ALL=(ALL) ALL
修改完毕,现在可以用tommy帐号登录,然后用命令 su - ,即可获得root权限进行操作。
方法三: 修改 /etc/passwd 文件,找到如下行,把用户ID修改为 0 ,如下所示:
tommy:x:500:500:tommy:/home/tommy:/bin/bash
修改后如下
tommy:x:0:500:tommy:/home/tommy:/bin/bash
保存,用tommy账户登录后,直接获取的就是root帐号的权限。
友情提醒:虽然方法三看上去简单方便,但一般不推荐使用,推荐使用方法二。
<转自结束>
#######################################################
不过貌似上面红色加粗的那个su - ,我平时用的都是sudo。我不知道作者是笔误还是什么,因为用su的话,是需要知道root的密码的,所以sudo会好一点。
(3)Linux用户、用户组学习笔记
- /etc/passwd文件格式:用户名:密码:UID:GID:用户信息:HOME目录路径:用户shell;
- /etc/shadow保存用户密码信息,包括加密后的密码,密码过期时间,密码过期提示天数等;
- /etc/group文件中保存用户组信息格式如下:用户组名:组密码:GID:组内帐号(多个帐号用逗号分隔);查看当前用户的用户组命令:[root@local opt]#groups
查看当前用户的用户组命令:[root@local opt]#groups
root bin daemon sys adm disk wheel输出的信息中,第一个用户组为当前用户的有效用户组(当前用户组)
切换有效用户组命令:[root@local opt]#newgrp 用户组名.要离开新的有效用户组,则输入exit回车。
新建用户命令:[root@local opt]#useradd 用户名 -g 初始用户组 -G 其他用户组(修改/etc/group) -c 用户说明 -u 指定UID
建完用户需要为用户设置密码:[root@local opt]#passwd 用户名
用户要修改自己密码命令:[root@local opt]#passwd
修改用户信息命令:[root@local opt]#usermod 参数 用户名
参数:
-c 说明
-g 组名 初始用户组
-e 过期日期 格式:YYYY-MM-DD
-G 组名 其他用户组
-l 修改用户名
-L 锁定账号(在/etc/shadow文件中用户对应密码密码串的前面加上两个叹号(!!))
-U 解锁
删除用户命令:[root@local opt]#userdel [-r] 用户名
其中,参数-r为删除用户的home目录。
其实,可能在系统其他地方也有该用户文件,要完整删除一个用户和其文件要先找到属于他的文件:
[root@local opt]#find / -user 用户名
然后删除,再运行userdel删除用户。
查看可用shell命令:[root@local opt]#chsh -l
修改自己的shell命令:[root@local opt]#chsh -s
查看自己或某人UID/GID信息:[root@local opt]#id [用户名]返回信息中groups为有效用户组
新增用户组命令:[root@local opt]#groupadd 用户组名
修改用户组名命令:[root@local opt]#groupmod -n 名称
删除用户组命令:[root@local opt]#groupdel 用户组名
设置用户组密码命令:[root@local opt]#gpasswd 用户组名
如果gpasswd加上参数则有其他功能
设置用户组管理员命令:[root@local opt]#gpasswd -A 用户名 用户组名
添加某帐号到组命令:[root@local opt]#gpasswd -M 用户名 用户组名
从组中删除某帐号命令:[root@local opt]#gpasswd -d 用户名 用户组名
passwd相关参数操作:
-l 锁用户
-u 解锁用户
-n 天数 密码不可改天数
-x 天数 密码过期天数
-w 天数 警告天数
(4)文件权限
[root@local opt]#ls -al
ls -al 命令是列出目录的所有文件,包括隐藏文件。隐藏文件的文件名第一个字符为'.'
-rw-r--r-- 1 root root 81 08-02 14:54 gtkrc-1.2-gnome2
-rw------- 1 root root 189 08-02 14:54 ICEauthority
-rw------- 1 root root 35 08-05 10:02 .lesshst
drwx------ 3 root root 4096 08-02 14:54 .metacity
drwxr-xr-x 3 root root 4096 08-02 14:54 nautilus
列表的列定义如下:
[权限属性信息] [连接数] [拥有者] [拥有者所属用户组] [大小] [最后修改时间] [文件名]
权限属性列表为10个字符:
第一个字符表示文件类型,d为目录 -为普通文件 l为连接 b为可存储的接口设备 c为键盘鼠标等输入设备
2、3、4个字符表示所有者权限,5、6、7个字符表示所有者同组用户权限,8、9、10为其他用户权限
第二个字符表示所有者读权限,如果有权限则为r,没有权限则为-
第三个字符表示所有者写权限,如果有权限则为w,没有权限则为-
第四个字符表示所有者执行权限,如果有权限则为x,没有权限则为-
第五个字符表示所有者同组用户读权限,如果有权限则为r,没有权限则为-
第六个字符表示所有者同组用户写权限,如果有权限则为w,没有权限则为-
第七个字符表示所有者同组用户执行权限,如果有权限则为x,没有权限则为-
第八个字符表示其他非同组读权限,如果有权限则为r,没有权限则为-
第九个字符表示其他非同组写权限,如果有权限则为w,没有权限则为-
第十个字符表示其他非同组执行权限,如果有权限则为x,没有权限则为-
(5)Linux里的终端用mkdir创建目录提示权限不够
(6)LINUX 命令行变成-bash-4.2$
参考帖子:
linux 用户创建、管理、权限分配的更多相关文章
- Linux用户创建及权限管理
作业一: 1,新建用户natasha,uid为1000,gid为555,备注信息为“master” useradd natasha vim /etc/passwd ...
- linux用户管理,linux用户口令管理,linux用户组管理,linux用户权限管理详解
linux用户管理 http://www.qq210.com/shoutu/android 用户账号的添加(新加用户需添加用户口令) :增加用户账号就是在/etc/passwd文件中为新用户增加一条记 ...
- Linux用户及文件权限管理
Linux用户及文件权限管理
- Jenkins配置:添加用户和管理权限
Jenkins配置:添加用户和管理权限 参考文章:http://www.cnblogs.com/zz0412/p/jenkins_jj_14.html 今天给大家说说使用Jenkins专有用户数据库的 ...
- Linux用户配置sudo权限
Linux用户配置sudo权限 创建sudo权限用户 #useradd supope #passwd supope #visudo #supope ALL=(ALL) AL ...
- [转载]Oracle用户创建及权限设置
出处:https://www.cnblogs.com/buxingzhelyd/p/7865194.html 权限: create session 允许用户登录数据库权限 create table ...
- Informatica学习:3、用户创建与权限管理
环境:win7 下安装Informatica 9.6.1 服务器端与客户端作为学习之用,Linux大同小异 一.用户创建(服务器端) 1.登陆admin console (1)打开Admin Cons ...
- Linux 用户和文件权限管理
Linux —— 用户权限管理 权限: 为什么需要权限管理? 1.计算机资源有限,我们需要合理的分配计算机资源. 2.Linux是一个多用户系统,对于每一个用户来说,个人隐私的保护是十分重 ...
- Linux用户、用户组权限管理详解
Linux用户管理三个重要文件详解: Linux登陆需要用户名.密码./etc/passwd 文件保存用户名.登录Linux时,Linux 先查找 /etc/passwd 文件中是否有这个用户名,没有 ...
随机推荐
- node基础09:第2个node web服务器
1.同时输出文字与图片 在前几个小课程中,我会学会了 从服务器中读取文字字符,并且向浏览器中输出 从服务器中读取图片文件,并且向浏览器中输出 这节课中,我学会了同时向浏览器输出文字,图片.对此,我感到 ...
- bzoj 1296: [SCOI2009]粉刷匠
Description windy有 N 条木板需要被粉刷. 每条木板被分为 M 个格子. 每个格子要被刷成红色或蓝色. windy每次粉刷,只能选择一条木板上一段连续的格子,然后涂上一种颜色. 每个 ...
- Linux(CentOs6.4)安装Git
安装之前我们先来了解下git,并且要反问下:我为什么要使用git?svn用的不是很好嘛,我干嘛要换?... 问1:为什么需要版本控制系统? 版本控制是一种记录若干文件内容变化,以便将来查阅特定版本修订 ...
- 持续集成(Continuous integration)
docker +jenkins + gitosc 到gitosc上,复制地址:https://git.oschina.net/99fu/CI.git 进入到 /home/fu git clone ...
- mstsc 远程序桌面登录的 c#开发
public AxMSTSCLib.AxMsRdpClient rdpClient; rdpClient = new AxMSTSCLib.AxMsRdpClient(); rdpClient.Doc ...
- yii 核心类classes.php详解(持续更新中...)
classes.php在yii运行的时候将被自动加载,位于yii2文件夹底下. <?php /** * Yii core class map. * * This file is automati ...
- MVC复杂模型绑定
当初遇到业务需求ajax提交一组对象数组到服务器.但是苦于mvc的默认绑定器.绑定不上去.好吧只有靠自己了. 当初就是参考这个大大的博客:http://www.cnblogs.com/xfrog/ar ...
- gulp-rev同时将js和css文件写在一个rev-manifest.json文件里面的方式探讨
参考: https://segmentfault.com/q/1010000002876613 https://github.com/sindresorhus/gulp-rev 测试发现,在官网上最主 ...
- php常用字符串函数小结
php内置了98个字符串函数(除了基于正则表达式的函数,正则表达式在此不在讨论范围),能够处理字符串中能遇到的每一个方面内容,本文对常用字符串函数进行简单的小结,主要包含以下8部分:1.确定字符串长度 ...
- win10如何100%提升网络速度
1.Win+R运行,输入gpedit.msc 2.依次打开"计算机配置"-"管理模板"-"网络"-"QoS数据包计划程序" ...