您的位置:首頁 > 教程 > linux > Linux 為特定的用戶或用戶組啟用或禁用 SSH的方法

Linux 為特定的用戶或用戶組啟用或禁用 SSH的方法

2022-06-19 07:33:12 來源:易采站長站 作者:

Linux 為特定的用戶或用戶組啟用或禁用 SSH的方法

這篇文章主要介紹了如何在 linux 上為特定的用戶或用戶組啟用或禁用 SSH,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下AG3站長之家-易采站長站-Easck.Com

由于你的公司標準規定,你可能只能允許部分人訪問 linux 系統?;蛘吣憧赡苤荒軌蛟试S幾個用戶組中的用戶訪問 Linux 系統。那么如何實現這樣的要求呢?最好的方法是什么呢?如何使用一個簡單的方法去實現呢?AG3站長之家-易采站長站-Easck.Com

是的,我們會有很多種方法去實現它。但是我們應該使用簡單輕松的方法。為了簡單輕松的完成目的,我們可以通過對 /etc/ssh/sshd_config 文件做必要的修改來實現。在這篇文章中我們將會向你展示實現要求的詳細步驟。AG3站長之家-易采站長站-Easck.Com

為什么我們要這樣做呢?是出于安全的原因。你可以訪問這個鏈接來獲取更多關于 openSSH 的使用方法。AG3站長之家-易采站長站-Easck.Com

什么是 SSH ? AG3站長之家-易采站長站-Easck.Com

openssh 全稱為 OpenBSD Secure Shell。Secure Shell(ssh)是一個自由開源的網絡工具,它能讓我們在一個不安全的網絡中通過使用 Secure Shell(SSH)協議來安全訪問遠程主機。AG3站長之家-易采站長站-Easck.Com

它采用了客戶端-服務器架構(C/S),擁有用戶身份認證、加密、在計算機和隧道之間傳輸文件等功能。AG3站長之家-易采站長站-Easck.Com

我們也可以用 telnet 或 rcp 等傳統工具來完成,但是這些工具都不安全,因為它們在執行任何動作時都會使用明文來傳輸密碼。AG3站長之家-易采站長站-Easck.Com

如何在 Linux 中允許用戶使用 SSH? AG3站長之家-易采站長站-Easck.Com

通過以下內容,我們可以為指定的用戶或用戶列表啟用 ssh 訪問。如果你想要允許多個用戶,那么你可以在添加用戶時在同一行中用空格來隔開他們。AG3站長之家-易采站長站-Easck.Com

為了達到目的只需要將下面的值追加到 /etc/ssh/sshd_config 文件中去。 在這個例子中, 我們將會允許用戶 user3 使用 ssh。AG3站長之家-易采站長站-Easck.Com

# echo "AllowUsers user3" >> /etc/ssh/sshd_configAG3站長之家-易采站長站-Easck.Com

你可以運行下列命令再次檢查是否添加成功。AG3站長之家-易采站長站-Easck.Com

# cat /etc/ssh/sshd_config | grep -i allowusers AllowUsers user3AG3站長之家-易采站長站-Easck.Com

這樣就行了, 現在只需要重啟 ssh 服務和見證奇跡了。(下面這兩條命令效果相同, 請根據你的服務管理方式選擇一條執行即可)AG3站長之家-易采站長站-Easck.Com

# systemctl restart sshd
或
# service restart sshd

接下來很簡單,只需打開一個新的終端或者會話嘗試用不同的用戶身份訪問 Linux 系統。是的,這里 user2 用戶是不被允許使用 SSH 登錄的并且會得到如下所示的錯誤信息。AG3站長之家-易采站長站-Easck.Com

# ssh user2@192.168.1.4
user2@192.168.1.4's password: 
Permission denied, please try again.

輸出:AG3站長之家-易采站長站-Easck.Com

Mar 29 02:00:35 CentOS7 sshd[4900]: User user2 from 192.168.1.6 not allowed because not listed in AllowUsers Mar 29 02:00:35 CentOS7 sshd[4900]: input_userauth_request: invalid user user2 [preauth] Mar 29 02:00:40 CentOS7 unix_chkpwd[4902]: password check failed for user (user2) Mar 29 02:00:40 CentOS7 sshd[4900]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=192.168.1.6 user=user2 Mar 29 02:00:43 CentOS7 sshd[4900]: Failed password for invalid user user2 from 192.168.1.6 port 42568 ssh2AG3站長之家-易采站長站-Easck.Com

與此同時用戶 user3 被允許登入系統因為他在被允許的用戶列表中。AG3站長之家-易采站長站-Easck.Com

# ssh user3@192.168.1.4
user3@192.168.1.4's password: 
[user3@CentOS7 ~]$

輸出:AG3站長之家-易采站長站-Easck.Com

Mar 29 02:01:13 CentOS7 sshd[4939]: Accepted password for user3 from 192.168.1.6 port 42590 ssh2 Mar 29 02:01:13 CentOS7 sshd[4939]: pam_unix(sshd:session): session opened for user user3 by (uid=0)AG3站長之家-易采站長站-Easck.Com

如何在 Linux 中阻止用戶使用 SSH ?AG3站長之家-易采站長站-Easck.Com

通過以下內容,我們可以配置指定的用戶或用戶列表禁用 ssh。如果你想要禁用多個用戶,那么你可以在添加用戶時在同一行中用空格來隔開他們。AG3站長之家-易采站長站-Easck.Com

為了達到目的只需要將以下值追加到 /etc/ssh/sshd_config 文件中去。 在這個例子中, 我們將禁用用戶 user1 使用 ssh。AG3站長之家-易采站長站-Easck.Com

# echo "DenyUsers user1" >> /etc/ssh/sshd_configAG3站長之家-易采站長站-Easck.Com

你可以運行下列命令再次檢查是否添加成功。AG3站長之家-易采站長站-Easck.Com

# cat /etc/ssh/sshd_config | grep -i denyusers
DenyUsers user1

這樣就行了, 現在只需要重啟 ssh 服務和見證奇跡了。AG3站長之家-易采站長站-Easck.Com

# systemctl restart sshd
活
# service restart sshd

接下來很簡單,只需打開一個新的終端或者會話,嘗試使用被禁用的用戶身份被訪問 Linux 系統。是的,這里 user1 用戶在禁用名單中。所以,當你嘗試登錄時,你將會得到如下所示的錯誤信息。AG3站長之家-易采站長站-Easck.Com

# ssh user1@192.168.1.4
user1@192.168.1.4's password: 
Permission denied, please try again.

輸出:AG3站長之家-易采站長站-Easck.Com

Mar 29 01:53:42 CentOS7 sshd[4753]: User user1 from 192.168.1.6 not allowed because listed in DenyUsers Mar 29 01:53:42 CentOS7 sshd[4753]: input_userauth_request: invalid user user1 [preauth] Mar 29 01:53:46 CentOS7 unix_chkpwd[4755]: password check failed for user (user1) Mar 29 01:53:46 CentOS7 sshd[4753]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=192.168.1.6 user=user1 Mar 29 01:53:48 CentOS7 sshd[4753]: Failed password for invalid user user1 from 192.168.1.6 port 42522 ssh2AG3站長之家-易采站長站-Easck.Com

如何在 Linux 中允許用戶組使用 SSH?AG3站長之家-易采站長站-Easck.Com

通過以下內容,我們可以允許一個指定的組或多個組使用 ssh。AG3站長之家-易采站長站-Easck.Com

如果你想要允許多個組使用 ssh 那么你在添加用戶組時需要在同一行中使用空格來隔開他們。AG3站長之家-易采站長站-Easck.Com

為了達到目的只需將以下值追加到 /etc/ssh/sshd_config 文件中去。在這個例子中,我們將允許 2g-admin 組使用 ssh。AG3站長之家-易采站長站-Easck.Com

# echo "AllowGroups 2g-admin" >> /etc/ssh/sshd_configAG3站長之家-易采站長站-Easck.Com

你可以運行下列命令再次檢查是否添加成功。AG3站長之家-易采站長站-Easck.Com

# cat /etc/ssh/sshd_config | grep -i allowgroups
AllowGroups 2g-admin

運行下列命令查看屬于該用戶組的用戶有哪些。AG3站長之家-易采站長站-Easck.Com

# getent group 2g-admin
2g-admin:x:1005:user1,user2,user3

這樣就行了, 現在只需要重啟 ssh 服務和見證奇跡了。AG3站長之家-易采站長站-Easck.Com

# systemctl restart sshd
或
# service restart sshd

是的, user1 被允許登入系統因為用戶 user1 屬于 2g-admin 組。AG3站長之家-易采站長站-Easck.Com

# ssh user1@192.168.1.4
user1@192.168.1.4's password: 
[user1@CentOS7 ~]$

輸出:AG3站長之家-易采站長站-Easck.Com

Mar 29 02:10:21 CentOS7 sshd[5165]: Accepted password for user1 from 192.168.1.6 port 42640 ssh2AG3站長之家-易采站長站-Easck.Com
Mar 29 02:10:22 CentOS7 sshd[5165]: pam_unix(sshd:session): session opened for user user1 by (uid=0)AG3站長之家-易采站長站-Easck.Com

是的, user2 被允許登入系統因為用戶 user2 同樣屬于 2g-admin 組。AG3站長之家-易采站長站-Easck.Com

# ssh user2@192.168.1.4
user2@192.168.1.4's password: 
[user2@CentOS7 ~]$

輸出:AG3站長之家-易采站長站-Easck.Com

Mar 29 02:10:38 CentOS7 sshd[5225]: Accepted password for user2 from 192.168.1.6 port 42642 ssh2 Mar 29 02:10:38 CentOS7 sshd[5225]: pam_unix(sshd:session): session opened for user user2 by (uid=0)AG3站長之家-易采站長站-Easck.Com

當你嘗試使用其他不在被允許的組中的用戶去登入系統時, 你將會得到如下所示的錯誤信息。AG3站長之家-易采站長站-Easck.Com

# ssh ladmin@192.168.1.4 ladmin@192.168.1.4's password: Permission denied, please try again.AG3站長之家-易采站長站-Easck.Com

輸出:AG3站長之家-易采站長站-Easck.Com

Mar 29 02:12:36 CentOS7 sshd[5306]: User ladmin from 192.168.1.6 not allowed because none of user's groups are listed in AllowGroups Mar 29 02:12:36 CentOS7 sshd[5306]: input_userauth_request: invalid user ladmin [preauth] Mar 29 02:12:56 CentOS7 unix_chkpwd[5310]: password check failed for user (ladmin) Mar 29 02:12:56 CentOS7 sshd[5306]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=192.168.1.6 user=ladmin Mar 29 02:12:58 CentOS7 sshd[5306]: Failed password for invalid user ladmin from 192.168.1.6 port 42674 ssh2AG3站長之家-易采站長站-Easck.Com

如何在 Linux 中阻止用戶組使用 SSH?AG3站長之家-易采站長站-Easck.Com

通過以下內容,我們可以禁用指定的組或多個組使用 ssh。AG3站長之家-易采站長站-Easck.Com

如果你想要禁用多個用戶組使用 ssh,那么你需要在添加用戶組時在同一行中使用空格來隔開他們。AG3站長之家-易采站長站-Easck.Com

為了達到目的只需要將下面的值追加到 /etc/ssh/sshd_config 文件中去。AG3站長之家-易采站長站-Easck.Com

# echo "DenyGroups 2g-admin" >> /etc/ssh/sshd_configAG3站長之家-易采站長站-Easck.Com

你可以運行下列命令再次檢查是否添加成功。AG3站長之家-易采站長站-Easck.Com

# # cat /etc/ssh/sshd_config | grep -i denygroups
DenyGroups 2g-admin
# getent group 2g-admin
2g-admin:x:1005:user1,user2,user3

這樣就行了, 現在只需要重啟 ssh 服務和見證奇跡了。AG3站長之家-易采站長站-Easck.Com

# systemctl restart sshd
或
# service restart sshd

是的 user1 不被允許登入系統,因為他是 2g-admin 用戶組中的一員。他屬于被禁用 ssh 的組中。AG3站長之家-易采站長站-Easck.Com

# ssh user1@192.168.1.4
user1@192.168.1.4's password: 
Permission denied, please try again.

輸出:AG3站長之家-易采站長站-Easck.Com

Mar 29 02:17:32 CentOS7 sshd[5400]: User user1 from 192.168.1.6 not allowed because a group is listed in DenyGroups Mar 29 02:17:32 CentOS7 sshd[5400]: input_userauth_request: invalid user user1 [preauth] Mar 29 02:17:38 CentOS7 unix_chkpwd[5402]: password check failed for user (user1) Mar 29 02:17:38 CentOS7 sshd[5400]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=192.168.1.6 user=user1 Mar 29 02:17:41 CentOS7 sshd[5400]: Failed password for invalid user user1 from 192.168.1.6 port 42710 ssh2AG3站長之家-易采站長站-Easck.Com

除了 2g-admin 用戶組之外的用戶都可以使用 ssh 登入系統。 例如,ladmin 等用戶就允許登入系統。AG3站長之家-易采站長站-Easck.Com

# ssh ladmin@192.168.1.4
ladmin@192.168.1.4's password: 
[ladmin@CentOS7 ~]$

輸出:AG3站長之家-易采站長站-Easck.Com

Mar 29 02:19:13 CentOS7 sshd[5432]: Accepted password for ladmin from 192.168.1.6 port 42716 ssh2 Mar 29 02:19:13 CentOS7 sshd[5432]: pam_unix(sshd:session): session opened for user ladmin by (uid=0) via: https://www.2daygeek.com/allow-deny-enable-disable-ssh-access-user-group-in-linux/AG3站長之家-易采站長站-Easck.Com

總結AG3站長之家-易采站長站-Easck.Com

到此這篇關于如何在 Linux 上為特定的用戶或用戶組啟用或禁用 SSH的文章就介紹到這了,更多相關linux 用戶或用戶組ssh內容請搜索我們以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持我們!AG3站長之家-易采站長站-Easck.Com

如有侵權,請聯系QQ:279390809 電話:15144810328

相關文章

  • Linux下用GHOST來做系統備份

    Linux下用GHOST來做系統備份

    在Windows系統下備份我們可以用GHOST工具軟件完成,Linux系統不能完全依賴于GHOST工具,一則是GHOST本身是有版權的軟件,二是GHOST只支持ext2、ext3文件系統的Linux分區,不支持reiserfs、xfs等
    2019-10-25
  • 給 FreeBSD 12.1 安裝 GNOME3 圖形界面

    給 FreeBSD 12.1 安裝 GNOME3 圖形界面

    FreeBSD是一個完全開放的、安全的系統,可以Do it yourself的系統。但是個人還是不喜歡呆板的命令行界面,所有就給 FreeBSD 12.1 安裝 GNOME3 圖形界面。 開始操作,啟動FreeBSD 12.1,以root身份
    2019-10-27
  • Ubuntu Studio一個不錯的操作系統

    Ubuntu Studio一個不錯的操作系統

    Ubuntu Studio 是一個基于 Ubuntu 而面向音頻、視頻及圖形愛好者的操作系統。本次推出的 Ubuntu Studio 為 7.04 版,目前僅支持 Intel i386 兼容的處理器。 Ubuntu Studio 從大量的開源多媒體創作程序
    2019-10-25
  • 最受歡迎的10款Linux免費游戲

    最受歡迎的10款Linux免費游戲

    圖為在Linux下運行的免費游戲America's Army 如果你認為 Linux下沒有什么好游戲的話,那就錯了!我們來看看Linux下最受歡迎的10款游戲吧,而且這些游戲都是完全免費的! # skyreal update(06-12
    2019-10-25
  • compiz fusion特效使用心得(附3D桌面圖)

    compiz fusion特效使用心得(附3D桌面圖)

    3D桌面圖 LINUX發行版就是好,當大多數人還在沉迷于那些什么風格圖標鳥玻璃效果甚至孜孜不倦津津樂道的時候,Linux的高手們已經悄悄為我們開啟了一個桌面系統3D的時代。 當我第一次
    2019-10-25
  • Ubuntu 下aMule 的安裝配置

    Ubuntu 下aMule 的安裝配置

    aMule 是一個類似于 eMule 的多平臺 P2P 客戶端程序。以下將簡略敘述 aMule 在 Ubuntu 中的安裝及配置 [High ID] 與 [KAD] 的過程。 安裝: sudo apt-get install amule sudo apt-get install amule-utils 如果需要
    2019-10-25
  • JMeter jp@gc - stepping thread group插件

    JMeter jp@gc - stepping thread group插件

    這是一個出單接口壓力測試的小例子,了解一下壓力測試最最基礎的基礎。出單接口是用來保險出單的,不需要在UI界面下一步下一步的出單,接口一調數據入庫完事~~~。再啰嗦一句接
    2019-10-27
  • Ubuntu 下使用K3B軟件刻錄光盤(圖)

    Ubuntu 下使用K3B軟件刻錄光盤(圖)

    不知大家會不會在Ubuntu下刻錄光盤呢?k3b是KDE環境下的一個CD/DVD刻錄軟件,有非常容易使用的界面,功能比較齊全。用起來感覺就象是win下的Nero一樣簡單自然,比ubuntu里原來的刻錄CD方式
    2019-10-25
色七七影院_香港三级台湾三级在线播放_男人放进女人阳道猛进猛出