如何在 CentOS 7 中创建超级用户

Lju*_*vac 2 root user-permissions centos7

我对 Linux 操作系统非常陌生(我已经开始使用 CentOS 7),所以我想知道是否可以创建某种与 root 具有相同权限的超级用户。我的意思是能够写入 + 读取 + 执行 root 用户拥有的文件夹和文件。为什么我需要这个?我有完全访问权限的 VPS。为了提高我的 Web 服务器的安全性,我创建了新用户并禁用了 root 登录,现在我通过 Putty 和 WinSCP 使用 RSA 公钥/私钥登录我的服务器。这是我的 sshd.conf:

Port my_port_number
Protocol 2

HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_ecdsa_key
HostKey /etc/ssh/ssh_host_ed25519_key

AuthorizedKeysFile  .ssh/authorized_keys
PasswordAuthentication no
RSAAuthentication no
PubkeyAuthentication yes
ChallengeResponseAuthentication no
PermitEmptyPasswords no

SyslogFacility AUTHPRIV

LoginGraceTime 15m
PermitRootLogin no
StrictModes yes
MaxAuthTries 2

GSSAPIAuthentication yes
GSSAPICleanupCredentials no

UsePAM no

IgnoreRhosts yes

X11Forwarding no
ClientAliveInterval 120
ClientAliveCountMax 720

AcceptEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES
AcceptEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT
AcceptEnv LC_IDENTIFICATION LC_ALL LANGUAGE
AcceptEnv XMODIFIERS

Subsystem   sftp    /usr/libexec/openssh/sftp-server
AllowUsers user_that_i_have_created
Run Code Online (Sandbox Code Playgroud)

另外,我已将此行添加到 /etc/sudoers

## Allow root to run any commands anywhere 
root    ALL=(ALL)   ALL
user_that_i_have_created ALL=(ALL) ALL
Run Code Online (Sandbox Code Playgroud)

我也这样做了:

usermod -aG wheel user_that_i_have_created
Run Code Online (Sandbox Code Playgroud)

现在有什么问题?作为我创建的新用户,我无法访问只能由 root 读取和修改的文件和文件夹。因为我经常需要修改一些 root 拥有的配置文件(例如 apache 的 httpd.conf),我需要通过 WinSCP 访问这些文件,因为我习惯于通过它的记事本编辑它们。通过 Putty(以 root 身份登录)编辑这些文件会浪费时间。

我在脑海中想象我将能够创建与 root 相同的新用户(关于特权和权限),但只能使用不同的名称。这在Linux中甚至可能吗?

Sve*_*ven 6

sudo是为了什么。如果配置正确,sudoers文件中的用户也可以执行 root 可以执行的所有操作。

编辑文件:而不是vim filename您只是sudo vim filename对其他所有命令使用和相似。

创建一个额外的实际 root 用户是不可能的——你也可以给另一个用户这个 id 0,但那是具有另一个名称的实际 root 用户。