1.用户管理
1.1用户管理指令
- 增加
1)增加 useradd
useradd选项 | 说明 |
---|---|
-u | 指定用户uid |
-s | 指定命令解释器,默认是/bin/bash |
-M | 不创建家目录 |
[root@hmk888 ~]# useradd -u 1314 -s /sbin/nologin -M mysql
- passwd修改密码
passwd选项 | 说明 |
---|---|
--stdin | 非交互设置密码 |
[root@hmk888 ~]# echo hmk123.. | passwd --stdin hmk
- 删除
userdel选项 | |
---|---|
默认不会删除家目录,邮箱 | |
-r | 删除用户及家目录 |
userdel hmk
- 修改
usermod
- 查看
- id 查询用户的uid,gid,用户组信息,检查用户是否存在
- whoami 查询当前用户的名字
- w 查看当前登录的用户的信息
- last用户的登录情况
- lastlog 所有用户最近1次登录情况
[root@hmk888 ~]# usermod -G root hmk
[root@hmk888 ~]# id hmk
用户id=1000(hmk) 组id=1000(hmk) 组=1000(hmk),0(root)
[root@hmk888 ~]# usermod -G '' hmk
[root@hmk888 ~]# id hmk
用户id=1000(hmk) 组id=1000(hmk) 组=1000(hmk)
1.2用户组命令
创建用户组 groupadd
[root@hmk888 ~]# groupadd -g 888 hmk888
[root@hmk888 ~]# useradd -g hmk888 -u 888 -s /sbin/nologin -M hmk888
[root@hmk888 ~]# tail -1 /etc/passwd
hmk888:x:888:888::/home/hmk888:/sbin/nologin
[root@hmk888 ~]# id hmk888
用户id=888(hmk888) 组id=888(hmk888) 组=888(hmk888)
/etc/skel.目录
- 这个目录是linux新用户家目录的一个模板
- 当创建新用户的时候,系统会把/etc/skel/下面的所有内容,复制到新用户的家目录下面
- 其他用户:创建通知文件,告知新用户,禁止使用rm等危险命令
1.3权限管理sudo
1)概述
-
Linux系统开发人员要看日志,如何创建用户与授予权限?
-
解决方案: root权限,权限太大.
-
普通用户,权限太小.
-
日志平台
-
普通用户+尚方宝剑 以root权限运行命令。
-
-
这时候请使用sudo(提权)
-
这时候可以通过普通用户+sudo权限实现这个目标.
-
授予普通用户以root权限运行,cat,head/tail,more/less,grep.
-
sudo概述:
-
用于给普通用户配置的命令,配置了sudo权限后普通可以以root权限运行命令。
2)进行sudo授权与使用
授权sudo ,需要使用root
#root授权配置
visudo =背后修改 vi /etc/sudoers
#普通用户使用
sudo + 命令
hmk ALL=(ALL) /bin/cat
[hmk@hmk888 ~]$ sudo cat /var/log/secure
用户以root身份运行命令 要加sudo
查看当前用户 有什么sudo权限 sudo -l
[hmk@hmk888 ~]$ sudo -l [sudo] hmk 的密码: 匹配 %2$s 上 %1$s 的默认条目: !visiblepw, env_reset, env_keep="COLORS DISPLAY HOSTNAME HISTSIZE KDEDIR LS_COLORS", env_keep+="MAIL PS1 PS2 QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE", env_keep+="LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES", env_keep+="LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE", env_keep+="LC_TIME LC_ALL LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY", secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin 用户 hmk 可以在 hmk888 上运行以下命令: (ALL) /bin/cat, /bin/head
- 授予所有命令并且不需要输入密码
[root@hmk888 ~]# grep 'hmk' /etc/sudoers
hmk ALL=(ALL) NOPASSWD: ALL
2.堡垒机、跳板机了解
2.1teleport安装
#服务端
[root@hmk ~]# wget https://www.tp4a.com/download/get-file/teleport-server-linux-x64-3.6.4-b3.tar.gz
[root@hmk ~]# tar -zxvf teleport-server-linux-x64-3.6.4-b3.tar.gz
[root@hmk ~]# cd teleport-server-linux-x64-3.6.4-b3
[root@hmk teleport-server-linux-x64-3.6.4-b3]# ./setup.sh
http://192.168.200.6:7190/maintenance/install
安装客户端助手
https://www.tp4a.com/download/get-file/teleport-assist-windows-3.6.3.exe
3.权限管理
3.1 权限管理概述
- Linux通过rwx3种权限控制系统与保护系统,组成9位权限.
- Linux权限体系中还有3位特殊权限,组合起来就是12位权限体系.
- Linux这简单的rwx控制整个Linux系统的安全,权限与用户共同组成Linux系统的安全防护体系.
3.2 Linux权限计算
1)rwx
权限 | 含义 |
---|---|
r | read 是否可读 |
w | write 是否可写 |
x | execute 是否可执行(一般是命令,脚本) |
2)何为9位权限?
- Linux下面任何一个文件/目录与用户的关系有3种关系.
文件/目录与用户的关系 | 含义 |
---|---|
所有者 | 这个文件或目录属于某个用户(所有者)。自己 |
用户组(家庭) | 这个文件或目录属于某个用户组(家庭)。家人。 |
其他人(陌生人) | 这个文件或目录不属于某个用户 也不属于这个用户组。隔壁老der。 |
3)修改权限
chmod命令:change mode 使用数字或字母形式修改权限
chown命令: change owner 修改文件所有者,用户组
#修改hmk.bak 的权限为755
[root@hmk888 ~]# chmod 755 hmk.bak
#修改hmk.bak所有者和用户组为hmk(存在)
[root@hmk888 ~]# chown hmk.hmk hmk.bak
- 基于字符模式的权限设置
[root@hmk888 ~]# chmod 000 hmk.bak
[root@hmk888 ~]# ll hmk.bak
----------. 1 hmk hmk 0 7月 9 14:13 hmk.bak
[root@hmk888 ~]# chmod u+rw,g+r,o+r hmk.bak
[root@hmk888 ~]# ll hmk.bak
-rw-r--r--. 1 hmk hmk 0 7月 9 14:13 hmk.bak
- 增加执行权限
chmod +x hmk.bak
chmod a+x hmk.bak
chmod -R 递归修改权限
- 文件
权限 | 文件 |
---|---|
r | 是否可以读取文件内容 |
w | 是否可以修改文件内容,一般还需要r权限配合. |
x | 是否可以执行文件,(命令,脚本),一般还需要r权限配合. |
- 目录
目录小结论:
目录的r权限查看目录下内容,如果只有r目录下文件的属性信息无法查看提示"?",目录的r权限需要x权限配合.
对于目录x权限表示是否能够进入目录权限,是否能够查看与修改目录下文件的属性信息权限。
目录小结论: 目录的w权限表示在目录下面创建,删除,重命名文件,只有w还不够,需要?配合。
对于目录x权限表示是否能够进入目录权限,是否能够查看与修改目录下文件的 属性信息 权限。
实际应用建议:如果要对某个目录拥有“写”权限,则授予目录rwx即可。
3.3系统默认权限
-
Linux系统通过umask命令控制文件和目录的默认权限
-
如何控制?
文件: 666
目录: 777
文件或目录的最大权限减去umask的值,文件umask如果某一位是奇数,需要减去umask后这一位上+1
文件默认权限:
666
-022
----
644
目录默认权限
777
-022
----
755
eg,umask的值是012,文件的默认权限?目录的默认权限?
文件的默认权限:
666
-012
----
654
+ 1
----
664
目录的默认权限:
777
-012
----
765
3.4Linux特殊属性
- 目的:预防重要文件或命令被修改.
- lsattr 查看这种特殊属性
- chatrr 修改这种特殊属性
- a属性 append只能追加
- i属性 immutable 不朽的,无法被毁灭的.
[root@hmk888 hmk]# chattr +a hmk.txt
[root@hmk888 hmk]# lsattr hmk.txt
-----a--------e----- hmk.txt
[root@hmk888 hmk]# echo 123 > hmk.txt
-bash: hmk.txt: 不允许的操作
[root@hmk888 hmk]# echo 123 >> hmk.txt
[root@hmk888 hmk]# cat hmk.txt
hmk
123
[root@hmk888 hmk]# chattr +i test.txt
[root@hmk888 hmk]# lsattr test.txt
----i---------e----- test.txt
[root@hmk888 hmk]# cat test.txt
test
[root@hmk888 hmk]# echo 123 >> test.txt
-bash: test.txt: 不允许的操作
[root@hmk888 hmk]# rm -rf test.txt
rm: 无法删除 'test.txt': 不允许的操作
4.软件包管理
- 安装方式推荐
- yum优先
- rpm包
- 二进制
- 编译安装
4.1rpm安装方式
- 增删改查
rpm命令 | 选项及含义 |
---|---|
增加-安装 | -ivh (-i install ) xxxx.rpm |
查看-检查 | -qa (query all) 查看软件包是否安装 |
-ql 查看软件包内容 | |
-qf 文件或命令绝对路径 文件或命令所归属的软件包 | |
修改-升级 | -Uvh 升级软件包(如果软件包不存在,相当是ivh安装) |
删除 | -e 删除软件包 |
安装
案例01 安装rpm包
#下载软件包
[root@hmk ~]# wget --no-check-certificate https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/6.0/rhel/7
/x86_64/zabbix-agent-6.0.0-1.el7.x86_64.rpm
wget下载指定内容,默认下载到当前目录
-P 下载到指定目录,目录不存在会创建
-no-check-certificate 下载地址https,加上这个选项。
#安装依赖(后面yum部分可以解决软件包依赖和查找依赖)
[root@hmk ~]# rpm -ivh zabbix-agent-6.0.0-1.el7.x86_64.rpm
warning: zabbix-agent-6.0.0-1.el7.x86_64.rpm: Header V4 RSA/SHA512 Signature, key ID a14fe591: NOKEY
error: Failed dependencies:
libpcre2-8.so.0()(64bit) is needed by zabbix-agent-6.0.0-1.el7.x86_64
[root@hmk ~]# yum install pcre2 -y
[root@hmk ~]# rpm -ivh zabbix-agent-6.0.0-1.el7.x86_64.rpm
warning: zabbix-agent-6.0.0-1.el7.x86_64.rpm: Header V4 RSA/SHA512 Signature, key ID a14fe591: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:zabbix-agent-6.0.0-1.el7 ################################# [100%]
查询
[root@hmk ~]# rpm -qa | grep zabbix
zabbix-agent-6.0.0-1.el7.x86_64
#检查软件包内容
[root@hmk ~]# rpm -ql zabbix-agent-6.0.0
/etc/logrotate.d/zabbix-agent
/etc/zabbix/zabbix_agentd.conf
/etc/zabbix/zabbix_agentd.d
/usr/lib/systemd/system/zabbix-agent.service
/usr/lib/tmpfiles.d/zabbix-agent.con
rpm -qf 命令或文件的绝对路径,用于查找已经安装命令或文件属于哪个软件包
[root@hmk888 ~]# rpm -qf /sbin/ifconfig net-tools-2.0-0.54.oe1.x86_64
修改-升级
[root@hmk ~]# rpm -Uvh zabbix-agent-6.0.14-release1.el7.x86_64.rpm
warning: zabbix-agent-6.0.14-release1.el7.x86_64.rpm: Header V4 RSA/SHA512 Signature, key ID a14fe591: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:zabbix-agent-6.0.14-release1.el7 ################################# [ 50%]
Cleaning up / removing...
2:zabbix-agent-6.0.0-1.el7 ################################# [100%]
删除
[root@hmk ~]# rpm -e zabbix-agent-6.0.14
[root@hmk ~]# rpm -qa | grep zabbix-agent-6.0.14
4.2编译安装
- 配置 ./configure
- 编译 make
- 编译安装 make install
4.3yum软件包管理
- yum是红帽系列系统中默认的软件包管理器。替我们下载指定的rpm包,替我们安装,安装过程中有依赖,
下载安装 依赖。
- 推荐安装 命令补全增强工具
yum install -y bash-completion bash-completion-extras
安装后重新登录Linux,可以对yum选项进行tab键。
-
yum软件安装全流程
-
运行yum install -y tree命令。
-
解析下tree软件包是否有依赖。
-
yum根据本地配置的yum源的地址,进行请求(相关软件包tree,依赖软件包)。
-
如果yum源存在软件,则会通知yum进行下载,rpm包就被下载到yum缓存目录中。
-
软件包和依赖(如果有)都下载OK,则开始安装。
-
安装完成删除刚刚下载的rpm包(默认)。
-
安装php
rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
yum remove php-common -y
yum install -y php72w php72w-opcache php72w-xml php72w-mcrypt php72w-gd php72w-devel php72w-mysql php72w-intl php72w-mbstring
yum install php72w-fpm
systemctl start php-fpm.service //启动php
systemctl enable php-fpm.service//设置开机自启动
systemctl restart httpd
标签:hmk888,root,Linux,zabbix,hmk,权限,rpm
From: https://www.cnblogs.com/hekang520/p/18388816