我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Linux 为特定的用户或用户组启用或禁用 SSH的方法

短信预约 信息系统项目管理师 报名、考试、查分时间动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Linux 为特定的用户或用户组启用或禁用 SSH的方法

由于你的公司标准规定,你可能只能允许部分人访问 Linux 系统。或者你可能只能够允许几个用户组中的用户访问 Linux 系统。那么如何实现这样的要求呢?最好的方法是什么呢?如何使用一个简单的方法去实现呢?

是的,我们会有很多种方法去实现它。但是我们应该使用简单轻松的方法。为了简单轻松的完成目的,我们可以通过对 /etc/ssh/sshd_config 文件做必要的修改来实现。在这篇文章中我们将会向你展示实现要求的详细步骤。

为什么我们要这样做呢?是出于安全的原因。你可以访问这个链接来获取更多关于 openSSH 的使用方法。

什么是 SSH ?

openssh 全称为 OpenBSD Secure Shell。Secure Shell(ssh)是一个自由开源的网络工具,它能让我们在一个不安全的网络中通过使用 Secure Shell(SSH)协议来安全访问远程主机。

它采用了客户端-服务器架构(C/S),拥有用户身份认证、加密、在计算机和隧道之间传输文件等功能。

我们也可以用 telnet 或 rcp 等传统工具来完成,但是这些工具都不安全,因为它们在执行任何动作时都会使用明文来传输密码。

如何在 Linux 中允许用户使用 SSH?

通过以下内容,我们可以为指定的用户或用户列表启用 ssh 访问。如果你想要允许多个用户,那么你可以在添加用户时在同一行中用空格来隔开他们。

为了达到目的只需要将下面的值追加到 /etc/ssh/sshd_config 文件中去。 在这个例子中, 我们将会允许用户 user3 使用 ssh。

# echo "AllowUsers user3" >> /etc/ssh/sshd_config

你可以运行下列命令再次检查是否添加成功。

# cat /etc/ssh/sshd_config | grep -i allowusers AllowUsers user3

这样就行了, 现在只需要重启 ssh 服务和见证奇迹了。(下面这两条命令效果相同, 请根据你的服务管理方式选择一条执行即可)


# systemctl restart sshd
或
# service restart sshd

接下来很简单,只需打开一个新的终端或者会话尝试用不同的用户身份访问 Linux 系统。是的,这里 user2 用户是不被允许使用 SSH 登录的并且会得到如下所示的错误信息。


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

输出:

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 ssh2

与此同时用户 user3 被允许登入系统因为他在被允许的用户列表中。


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

输出:

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)

如何在 Linux 中阻止用户使用 SSH ?

通过以下内容,我们可以配置指定的用户或用户列表禁用 ssh。如果你想要禁用多个用户,那么你可以在添加用户时在同一行中用空格来隔开他们。

为了达到目的只需要将以下值追加到 /etc/ssh/sshd_config 文件中去。 在这个例子中, 我们将禁用用户 user1 使用 ssh。

# echo "DenyUsers user1" >> /etc/ssh/sshd_config

你可以运行下列命令再次检查是否添加成功。


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

这样就行了, 现在只需要重启 ssh 服务和见证奇迹了。


# systemctl restart sshd
活
# service restart sshd

接下来很简单,只需打开一个新的终端或者会话,尝试使用被禁用的用户身份被访问 Linux 系统。是的,这里 user1 用户在禁用名单中。所以,当你尝试登录时,你将会得到如下所示的错误信息。


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

输出:

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 ssh2

如何在 Linux 中允许用户组使用 SSH?

通过以下内容,我们可以允许一个指定的组或多个组使用 ssh。

如果你想要允许多个组使用 ssh 那么你在添加用户组时需要在同一行中使用空格来隔开他们。

为了达到目的只需将以下值追加到 /etc/ssh/sshd_config 文件中去。在这个例子中,我们将允许 2g-admin 组使用 ssh。

# echo "AllowGroups 2g-admin" >> /etc/ssh/sshd_config

你可以运行下列命令再次检查是否添加成功。


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

运行下列命令查看属于该用户组的用户有哪些。


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

这样就行了, 现在只需要重启 ssh 服务和见证奇迹了。


# systemctl restart sshd
或
# service restart sshd

是的, user1 被允许登入系统因为用户 user1 属于 2g-admin 组。


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

输出:

Mar 29 02:10:21 CentOS7 sshd[5165]: Accepted password for user1 from 192.168.1.6 port 42640 ssh2
Mar 29 02:10:22 CentOS7 sshd[5165]: pam_unix(sshd:session): session opened for user user1 by (uid=0)

是的, user2 被允许登入系统因为用户 user2 同样属于 2g-admin 组。


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

输出:

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)

当你尝试使用其他不在被允许的组中的用户去登入系统时, 你将会得到如下所示的错误信息。

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

输出:

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 ssh2

如何在 Linux 中阻止用户组使用 SSH?

通过以下内容,我们可以禁用指定的组或多个组使用 ssh。

如果你想要禁用多个用户组使用 ssh,那么你需要在添加用户组时在同一行中使用空格来隔开他们。

为了达到目的只需要将下面的值追加到 /etc/ssh/sshd_config 文件中去。

# echo "DenyGroups 2g-admin" >> /etc/ssh/sshd_config

你可以运行下列命令再次检查是否添加成功。


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

这样就行了, 现在只需要重启 ssh 服务和见证奇迹了。


# systemctl restart sshd
或
# service restart sshd

是的 user1 不被允许登入系统,因为他是 2g-admin 用户组中的一员。他属于被禁用 ssh 的组中。


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

输出:

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 ssh2

除了 2g-admin 用户组之外的用户都可以使用 ssh 登入系统。 例如,ladmin 等用户就允许登入系统。


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

输出:

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/

总结

到此这篇关于如何在 Linux 上为特定的用户或用户组启用或禁用 SSH的文章就介绍到这了,更多相关linux 用户或用户组ssh内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Linux 为特定的用户或用户组启用或禁用 SSH的方法

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Linux 为特定的用户或用户组启用或禁用 SSH的方法

由于你的公司标准规定,你可能只能允许部分人访问 Linux 系统。或者你可能只能够允许几个用户组中的用户访问 Linux 系统。那么如何实现这样的要求呢?最好的方法是什么呢?如何使用一个简单的方法去实现呢? 是的,我们会有很多种方法去实现它
2022-06-03

在Linux上怎么为特定的用户或用户组启用或禁用SSH

本篇内容介绍了“在Linux上怎么为特定的用户或用户组启用或禁用SSH”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!什么是 SSH ?ope
2023-06-16

Win10 启用或添加本地账户的方法

在我们安装 Windows10 系统的过程中,需要通过自己在微软注册的账号来激活系统,所以当安装完成以后,系统会默认用我们在微软的账号来作来作为系统登录用户。由于微软账号的密码要求复杂,使得每次登录时都觉得很麻烦。这里简单介绍下怎么 Win
2023-06-11

使用 chkconfig 和 systemctl 命令启用或禁用 Linux 服务的方法

对于 linux 管理员来说这是一个重要(美妙)的话题,所以每个人都必须知道,并练习怎样才能更高效的使用它们。 在 Linux 中,无论何时当你安装任何带有服务和守护进程的包,系统默认会把这些服务的初始化及 systemd 脚本添加
2022-06-04

WordPress禁止特定用户修改密码的方法

本文实例讲述了WordPress禁止特定用户修改密码的方法。分享给大家供大家参考。具体方法如下: 有时我们希望有些用户不能修改密码,而有些用户是可以修改密码的,这里就来给大家介绍关于WordPress禁止特定用户修改密码方法. 方法很简单,
2022-06-12

vsftpd用户禁止ssh登陆的实现方法

前言 vsftp 是一款使用方便,且安全的ftp服务器端的软件。可以使用系统用户登陆,也可以使用虚拟用户登陆,进行登陆。 如果使用系统用户登陆的时候,默认情况,该用户可以登陆到系统中。意思是,可以登陆ftp服务器,也可以登陆到系统的。这样有
2022-06-04

linux删除用户组和inux添加用户组的方法

本篇内容介绍了“linux删除用户组和inux添加用户组的方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1、建用户:代码如下:addus
2023-06-13

linux查看所有用户和查看用户组的方法(修改用户组)

1、linux里查看所有用户 (1)在终端里.其实只需要查看 /etc/passwd文件就行了.(2)看第三个参数:500以上的,就是后面建的用户了.其它则为系统的用户. 或者用cat /etc/passwd |cut -f 1 -d :
2022-06-04

oracle 创建用户指定表空间报错ORA-28010: 无法使外部用户, 全局用户或没有验证方法的用户失效

我在plsql里复制了system这个用户的sql我连接了服务器上的oracle之后想执行sql创建一个用户并指定它的表空间结果在navicat里报了这个错误,我以为是system用户的问题,然后我就用sys用户登录结果,还是报这个错误我就连接远程服务器用sq
oracle 创建用户指定表空间报错ORA-28010: 无法使外部用户, 全局用户或没有验证方法的用户失效
2016-01-15

组策略禁用添加或删除程序的方法

“添加或删除程序”功能用来帮助用户安装或卸载第三方软件和Windows系统组件,为了阻止非法用户在服务器上安装或卸载http://www.cppcns.com程序,可以通过编辑组策略禁用这一功能。1、按住win键+R
2023-05-26

vista组策略禁用添加或删除程序的方法

本篇文章为大家展示了vista组策略禁用添加或删除程序的方法,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。“添加或删除程序”功能用来帮助用户安装或卸载第三方软件和Windows系统组件,为了阻止非法
2023-06-14

计算机中管理员账户被禁用的启用方法

这篇文章主要介绍计算机中管理员账户被禁用的启用方法,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!启用管理员账户的方法:首先开机自检后按F8,进入安全模式,以管理员身份登录;然后打开计算机管理,依次展开系统工具、本地用
2023-06-14

Linux修改用户所属组的方法

linux修改用户所属组 1、设置某个用户所在组usermod -g 用户组 用户名注:-g|--gid,修改用户的gid,该组一定存在 2、把用户添加进入某个组(s)usermod -a -G 用户组 用户名注: -a|--append,
2022-06-04

Linux用户组管理的方法有哪些

今天小编给大家分享一下Linux用户组管理的方法有哪些的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。1、增加一个新的用户组使
2023-06-27

Linux 中锁定和解锁用户帐户的三种方法

如果你已经在你的组织中实施了某种密码策略,你无需看这篇文章了。但是在这种情况下,如果你给账户设置了 24 小时的锁定期,你需要手动解锁用户帐户。 本教程将帮助你在 linux 中手动锁定和解锁用户帐户。 这可以通过三种方式使用以下两个 Li
2022-06-04

Linux禁止普通用户su至root的解决方法

一、概述 为禁止普通用户su至root,需要分别修改/etc/pam.d/su和/etc/login.defs两个配置文件。 二、详细配置 (1)去除/etc/pam.d/su文件中如下行的注释:#auth required
2022-06-04

启用或隐藏win7的administrator账户的方法(获得win7最高管理员权限)

安装或初始化Windows7或vista的时候,系统让你输入管理员帐户名称。如设置xxxx用户名,并设置了密码。这个xxxx帐户是administrator组的用户。但为什么很多文件无法访问呢?很多软件没法用管理员账户修改?还有许多文件无法
2023-06-04

Linux用户行为分析的方法是什么

这篇“Linux用户行为分析的方法是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Linux用户行为分析的方法是什么”文
2023-06-27

Linux系统下禁止非WHEEL用户使用SU命命的实现方法

本篇内容介绍了“Linux系统下禁止非WHEEL用户使用SU命命的实现方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!  通常情况下,一般
2023-06-13

编程热搜

目录