Im Betriebssystem kann ein Benutzer nicht tun, was er will, wodurch die Sicherheit des Systems nicht gewährleistet werden kann. Es gibt also eine Aufteilung der Berechtigungen. Im Linux-System werden Benutzer in zwei Kategorien unterteilt: Administratorbenutzer (Root) und normale Benutzer. Der Befehl
su
ermöglicht den Wechsel zu ein Superuser oder andere Benutzer und kann vorübergehend die Berechtigungen des gewechselten Benutzers besitzen. su
命令可让一个普通用户切换为超级用户或其他用户,并可临时拥有所切换用户的权限。
su
命令[san@San ~]$ su root Password: [root@San san]#
注意:su
命令在进行用户切换的时候需要输入目标用户的密码才能切换成功。
sudo
是系统管理员允许让普通用户执行一些或者全部的root命令的一个工具(执行身份一般当然要短暂成为root喽)。
sudo
命令[san@San ~]$ date Fri Apr 10 15:50:07 CST 2020 [san@San ~]$ date -s "2020-04-10 15:50:57" date: cannot set date: Operation not permitted Fri Apr 10 15:50:57 CST 2020 [san@San ~]$ sudo date -s "2020-04-10 15:52:43" [sudo] password for san: Fri Apr 10 15:52:43 CST 2020 [san@San ~]$ date
从示例中可以看到,设置系统时间在普通用户下则会报错,操作不被允许。然而使用sudo
命令临时对用户操作进行提权则可以直接使用普通用户进行系统时间的设置。
并且sudo
不是对shell的一个代替,它是面向每个命令的,对于每个命令都可以使用sudo进行提权操作。使用sudo
提权操作不仅减少了root用户的登录和管理时间,同样也提高了安全性。
注意:sudo
命令的使用需要对/etc/sudoers
配置文件进行修改。
/etc/sudoers
配置文件的修改任何用户都可以随时使用sudo
指令来对自己的操作进行提权吗?不是这样的,若是这样的话,则root管理员用户形同虚设,只有管理员将指定用户添加入/etc/sudoers
中,这个用户才可以进行提权操作,因为它是系统管理员集中的管理用户的使用权限和使用的主机的配置文件。
[san@San ~]$ su root Password: [root@San san]# visudo #vi /etc/sudoers 也可以,但是我们暂时不用,原因见后面 ## 在配置文件中约第100行的位置可以找到需要配置信息, 输入 :100 回车可以直接跳转至第100行 ## 将需要提权的用户信息添加到root用户信息的下方,格式雷同root即可,这里的san是我自己的用户~ ## 通过输入 :wq 回车后保存配置并退出 ## Allow root to run any commands anywhere root ALL=(ALL) ALL san ALL=(ALL)
注意:/etc/sudoers
文件因为文件权限原因无法直接使用编辑器进行修改,就算修改成功也不会进行语法检查,因此推荐使用visudo
su
Befehl [root@San san]# ls -l /etc/sudoers
Hinweis: su
Der Befehl muss beim Benutzerwechsel das Passwort des Zielbenutzers eingeben, damit der Wechsel erfolgreich ist. 🎜
sudo
ist ein Tool, mit dem Systemadministratoren normalen Benutzern die Ausführung einiger oder aller Root-Befehle ermöglichen können (die Ausführungsidentität ist im Allgemeinen natürlich nur von kurzer Dauer) Wurzel werden). 🎜
sudo
Befehl 🎜rrreeeWie Sie aus dem sehen können Wenn Sie beispielsweise die Systemzeit unter normalen Benutzern festlegen, wird ein Fehler gemeldet und der Vorgang ist nicht zulässig. Wenn Sie jedoch den Befehl sudo
verwenden, um Benutzervorgänge vorübergehend zu erhöhen, können Sie einen normalen Benutzer direkt zum Festlegen der Systemzeit verwenden. 🎜
Und sudo
ist kein Ersatz für die Shell, sondern für jeden Befehl, und sudo kann verwendet werden, um die Berechtigungen für jeden Befehl zu erweitern. Die Verwendung von sudo
zur Eskalation von Berechtigungen reduziert nicht nur die Anmelde- und Verwaltungszeit des Root-Benutzers, sondern verbessert auch die Sicherheit. 🎜
Hinweis: Die Verwendung des Befehls sudo
erfordert eine Änderung der Konfigurationsdatei /etc/sudoers
. 🎜
/etc/sudoers
Konfigurationsdateiänderungen🎜Beliebig Benutzer können jederzeit den Befehl sudo
verwenden, um ihre eigenen Vorgänge zu eskalieren? Wenn dies nicht der Fall ist, ist der Root-Administratorbenutzer nur dann nutzlos, wenn der Administrator den angegebenen Benutzer zu /etc/sudoers
hinzufügt, da es sich um Systemadministratoren handelt Benutzerberechtigungen und Konfigurationsdateien der verwendeten Hosts zentral verwalten. 🎜rrreee
Hinweis: Die Datei /etc/sudoers
kann aufgrund der Dateiberechtigungen nicht direkt mit dem Editor geändert werden, auch wenn die Änderung erfolgreich ist, Syntaxprüfung wird nicht ausgeführt. Daher wird empfohlen, zur Konfiguration den Befehl visudo
zu verwenden. 🎜rrreee
Das obige ist der detaillierte Inhalt vonWas sind Linux-Befehlsberechtigungen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!