首页
About Me
推荐
weibo
github
Search
1
linuxea:gitlab-ci之docker镜像质量品质报告
49,451 阅读
2
linuxea:如何复现查看docker run参数命令
23,044 阅读
3
Graylog收集文件日志实例
18,580 阅读
4
linuxea:jenkins+pipeline+gitlab+ansible快速安装配置(1)
18,275 阅读
5
git+jenkins发布和回滚示例
18,181 阅读
ops
Openvpn
Sys Basics
rsync
Mail
NFS
Other
Network
HeartBeat
server 08
Code
Awk
Shell
Python
Golang
virtualization
KVM
Docker
openstack
Xen
kubernetes
kubernetes-cni
Service Mesh
Data
Mariadb
PostgreSQL
MongoDB
Redis
MQ
Ceph
TimescaleDB
kafka
surveillance system
zabbix
ELK Stack/logs
Open-Falcon
Prometheus
victoriaMetrics
Web
apache
Tomcat
Nginx
自动化
Puppet
Ansible
saltstack
Proxy
HAproxy
Lvs
varnish
更多
互联咨询
最后的净土
软件交付
持续集成
gitops
devops
登录
Search
标签搜索
kubernetes
docker
zabbix
Golang
mariadb
持续集成工具
白话容器
elk
linux基础
nginx
dockerfile
Gitlab-ci/cd
最后的净土
基础命令
gitops
jenkins
docker-compose
Istio
haproxy
saltstack
marksugar
累计撰写
690
篇文章
累计收到
139
条评论
首页
栏目
ops
Openvpn
Sys Basics
rsync
Mail
NFS
Other
Network
HeartBeat
server 08
Code
Awk
Shell
Python
Golang
virtualization
KVM
Docker
openstack
Xen
kubernetes
kubernetes-cni
Service Mesh
Data
Mariadb
PostgreSQL
MongoDB
Redis
MQ
Ceph
TimescaleDB
kafka
surveillance system
zabbix
ELK Stack/logs
Open-Falcon
Prometheus
victoriaMetrics
Web
apache
Tomcat
Nginx
自动化
Puppet
Ansible
saltstack
Proxy
HAproxy
Lvs
varnish
更多
互联咨询
最后的净土
软件交付
持续集成
gitops
devops
页面
About Me
推荐
weibo
github
搜索到
6
篇与
的结果
2015-11-07
centos6.7的sudo配置
centos6.7的sudo配置su全称,switch user,su可以切换用户,su的切换分为两种,登录式切换和非登录式切换,读取的配置文件也有所不同!一般情况下,su是切换用户,但是一般情况下我们使用的是普通用户,如果管理登录是相当危险的,但是我们又需要root权限,又不能固定持久切换,sudo则可以以普通用户自己的身份,在执行的时候,可临时切换管理员管理身份执行命令,命令结束退回普通用户!sudo功用如下:1,授权指定用户在指定主机上运行指定的管理命令2,详细记录用户基于sudo执行的命令相关日志信息,相当于审计3,用户第一次执行sudo,输入密码,验证成功后,用户会获得一个有固定存活时长的令牌,再次执行则无需输入密码,有时效性,相当于检票系统sudo借助于/etc/sudoers定义哪些用户可以执行管理类操作!<----授权文件(只有管理员才可以编辑)visudo可以编辑并且检查语法,但是vim是可以语法着色,如何操作可随感觉走在这个文件中文件定义如下:/etc/sudoers:别名定义:#当一条命令被频繁调用,不同用户组调用,则使用别名来定义User_Aliads:用户别名User_Alias NAME = item...item:用户名,%组名,#UID,$#GID,User_AliasHost_Aliads:主机别名Host_Alias Name = item ...item:hostname ,ip,network,HostAliasRunas_Alias:以谁的身份运行Runas_Alias,和User_Alias区别不大!ALL:所有用户Runas_Alias NAME = items,items....Cmnd_Alias:命令别名Comd_Alias NAME = items...item:命令,目录(目录下所有命令) ,“sudoedit” (sudo编辑文件)Cmmd_Alias注意:别名必须使用全大写字符!sudo授权:#定义格式,用户->主机->命令一,别名定义如:让mark用户,运行useradd命令! 1,编译文件 sudo选项:-l :查看当前用户可执行命令 如下: -u USERNAME COMMAND:以指定用户身份来执行命令-k:清楚令牌,清楚5分钟内的令牌-b COMMAND:在后台运行指定的COMMAND-e /path/to/somefile:修改指定的文件如果有多个用户都需要一样的授权!则先定义别名:二,用户别名创建一个用户,将用户添加至组中,而后在visodo中定义USERADMIN组,或ID号,或用户允许有创建用户权限#User_Alias 用户别名为USERADMIN = mark用户,%admin组,#500ID的用户有创建用户的权限USERADMIN ALL=(root) /usr/sbin/useradd我们切换到fedora查看下是否有/usr/sbin/useradd三,主机别名定义:用户来自192.168.233.1能够执行/usr/sbin/useradd /usr/sbin/userdel四,Cmnd别名五,其他###########################7如果不期望登录root账号,我们期望mark账号来执行管理员的任意命令,则可以修改如下;
2015年11月07日
4,834 阅读
0 评论
0 点赞
2015-04-11
文件的特殊权限
文件的特殊权限:安全上下文: 1、进程以某用户的身份运行;进程是发起此进程的用户代理,其以对应用户身份完成所需的操作; 2、权限匹配模型: (1) 进程的属主,是否是被访问的资源的属主;如果是,则应用属主权限; (2) 否则,查看进程的属主,是否属于被访问资源的属组;如果是,则应用属组权限; (3) 否则,则应用其它权限;特殊权限:suid 展示于文件属主的执行权限位: 如果属主本来有执行权限,则展示为s;否则,展示为S;功用:对于一个可执行文件来讲,任何用户运行此程序为进程时,进程的属主不再是发起者本人,而可执行程序文件自己的属主;管理文件SUID权限的方法: chmod u+|-s FILE... 演示过程:: 我在mark用户下cat/etc/shadow文件是没有权限的 [mark@localhost root]$ ls -l /bin/cat -rwxr-xr-x. 1 root root 48568 Oct 14 21:51 /bin/cat [mark@localhost root]$ cat /etc/shadow cat: /etc/shadow: Permission denied [mark@localhost root]$ 此时,我用root将/bin/cat cp到/tmp/cat,是可执行的 [root@localhost ~]# cp /bin/cat /tmp/cat [root@localhost ~]# /tmp/cat /etc/shadow root:$1$fsqOhL/U$DSUV4c13OGBzZpDY/vK29/:16529:0:99999:7::: bin:*:15980:0:99999:7::: daemon:*:15980:0:99999:7::: adm:*:15980:0:99999:7::: lp:*:15980:0:99999:7::: sync:*:15980:0:99999:7::: shutdown:*:15980:0:99999:7:: 然后,我在root用户下给/tmp/cat添加s权限位 [root@localhost ~]# chmod u+s /tmp/cat [root@localhost ~]# ll /tmp/cat -rwsr-xr-x. 1 root root 48568 Apr 10 03:07 /tmp/cat [root@localhost ~]#此时,我在用mark用户cat /etc/shadow文件 [mark@localhost root]$ /tmp/cat /etc/shadow root:$1$fsqOhL/U$DSUV4c13OGBzZpDY/vK29/:16529:0:99999:7::: bin:*:15980:0:99999:7::: daemon:*:15980:0:99999:7::: adm:*:15980:0:99999:7::: lp:*:15980:0:99999:7::: sync:*:15980:0:99999:7::: shutdown:*:15980:0:99999:7::: halt:*:15980:0:99999:7::: mail:*:15980:0:99999:7::: uucp:*:15980:0:99999:7::: operator:*:15980:0:99999:7:::此时,mark用户在使用cat命令是,已经不再是已mark的身份,而是root用户。 尽管如何,普通用户还是无法更改其他用户的权限的。如果文件原本有执行权限,则是小s,如果没有则是大s特殊权限:sgid 展示于文件属组的执行权限位; 如果属组本来有执行权限,则展示为s;否则,展示为S;功用:当目录属组有写权限,且有sgid权限时,那么所有属于此目录的属组,且以属组身份在此目录新建文件或目录时,新文件或目录的属组不是创建者所属的基本组,而是目录自己的属组;chmod g+|-s FILE...演示过程: 创建两个用户, [root@localhost ~]# useradd gentoo1 [root@localhost ~]# useradd mageia [root@localhost ~]# [gentoo1@localhost root]$ cd /var/tmp/ [gentoo1@localhost tmp]$ touch a.gentoo1 [gentoo1@localhost tmp]$ ll total 0 -rw-rw-r--. 1 gentoo1 gentoo1 0 Apr 10 03:21 a.gentoo1 [gentoo1@localhost tmp]$ ls [mageia@localhost root]$ cd /var/tmp/ [mageia@localhost tmp]$ touch a.mageia [mageia@localhost tmp]$ ll total 0 -rw-rw-r--. 1 gentoo1 gentoo1 0 Apr 10 03:21 a.gentoo1 -rw-rw-r--. 1 mageia mageia 0 Apr 10 03:21 a.mageia [mageia@localhost tmp]$ [root@localhost ~]# useradd gentoo1 [root@localhost ~]# useradd mageia [root@localhost ~]# mkdir /var/tmp/test [root@localhost ~]# chown :mark /var/tmp/test/ [root@localhost ~]# ls -ld /var/tmp/test/ drwxr-xr-x. 2 root mark 4096 Apr 10 03:22 /var/tmp/test/ [root@localhost ~]# chmod g+w /var/tmp/test/ [root@localhost ~]# ls -ld /var/tmp/test/ drwxrwxr-x. 2 root mark 4096 Apr 10 03:22 /var/tmp/test/ [root@localhost ~]# usermod -a -G mark mageia [root@localhost ~]# usermod -a -G mark gentoo1 [root@localhost ~]# id mageia uid=503(mageia) gid=503(mageia) groups=503(mageia),500(mark) [root@localhost ~]# id gentoo1 uid=501(gentoo) gid=501(gentoo1) groups=501(gentoo1),500(mark) [root@localhost ~]#退出再切换至mageia [mageia@localhost tmp]$ exit exit [root@localhost ~]# su mageia [mageia@localhost root]$ cd /var/tmp/ [[mageia@localhost test]$ touch a.gentoo [mageia@localhost test]$ ll total 0 -rw-rw-r--. 1 mageia mageia 0 Apr 10 03:33 a.gentoo [mageia@localhost test]$ 63.22 退出再切换至gentoo1 [gentoo1@localhost test]$ exit exit [root@localhost ~]# su gentoo1 [gentoo1@localhost root]$ cd /var/tmp/test/ [gentoo1@localhost test]$ touch a.gentoo1 [gentoo1@localhost test]$ ll total 0 -rw-rw-r--. 1 mageia mageia 0 Apr 10 03:33 a.gentoo -rw-rw-r--. 1 gentoo1 gentoo1 0 Apr 10 03:37 a.gentoo1 [gentoo1@localhost test]$当某一个用户已组上的权限来访问这个目录创建文件时,属主仍然是自身,而属组则是目录的属组 [root@localhost ~]# chmod g+s /var/tmp/test/ [root@localhost ~]# ll -ld /var/tmp/test/ drwxrwsr-x. 2 root mark 4096 Apr 10 03:42 /var/tmp/test/ [root@localhost ~]#退出再切换至mageia [mageia@localhost test]$ touch b.mageia [mageia@localhost test]$ ll total 4 -rw-rw-r--. 1 mageia mageia 14 Apr 10 03:42 a.gentoo1 -rw-rw-r--. 1 mageia mageia 0 Apr 10 03:41 a.mageia -rw-rw-r--. 1 mageia mark 0 Apr 10 03:47 b.mageia [mageia@localhost test]$再切换至gentoo1 [gentoo1@localhost test]$ touch b.gentool [gentoo1@localhost test]$ ll total 4 -rw-rw-r--. 1 mageia mageia 14 Apr 10 03:42 a.gentoo1 -rw-rw-r--. 1 mageia mageia 0 Apr 10 03:41 a.mageia -rw-rw-r--. 1 gentoo1 mark 0 Apr 10 03:48 b.gentool -rw-rw-r--. 1 mageia mark 0 Apr 10 03:47 b.mageia [gentoo1@localhost test]$与此同时是两个用户都可以删除对方文件。 由此,我们希望这个用户可以创建文件,可以编辑文件,可以删除自己的文件,但不能删除别人的文件: 特殊权限:sticky 特殊权限:sticky 展示于目录其它用户的执行权限位; 如果其它用户本来有执行权限,则展示为t;否则,展示为T;功用: 对于全局可写,或某组全局可写目录,所有用户都于此目录创建文件或删除自己为属主的那些文件,但不能删除非自己为属主文件或目录;chmod o+|-t FILE...[root@localhost /]# chmod o+t /var/tmp/test/ [root@localhost /]# ll -ld /tmp/test/ drwxrwsr-t. 2 root mark 4096 Apr 10 08:00 /tmp/test/[gentoo1@localhost test]$ ll total 0 -rw-rw-r--. 1 mageia mark 0 Apr 10 08:08 1.megeia -rw-rw-r--. 1 gentoo1 mark 0 Apr 10 07:59 2.gentoo1 [gentoo1@localhost test]$ rm 1.megeia rm: cannot remove `1.megeia': Operation not permitted [gentoo1@localhost test]$ rm 2.gentoo1 [gentoo1@localhost test]$ [mageia@localhost test]$ rm 2.gentoo1 rm: cannot remove `2.gentoo1': Operation not permitted [mageia@localhost test]$ rm 1.megeia [mageia@localhost test]$ sst八进制: 000 0 001 1 010 2 011 3 100 4 101 5 110 6 111 7chmod 6664 file chmod 1775 dirumask 0002
2015年04月11日
3,934 阅读
0 评论
0 点赞
2015-04-02
linux-man命令的基本使用技巧
type 判断内部外部命令内置命令bash自带的:help外部命令有路径的usr/share/man/manman配置的使用技巧先看man的章节命令手册章节 1,用户命令 2,系统调用,system call 3,库调用,library call 4,设备文件 5,配置文件 6,游戏 7,杂项 8,管理命令使用whatis匹配关键字,根据关键字选择,章节,man精确匹配命令 whatis+命令:显示指定关键字存在帮助手册的章节相关信息和简单说明 [root@localhost ~]# whatis passwd passwd (1) - update user's authentication tokens passwd (5) - password file passwd [sslpasswd] (1ssl) - compute password hashes [root@localhost ~]# 模糊匹配 模糊匹配方式显示指定的关键字的描述信息中存在帮助手册相关信息 [root@localhost ~]# man -k passwd chpasswd (8) - update passwords in batch mode fgetpwent_r [getpwent_r] (3) - get passwd file entry reentrantly getpwent_r (3) - get passwd file entry reentrantly gpasswd (1) - administer /etc/group and /etc/gshadow htpasswd (1) - Manage user files for basic authentication lpasswd (1) - Change group or user password lppasswd (1) - add, change, or delete digest passwords pam_localuser (8) - require users to be listed in /etc/passwd pam_passwdqc (8) - Password quality-control PAM module passwd (1) - update user's authentication tokens passwd2des [xcrypt] (3) - RFS password encryption passwd (5) - password file passwd [sslpasswd] (1ssl) - compute password hashes saslpasswd2 (8) - set a user's sasl password smbpasswd (5) - The Samba encrypted password file smbpasswd (8) - change a users SMB password userpasswd (1) - A graphical tool to allow users to change their passwords [root@localhost ~]#man命令借助less命令查看文件内容法则 还有几个命令: info:获取在线文档 changelog:更新日志 install:安装说明 README:程序说明信息 www.redhat.com/docs 官方文档
2015年04月02日
3,169 阅读
0 评论
0 点赞
2015-04-01
详解:Umask:权限遮罩码
Umask:权限遮罩码:如果没有umask,创建的文件是777的,目录也是。而又umask机制以后,创建文件时不会带来太大的风险,限制其他用户或目录的权限来达到安全授权的目的umask具体说明:在root用户下:当我们在创建文件时:权限为644[root@bogon tmp]# vim /tmp/wenjian1.txt[root@bogon tmp]# ll /tmp/wenjian1.txt-rw-r--r--. 1 root root 6 Apr 1 06:16 /tmp/wenjian1.txt当我们在创建文件时,权限时755[root@bogon tmp]#mkdir /tmp/wenjian2[root@bogon tmp]# lldrwxr-xr-x. 2 root root 4096 Apr 1 06:16 wenjian2 我们切换mark用户,同样操作创建文件权限时:664[mark@bogon tmp]$ vim mark1.txt[mark@bogon tmp]$ ll mark1.txt-rw-rw-r--. 1 mark mark 6 Apr 1 06:22 mark1.txt创建目录权限:775[mark@bogon tmp]$ mkdir mark2[mark@bogon tmp]$lldrwxrwxr-x. 2 mark mark 4096 Apr 1 06:22 mark2 对于root用户而言[root@bogon ~]# umask0022[root@bogon ~]#从后三位来看,是022 Mark用户:[mark@bogon tmp]$ umask0002[mark@bogon tmp]$如果没有umask,创建的文件是777的,目录也是。而又umask机制以后,创建文件时不会带来太大的风险,限制其他用户或目录的权限来达到安全授权的目的umask umask它存在的作用它能让文件实现:创建一个文件是:666-umask这就是为什么管理员的到的是666-022=644创建一个目录:;777-mask 777-022=755Mark用户也一样。 另外,如果用户UID和GID不一样的话,也不会遵循此法则。Umask是和管理员同样的。 Umask是可修改的,umask跟三位数字注意:如果减得的结束中存在x权限(执行权限),则对应用户类别的八进制权限+1因为对linux而言,默认是不准文件有执行权限的,所以,不允许其具有这样的权限另外,umask的修改设置只对当前shell进程有效
2015年04月01日
3,353 阅读
0 评论
0 点赞
2015-04-01
详解chmod/chown操作某类用户的某位或某些位权限
修改mode:Chmod命令:操作三类用户权限:使用八进制数字chmod [-R] OCTAL-MODE FILE... -R: 递归修改;rwx: r-x, r--, -w-, --x--- 000 0--x 001 1-w- 010 2-wx 011 3r—100 4r-x 101 5rw- 110 6rwx 111 7操作指定类别用户的权限:=PS:仍然可以执行-r递归(依次传递到文件夹下的所有文件),但这种操作不太多,因为文件一般没有执行权限,如果文件有执行权限将不再安全,而目录如果没有执行权限将无法cd进目录。当然,你可以-r递归取消权限。u=, g=, oug=, a= ug实例;[root@bogon ~]# ll /tmp/mytest.txt-rw-r--r--. 1 root root 828 Mar 26 20:55 /tmp/mytest.txtYou have new mail in /var/spool/mail/root[root@bogon ~]# chmod ug=rw /tmp/mytest.txt[root@bogon ~]# ll /tmp/mytest.txt-rw-rw-r--. 1 root root 828 Mar 26 20:55 /tmp/mytest.txt[root@bogon ~]# O=实例:[root@bogon ~]# ll /tmp/mytest.txt-rw-rw-r--. 1 root root 828 Mar 26 20:55 /tmp/mytest.txt[root@bogon ~]# chmod o= /tmp/mytest.txt[root@bogon ~]# ll /tmp/mytest.txt-rw-rw----. 1 root root 828 Mar 26 20:55 /tmp/mytest.txt[root@bogon ~]# A=实例:[root@bogon ~]# chmod a=w /tmp/mytest.txt[root@bogon ~]# ll /tmp/mytest.txt--w--w--w-. 1 root root 828 Mar 26 20:55 /tmp/mytest.txt[root@bogon ~]#操作某类用户的某位或某些位权限:+|-u+, g+, o+u-, g-, o- o实例:[root@bogon ~]# chmod o-r /tmp/mytest.txt[root@bogon ~]# ll /tmp/mytest.txt-rw-rw----. 1 root root 828 Mar 26 20:55 /tmp/mytest.txt[root@bogon ~]#-权限[root@bogon ~]# ll /tmp/mytest.txt-rwxrwxrwx. 1 root root 828 Mar 26 20:55 /tmp/mytest.txt[root@bogon ~]# chmod g-w,o-w,u-w /tmp/mytest.txt[root@bogon ~]# ll /tmp/mytest.txt-r-xr-xr-x. 1 root root 828 Mar 26 20:55 /tmp/mytest.txt[root@bogon ~]# PS:在9位字符串中,每三位为一组,从左到右分别为u,g,o,a表示所有,如果不填写u,g,o,直接=权限字符,则默认a 引用性修改;--reference(参考性引用)=/PATH/TO/SOMEFILE 例:[root@bogon tmp]# ll mytest3.txt-rw-r--r--. 1 root root 6 Apr 1 05:32 mytest3.txt[root@bogon tmp]# ll mytest.txt-r-xr-xr-x. 1 root root 828 Mar 26 20:55 mytest.txt[root@bogon tmp]# chmod --reference=mymylinux/ mytest1.txt/ mytest3.txt mytest.txt[root@bogon tmp]# chmod --reference=mytest.txt mytest3.txt[root@bogon tmp]# ll mytest3.txt-r-xr-xr-x. 1 root root 6 Apr 1 05:32 mytest3.txt[root@bogon tmp]# ll mytest.txt-r-xr-xr-x. 1 root root 828 Mar 26 20:55 mytest.txt[root@bogon tmp]# Chown和chgrpPS:Chown又能改属组也能改属主,同时支持-r, --reference当我们给一个用户读某些文件时,其组不再root用户中,如果修改右三位权限给次文件,那么其他任何用户将对此文件有读写权限。所以这种改法是相当危险的,通常情况下我们会把这个文件的属主改成其用户,让属主来实现读权限 [root@bogon tmp]# ll mytest.txt-r-xr-xr-x. 1 root root 828 Mar 26 20:55 mytest.txt[root@bogon tmp]# chown mark mytest.txt[root@bogon tmp]# ll mytest.txt-r-xr-xr-x. 1 mark root 828 Mar 26 20:55 mytest.txt[root@bogon tmp]# -r, -reference不再演示同时改属主属组[root@bogon tmp]# chown mark:mark mytest.txt[root@bogon tmp]# ll mytest.txt-r-xr-xr-x. 1 mark mark 828 Mar 26 20:55 mytest.txt[root@bogon tmp]#只改属组[root@bogon tmp]# chown :mark mytest.txt[root@bogon tmp]# ll mytest.txt-r-xr-xr-x. 1 root mark 828 Mar 26 20:55 mytest.txt[root@bogon tmp]#
2015年04月01日
3,686 阅读
0 评论
0 点赞
2015-04-01
详解linux useradd&用户组合权限管理等
1,权限相关概念Rwx任何一个文件都应该由两部分组成,这两部分其实基于文件系统来组织,磁盘分区创建完成后,在高级格式化的时候,就把整个磁盘分区分成两部分,其中一部分是源数据,一部分是来放数据的,所有的数据都放在数据区的数据块上,读权限其实就是去查看原数据指向的数据快中的内容,可以使用cat,tail等来查看这些内容,对目录而言就比较独特,目录的R权限,可以对其执行ls。目录和文件来讲都有源数据和数据,目录名等信息是放在源数据中的而目录的所有文件信息,其实也存放于数据区,所以对于目录而言执行ls命令就雷同于文件打开一样,但仅能看到仅要信息W权限对文件而言可以编辑文件内容,而目录则可以删除创建文件,所以一个用户即便对一个文件没有写权限,并不意味着他不能够删除文件,因为它只要对目录有写权限就可以删除这个目录上的所有文件X执行权限,如果对于一个文件而言,他可以吧这个文件提取给内核发起一个起动的进程,进程是一个动态概念,他需要获得CPU的时间,内存,获得文件打开的权限,文件描述符等等等在ls –l的时候看到有9位权限Rwxrwxrwx左侧三位:文件属主来访问的权限中间三位:属组内的所有用户访问权限右三位:既非属主又非属之外的,其他权限 2,用户,组,权限深入详解Useradd,del,mod,pass创建,删除,修改,添加密码Groupdd,del,mod,pass创建,删除,修改,添加密码 用户账号:用户,组 useradd存放目录:用户账号: /etc/passwd[root@bogon ~]# cat /etc/passwdroot:x:0:0:root:/root:/bin/bashbin:x:1:1:bin:/bin:/sbin/nologindaemon:x:2:2:daemon:/sbin:/sbin/nologinadm:x:3:4:adm:/var/adm:/sbin/nologinlp:x:4:7:lp:/var/spool/lpd:/sbin/nologinsync:x:5:0:sync:/sbin:/bin/sync man 5 passwd 查看,给出的格式account:password:UID:GID:GECOS:directory:shell1:用户账号2,密码占位符,通常x表示,x表示密码并不存放在本地存放在shdow(the encrypted user password, anasterisk (*), or the letter 'x'.(See pwconv(8) for an explanation of'x'.))3,UID 用户自身的数字表示4,GID 用户所属基本组ID5,GECOS 用户注释:住址信息办公电话等等6,directory,用户家目录位置(用户有家目录,但是用户家目录未必存在)7,shell:用户的默认的(bin/bashell)shell(用户必须有一个合法的(etc/shell),可以的shell,否则将无法登录系统)用户登录会打开一个交互界面 Useradd和adduser是同一个文件,只是一个符号连接而已。[root@bogon ~]# which useradd/usr/sbin/useradd[root@bogon ~]# which adduser/usr/sbin/adduser[root@bogon ~]# ls -l /usr/sbin/adaddgnupghome* adduser@[root@bogon ~]# ls -l /usr/sbin/adduserlrwxrwxrwx. 1 root root 7 Mar 23 06:35 /usr/sbin/adduser -> useradd[root@bogon ~]#注意:用户比较容易识别的是名称,但计算机更容易识别的是数字,所以用户登录时,无论我们输入的是什么样的用户名,最后计算机都会把他转变成数字,并接着随后的时间都是用数字来追踪。计算机通过查看/etc/passwd文件,将用户账号,查找用户搜索键,逐次比较查找,比如你登录的是root,它会查找root的Id号是什么。这个过程我们称之为:名称解析过程名称解析:name resolving 名称解析把一种名字转换为另外一种名字的过程,叫做名称解析。名称解析基于名称解析库:数据库文件, 以某个字段为搜索键,一一对应到另外一个字段的数据,就完成了名称解析 NAME <->ID -u uid-g gid Gid需要事先存在,如果不是用-G选项,useradd会自动创建一个与用户同名的组作为用户所属的基本组,此时词组一般也成为用户的私有组-c 注释信息-d /path/./. 显示指定家目录:默认/home/-s /bin/ 指定用户默认使用的shell 用户类别:管理员:0系统用户:1-499 (服务,程序特别创建,可能并不需要登录,没有家目录)普通用户:500+ (useradd)-r 创建系统用户-m 必须给用户创建家目录-M 不给用户创建家目录-d 设定用户创建时useradd的默认行为-G 为用户指定附加组 (需要事先存在)[root@bogon ~]# Groupadd distro[root@bogon ~]#useradd –G distro slackware如果GID和UID不相同是,权限有所改变 Id命令;[root@bogon ~]# id nginxuid=496(nginx) gid=492(nginx) groups=492(nginx)[root@bogon ~]#GID为用户的GID,在GID之后的是附加组,以逗号隔开Man ID查看其他命令-u uid-g gid-G groups-n groupname Finger name(查看用户信息:登陆名,name,家目录,shell,创建后的登陆史,用户邮件,任务计划) Sbin/nologin(系统用户可以-s) [root@bogon ~]# cat /etc/shells/bin/sh/bin/bash/sbin/nologin/bin/dash/bin/tcsh/bin/csh[root@bogon ~]# ls /sbin/nologin/sbin/nologin[root@bogon ~]# 用户密码: /shadow组账号:/etc/group组密码:/etc/gshadow Groupadd :/etc/groupWhatis groupMan groupaddgroup_name:passwd:GID:user_listnameuserlist:以词组为其附加组的用户的用户列:以逗号分隔-g gid-r 添加为系统组 还有几个useradd相关配置文件Man useradd /etc/default/useradd Default values for account creation.[root@bogon ~]# cat /etc/default/useradd# useradd defaults fileGROUP=100HOME=/home 定义用户家目录INACTIVE=-1EXPIRE=SHELL=/bin/bash 定义用户默认shellSKEL=/etc/skel skel创建用户的骨架CREATE_MAIL_SPOOL=yes 定义邮件队列 :/var/mail/&/var/spool下创建于用户同名文件[root@bogon ~]# /etc/skel/ Directory containing default files.我们打开/etc/home/mark下看到几个文件是隐藏的,这些文件来自/etc/skel复制而来,而有些文件是后期生成的。创建一个用户有家,登陆进来能看到正常的提示符,就是这个原因。如果没有,将异常,比如:系统用户(会没有ps1定义等等)[root@bogon ~]# ls -a /home/mark/. .esd_auth .mozilla.. .fontconfig Music.bash_history .gconf .nautilus.bash_logout .gconfd Pictures.bash_profile .gnome2 Public.bashrc .gnome2_private .pulse.cache .gnote .pulse-cookie.config .gnupg .ssh.dbus .gstreamer-0.10 TemplatesDesktop .gtk-bookmarks Videos.dmrc .gvfs .XauthorityDocuments .ICEauthority .xsession-errorsDownloads .local .xsession-errors.old[root@bogon ~]# ls -a /etc/skel/. .. .bash_logout .bash_profile .bashrc .gnome2 .mozilla[root@bogon ~]# Useradd –D –s /bin/tcsh更改shell为tcsh(也就是改变这个文件) [root@bogon ~]# useradd -D -s /bin/tcsh[root@bogon ~]# cat /etc/dedefault/ depmod.d/[root@bogon ~]# cat /etc/default/useradduseradd useradd-[root@bogon ~]# cat /etc/default/useradd# useradd defaults fileGROUP=100HOME=/homeINACTIVE=-1EXPIRE=SHELL=/bin/tcshSKEL=/etc/skelCREATE_MAIL_SPOOL=yes[root@bogon ~]# /etc/login.defsShadow password suite configuration.[root@bogon ~]# man 5 shadwoNo entry for shadwo in section 5 of the manual[root@bogon ~]# man 5 shadow用户加密后存放的密码Etc/shadowlogin name:登陆名encrypted password:加密后的密码date of last password change:最后一次修改密码日期;相对于1970年1月1号至上次密码修改经过的天数(需要换算)minimum password age:密码最小使用期限 :单位:天maximum password age:密码最大使用期限:单位:天password warning period:密码警告期限:0表示不警告password inactivity period:密码非活动期限,超出活动期限将被锁定account expiration date:密码过期期限,其为一个日期(起始1970年1月1)reserved field;预留字段; 在我们useradd 用户后,这些信息是被自动添加的 Passwd命令:Passwd:改自己密码Passwd 用户名:改指定用户密码管理员不受任何密码强度,且可直接修改任何成员密码-n,-x,-n,-k,-d,man查看--stdin:标准输入:#echo “passwd ” | passwd –stdin 用户例如:锁定:passwd -l 用户锁定就是在用户密码前加!!而成的,可以在/etc/shadow查看,-u解锁 Usermod命令:(man查看)-c comment :注释信息-d /PATH 修改用户的家目录;-m修改家目录后一同把用户复制至新位置-g GID 修改用户的基本组-G GID1,GID2,…:修改用户附加组-a:于-g一同使用,表示将用户添加至新指定的附加组,且保留原来的-i :修改原来的登陆名-s :修改用户默认shell-l 锁定用户-u解锁用户 Chsh 命令:Chsh 用户名Chsh –l :列出当前系统上可用shell-s :修改为指定shellChfn命令:Chfn */etc/shadow密码加密,以及如何对比如何认证的user1:$1$lXgoPEgC$nbeN8ARcer.SqJ4I3l0rT1:16525:0:99999:7:::加密/解密;明文,密文常用的加密方法:对称加密:优点:速度快缺点:秘钥分发困难公钥加密(对称):缺点:中间人攻击单向加密:仅能由明文产生密文:反之不成;严格严格意义上来讲,它实现的是提取数据特征码同一个数据,使用同一个算法,多次计算得到的结果一定相同;常用于验证数据完整性定长输出:无论原数据大小是说明,加密后的结果输入大小相同例如:验证字符串的统一数据[root@bogon ~]# md5sum /tmp/yum.logd41d8cd98f00b204e9800998ecf8427e /tmp/yum.log[root@bogon ~]# md5sum /tmp/yum.logd41d8cd98f00b204e9800998ecf8427e /tmp/yum.log[root@bogon ~]# md5sum /tmp/yum.logd41d8cd98f00b204e9800998ecf8427e /tmp/yum.log[root@bogon ~]# md5sum /tmp/yum.logd41d8cd98f00b204e9800998ecf8427e /tmp/yum.log[root@bogon ~]# md5sum /tmp/yum.logd41d8cd98f00b204e9800998ecf8427e /tmp/yum.log[root@bogon ~]#比如我们创建两个用户同一个密码,得到的密码字符串是不一致的(在数据加密之前被加入随机码而生成;在etc/shadow 中,密码字符串前$于$中间的,此乃随机码)MD5:message digestShal: secure hash algorithmCentos :sha512Centos:md 5 Md5:message digest123bits位位数定长输出Sha1:secure hash algorithm160bits 位位数定长输出Sha256:256bits 位位数定长输出Sha512:512bits Shadow$加密算法$8位随机字符$加密后的密码 Chage :修改用户账户密码的过期信息Chage –l :查看用户的过期信息 Su:百度吧 事实上实现用户账号和组的管理大多数时候,可以直接编辑这些文件来实现 一次用户的创建大概经历了那些过程?Useradd添加一个用户时:1,在/etc/passwd文件中添加一行信息:[root@bogon ~]# cat /etc/passwdroot:x:0:0:root:/root:/bin/bash译----〉用户账号:密码字符:uid:gid:注释信息:家目录:shell2,在/etc/group文件中添加一航信息[root@bogon ~]# cat /etc/grouproot:x:0:组名:占位符:gid:user_lost3.创建家目录,默认是和用户同名的目录/home/用户名复制etc/skel目录中的隐藏文件至用户的加目录中并修改其属主,属组权限4,在/etc/shadow创建用户密码相关属性信息:密码默认为空,密码最长使用期限
2015年04月01日
3,492 阅读
0 评论
0 点赞