1. 程式人生 > >切換用戶su命令、授權sudo命令、限制root遠程登錄

切換用戶su命令、授權sudo命令、限制root遠程登錄

su、sudo、限制root遠程登錄

su命令

用來切換用戶的

ctrl+d退出來

su - 徹底切換用戶,包括自己的配置、環境變量

[root@aaa-01 ~]# whoami
root
[root@aaa-01 ~]# su - awei
上一次登錄:一 5月  7 15:44:46 CST 2018pts/1 上
[awei@aaa-01 ~]$ id
uid=1000(awei) gid=1000(awei) 組=1000(awei) 環境=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
[awei@aaa-01 ~]$ pwd
/home/awei

假如我們以普通用戶user的身份去執行一條命令,但是不登陸到user用戶上去也是可以的

以一個用戶的身份去執行一條命令,格式:su - -c "你想要執行的命令" aming(用戶)

比如我想用awei的身份執行一條命令但不登錄到awei用戶下去

su - -c "touch /tmp/awei.111" awei
[root@aaa-01 ~]# ls -lt /tmp/ |head
總用量 0
-rw-rw-r--. 1 awei awei  0 5月  14 19:11 awei.111
drwx------. 3 root root 17 5月   9 22:23 systemd-private-eb8518eb20f94917bcf9a0aff9694e6c-chronyd.service-0aB8Oo
drwx------. 3 root root 17 5月   9 22:23 systemd-private-eb8518eb20f94917bcf9a0aff9694e6c-vmtoolsd.service-UfEtXo
drwx------. 3 root root 17 5月   9 22:23 systemd-private-eb8518eb20f94917bcf9a0aff9694e6c-vgauthd.service-mRYdbp
-rw-r--r--. 2 root root  0 5月   8 17:46 1.txt.bak
-rw-r--r--. 1 root root  0 5月   3 16:48 1.txt
drwxr-xr-x. 2 root root  6 5月   3 15:15 awei2
drw-r--r--. 2 root root  6 5月   3 15:13 awei
-rw-------. 1 root root  0 4月  23 02:51 yum.log

假如我們創建用戶時沒有創建用戶的家目錄,所以當我們切換到這個用戶的時候,就會顯示成技術分享圖片

以下操作我們可以讓他恢復正常

技術分享圖片

技術分享圖片


sudo命令

授權普通用戶擁有別的用戶的權限,它可以讓普通用戶臨時用指定用戶的身份去執行一條命令,大部分時候是授權普通用戶擁有root用戶的權限,

要使用這個命令,需要編輯配置文件,etc/sudoers,但是直接編輯這個文件出錯後系統不會報錯,所以我們用visudo命令來編輯,如果編輯有問題,系統會提示錯誤

技術分享圖片

visudo 可以去編輯 往下翻找到圖片上的位置,假如說我們臨時讓aming用戶擁有root的身份

aming ALL=(ALL) ALL:表示所有命令權限

技術分享圖片


也可以只讓它擁有指定的命令權限,但必須要寫它的絕對路徑如下圖

註意這裏要使用命令的絕對路徑並且要用空格隔開;小用法" :set nu"可以查看文件的行數。

aming      ALL=(ALL)       /usr/bin/ls,/usr/bin/cd,/usr/bin/cat

技術分享圖片

編輯之後,aming就可以擁有root的ls,cd,cat ,的權限了,需要輸入用戶的密碼,第二次就不需要了

使用方式如下:

先su - aming登錄普通用戶

再在普通用戶下執行root的命令:sudo /usr/bin/ls /root/

技術分享圖片

不需要輸入密碼的方法:

續編輯# visudo,在剛才編輯的地方添加一行命令,可以在使用sudo命令時,不需要再輸入密碼

技術分享圖片

技術分享圖片

visudo中還有可以給命令做別名的用法,用USER_CMD替代/usr/bin/ls, /usr/bin/mv/, /usr/bin/cat

技術分享圖片

技術分享圖片

技術分享圖片

限制root遠程登錄

使用root用戶登錄服務器有一定的危險,為安全起見,我們可以禁止root遠程登錄,只允許普通用戶登錄。首先輸入#visudo,給普通用戶做別名,然後設定規則,讓普通用戶擁有任何身份,執行su命令無需密碼

技術分享圖片

技術分享圖片

限制root遠程登錄,首先修改配置文件/etc/ssh/sshd_config,輸入/Root搜索,將#PermitRootLogin yes修改為PermitRootLogin no,保存配置文件,重啟sshd服務# systemctl restart sshd.service,這樣我們就成功的限制了root遠程登陸

技術分享圖片

技術分享圖片

技術分享圖片


切換用戶su命令、授權sudo命令、限制root遠程登錄