文章目錄
1.什麼是sudo權限
sudo是Linux系統管理指令,是允許系統管理員讓普通用戶執行一些或者全部root命令的一個工具
。Linux系統下,爲了安全,一般來說我們操作都是在普通用戶下操作,但是有時候普通用戶需要使用root權限,比如在安裝軟件的時候。這個時候如果我們切回root用戶下效率就會比較低,所以用sudo命令就會很方便。Linux sudo命令以系統管理者的身份執行指令,也就是說,經由 sudo 所執行的指令就好像是 root 親自執行
。
2.設置普通用戶的sudo權限
2.1 進入root用戶,打開sudoers文件
# su 進入root用戶
# vim /etc/sudoers 編輯sudo的配置文件
2.2 修改sudoers文件
然後給普通用戶jingkong添加sudo權限,在第一行插入jingkong ALL=(root)NOPASSWD:ALL
,並保存。
[root@muguangjingkong jingkong]# vi /etc/sudoers
jingkong ALL=(root)NOPASSWD:ALL
## Sudoers allows particular users to run various commands as
## the root user, without needing the root password.
##
......
注:sudoers文件只是一個只讀文件,可以用:wq!
強制修改,但是如果你覺得不安全,可以在修改文件之前先賦予文件寫權限(W),修改保存之後再收回寫權限,操作如下:
chmod u+w /etc/sudoers
-- 修改完成之後收回權限:
chmod u-w /etc/sudoers
2.3 測試
- 獲取sudo權限之前:
[root@muguangjingkong jingkong]# su - jingkong
[jingkong@muguangjingkong ~]$ sudo vi /etc/hosts
[sudo] password for jingkong:
Sorry, try again.
[sudo] password for jingkong:
jingkong is not in the sudoers file. This incident will be reported.
提示‘jingkong’用戶不在‘sudoers’文件裏
- 獲取sudo權限後:
[jingkong@muguangjingkong ~]$ sudo vi /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
"/etc/hosts" 2L, 158C
‘jingkong’用戶可以直接操作編輯,不用再切換到root用戶之後再操作
3.擴展—防火牆設置
##查看防火牆是否關閉
$ sudo service iptables status
#關閉防火牆
$ sudo service iptables stop
##啓動防火牆
$ sudo service iptables start
永久性設置防火牆關閉
$ sudo chkconfig iptables off on
4.Linux下如何臨時或永久禁用SELinux
Linux被認爲是當今最安全的操作系統之一,這是因爲其出色的安全實現功能,如SELinux(安全增強型Linux)。
對於初學者,SELinux被描述爲在內核中執行的強制訪問控制(MAC)安全結構。 SELinux提供了一種強制執行某些安全策略的方法,否則系統管理員無法有效實施這些策略。
當您安裝RHEL/CentOS或多個衍生產品時,默認情況下會啓用SELinux功能或服務,因爲您的系統上的某些應用程序可能實際上不支持此安全機制。 因此,要使這些應用程序正常運行,您必須禁用或關閉SELinux。
(詳細介紹參考:https://www.linuxidc.com/Linux/2019-07/159568.htm)