工具準備:linux雲主機,ssh工具
建立擁有sudo許可權的使用者注意:在阻止對root帳戶的訪問之前,請確保已使用useradd命令建立了乙個管理帳戶,該帳戶能夠使用sudo命令獲取root使用者許可權,並為該使用者帳戶提供強密碼。 標誌-m
表示建立使用者的主目錄,-c
表示注釋:
1 # useradd -m -c "接下來,使用usermod命令將此使用者新增到適當的系統管理員組,其中開關admin user
"admin
2 # passwd admin
-a
表示附加使用者帳戶,-g
指定用於新增使用者的組(wheel或sudo,具體取決於您的linux發行版):
1 # usermod -ag wheel admin #centos/rhel建立具有管理許可權的使用者後,請切換到該帳戶以阻止root訪問。2 # usermod -ag sudo admin #debian/ubuntu
1 # su admin更改root使用者的shell禁用root使用者登入的最簡單方法是將其shell從
/bin/bash
或/bin/bash
(或允許使用者登入的任何其他shell)更改為/etc/passwd檔案中的/sbin/nologin
,您可以使用您喜歡的任何命令列編輯器開啟進行編輯,如圖所示。
1 $ sudo vim /etc/passwd編輯儲存
儲存檔案並關閉它。
從現在開始,當root使用者登入時,他/她將收到訊息「此帳戶當前不可用。「這是預設訊息,但是,您可以更改它並在檔案/etc/nologin.txt中設定自定義訊息。此方法僅對需要用於使用者登入的shell的程式有效,否則,sudo,ftp和email客戶端可以訪問root帳戶。
通過控制台裝置(tty)禁用root登入第二種方法使用名為pam_securetty的pam模組,只有當使用者登入「安全」tty時才允許root訪問,如/etc/securetty中的列表所定義。
上述檔案允許您指定允許root使用者登入的tty裝置,清空此檔案可防止在連線到計算機系統的任何裝置上進行root登入。
要建立空檔案,請執行。
1 $ sudo此方法有一些限制,它只影響登入,顯示管理器(即gdm,kdm和xdm)等程式以及啟動tty的其他網路服務。 諸如su,sudo,ssh和其他相關openssh工具之類的程式將可以訪問root帳戶。mv /etc/securetty /etc/securetty.orig
2 $ sudo
touch /etc/securetty
3 $ sudo
chmod
600 /etc/securetty
禁用ssh root登入訪問遠端伺服器或vps的最常用方法是通過ssh並阻止其下的root使用者登入,您需要編輯/etc/ssh/ sshd_config檔案。
1 $ sudo vim /etc/ssh/sshd_config然後取消注釋(如果它被注釋)指令permitrootlogin並將其值設定為
no
,如螢幕截圖所示。
在ssh中禁用root登入
完成後,儲存並關閉檔案。 然後重新啟動sshd服務以應用最近的配置更改。
1 $ sudo您可能已經知道,此方法僅影響openssh工具集,ssh,scp,sftp等程式將被阻止訪問root帳戶。systemctl restart sshd 2or
3 $ sudo service sshd restart
通過pam限制root使用者登入可插拔認證模組(簡稱pam)是linux系統上集中,可插拔,模組化和靈活的認證方法。 pam通過/lib/security/pam_listfile.so模組,可以極大地靈活地限制特定帳戶的許可權。
上述模組可用於引用不允許通過某些目標服務(如login,ssh和任何pam感知程式)登入的使用者列表。
在這種情況下,我們希望通過限制對login和sshd服務的訪問來禁用對系統的root使用者訪問。 首先在/etc/pam.d/目錄中開啟並編輯目標服務的檔案,如圖所示。
$ sudo vim /etc/pam.d/login接下來,在兩個檔案中新增以下配置。or$
sudo vim /etc/pam.d/login
auth required pam_listfile.so \完成後,儲存並關閉每個檔案。 然後建立普通檔案/etc/ssh/deniedusers,每行應包含乙個專案,而不是世界可讀的。onerr=succeed item=user sense=deny file=/etc/ssh/deniedusers
在其中新增名稱root,然後儲存並關閉它。
$ sudo vim /etc/ssh/deniedusers還要為此設定所需的許可權。
$ sudo此方法僅影響支援pam的程式和服務。 您可以通過ftp和電子郵件客戶端等阻止對系統的root訪問。chmod
600 /etc/ssh/deniedusers
$ manpam_securetty
$ man
sshd_config
$ man pam
linux系統禁用root使用者遠端登入
系統 redhat 7.4 1 建立新的使用者 為什麼呢?因為禁用了root後,遠端連線可以用這個賬號 adduser admin passwd admin 這裡可能會由於密碼簡單通過不了 2 修改遠端連線許可權 建立使用者後,需要給他遠端連線的許可權 vim etc sudoers 在root下面...
linux用其他使用者登陸禁用root
一 新增和root許可權一樣的使用者 1 新增可遠端的使用者,設定密碼 adduser aaaa passwd aaaa 修改密碼 然後輸入密碼 系統提示輸入確認密碼後再輸入一次。ok新增成功。2 修改 etc sudoers 檔案,找到下面一行,在root下面新增一行,如下所示 vim etc s...
Linux禁用Root遠端登陸
先在ssh的配置檔案裡修改root 遠端登陸引數。禁用root遠端登陸。然後建立乙個遠端登陸使用者。用這個使用者登陸之後,在切換到root使用者,拿到最高許可權。1.首先你得先建立子賬戶,並且用子賬戶可以登入成功。2.禁用root賬戶,修改檔案 vim etc ssh sshd config把 pe...