linux系统禁止root用户通过ssh登录及ssh的访问控制
Linux系统默认情况下,是可以通过ssh以root权限登录的。但出于安全考虑,这样的权限是不合适的,因为黑客可能通过暴力破解你的root密码,然后进入你的系统,oh,damn it.....
同样是出于安全性考虑,我们在日常使用linux系统时,一般是通过普通用户来进行操作,在某些操作需要root权限时,通过su - 命令,或者sudo命名获取root权限进行操作,而不是一直以root用户在系统中横冲直撞,因为说不定什么时候你手一抖,就进行了一些危险性的操作。
那么如何禁止以root通过ssh登录到系统呢?
是否允许root用户通过ssh登录,是通过操作sshd_config配置文件来实现的。当一个ssh连接建立时,操作系统会检查相关文件的配置信息,从而决定是否接受该连接。
因此,为禁止root用户通过ssh登录,我们先找到 /etc/ssh/sshd_config文件,通过编辑器打开该文件。比如,通过vim打开该文件:
# vi /etc/ssh/sshd_config
在文件中找到下面一行文字:
#PermitRootLogin no
去掉该行前面的#号,使其成为下面这样:
PermitRootLogin no
接下来,在shell中输入以下命令来重启ssh服务
# /etc/init.d/sshd restart
接下来你再试图以root登录系统时,就会出现“拒绝访问”的错误提示信息:
login as: root
Access denied
root@172.31.41.51's password:
好的,现在我们可以通过普通用户登入系统,如需要root权限相关的操作,可以通过su -命令切换到root用户,如下所示:
login as: tecmint
Access denied
tecmint@172.16.25.126's password:
Last login: Tue Oct 16 17:37:56 2012 from 172.16.25.125
[tecmint@tecmint ~]$ su -
Password:
[root@tecmint ~]#
同样的道理,如果想要运行通过root用户的ssh登录,我们只要将开始的改变改回去就行,即将 /etc/ssh/sshd_config文件中的行
PermitRootLogin no
前面加上#,变成如下并保存。
#PermitRootLogin no
再通过以下命令重启ssh服务
# /etc/init.d/sshd restart
如果你的系统里用户众多,想允许一部分用户通过ssh登录,而其他用户则禁止通过ssh登录。你可以这样做:
首先打开文件/etc/ssh/sshd_config
# vi /etc/ssh/sshd_config
然后在文件的末尾加上这样一行文字,其中tecmint、sheena即为允许通过ssh登录的用户。
AllowUsers tecmint sheena
译者:Viidiot 微信公众号:linux-code
linux系统禁止root用户通过ssh登录及ssh的访问控制的更多相关文章
- 【Hadoop系列】linux下 root用户免密码登录远程主机 ssh
SSH原理:[Hadoop系列]linux SSH原理解析 操作环境: CentOS 6.5 操作对象: 用户A主机和远程主机B 正文部分:斜体加粗代表linux指令. linux下 非root用户免 ...
- Linux系统重置root用户密码
Linux系统重置root用户密码 作者:Eric 微信:loveoracle11g 查看系统版本是不是RHEL7 [root@zhouwanchun ~]# cat /etc/redhat-rele ...
- 记一次root用户在本地登录及SSH连接均遭遇permission denied的问题排查经过
某日一位老师反映,机房的6号节点无法登录了.一开始以为是为节点防火墙配置IP白名单时忘记了加进去,但随后发现此节点并未进行白名单配置,密码也一直未有变更,于是在自己的电脑上连接,发现终端里很快显示出了 ...
- Linux设置以root用户开机自动登录桌面
目录 Ubuntu 18.04系统下设置 Redhat7.6系统下设置 Ubuntu 18.04系统下设置 1. 允许使用root用户登录桌面 Ubuntu默认不允许使用root用户登录桌面的, ...
- AWS EC2实例Linux系统创建root用户并更改为root用户登录
对于刚创建AWS EC2实例,或者经常使用AWS 实例的小伙伴们来说,刚创建的EC2实例是没有ROOT权限的,因此不能直接使用ROOT用户去登陆实例,也无法获取到root权限.一般情况下,EC2实例默 ...
- Linux系统非root用户安装perl模块
非root权限安装perl 在使用Linux或是unix时,perl是一个非常有用的脚本的语言. 关于perl的模块安装,网上也有很多介绍,一方面可以通过不同套件自带的软件安装工具安装,一方面可以通过 ...
- linux系统非ROOT用户80端口不能启动tomcat问题的变通办法——通过Iptables端口转发
2010-07-17 13:21:42 org.apache.tomcat.util.digester.SetPropertiesRule begin 警告: [SetPropertiesRule]{ ...
- Linux系统禁止root账号远程登录
修改配置文件/etc/ssh/sshd_config,去掉PermitRootLogin前的注释,修改值为no,然后重启sshd服务即可 #LoginGraceTime 2m PermitRootLo ...
- linux系统下root用户和普通用户的时区不一致
1. 发现这个问题是在root下执行 date -R 和 普通用户下执行 date -R,发现时区不一致 2. 在一些linux机器下,发现是一致的 3. 什么原因呢?找了半天,最后发现 时区一致的机 ...
随机推荐
- SPRING IN ACTION 第4版笔记-第四章ASPECT-ORIENTED SPRING-009-带参数的ADVICE2
一. 情景:有个魔术师会读心术,常人一想一事物他就能读到.以魔术师为切面织入常人的内心. 二. 1. // <start id="mindreader_java" /> ...
- linux下查看防火墙当前状态,开启关闭等
从配置菜单关闭防火墙是不起作用的,索性在安装的时候就不要装防火墙 查看防火墙状态: /etc/init.d/iptables status 暂时关闭防火墙: /etc/init.d/iptables ...
- oprofile使用方法
安装oprofile,然后加载内核模块.#modprobe oprofile,模块加载后开始使用oprofile. 1. 首先设置监视内核,使用debuginfo提供的内核,/boot下面的内核无法使 ...
- spring junit class path resource [ /com/config/spring-core.xml] cannot be opened because it does not exist
正确写法应该如下: @RunWith(SpringJUnit4ClassRunner.class) //@ContextConfiguration(locations="classpath: ...
- 2016年中国500强利润率最高的公司,中国500强最赚钱的40家公司,ROE最高的公司
2016年中国500强利润率最高的公司 排名 公司名称 利润率 62 阿里巴巴集团控股有限公司 73.09% 87 百度股份有限公司 50.71% 195 国信证券股份有限公司 47.87% ...
- poj3280Cheapest Palindrome(记忆化)
链接 真的1A了.. 一开始想复杂了 想着补全再删 没想好 后来想到递归 大的回文串是由小的推过来的 一直递归下去 对于当前的i,j可以选择保留或者删除 选个最小的 #include <iost ...
- BZOJ_3282_Tree_(LCT)
描述 http://www.lydsy.com/JudgeOnline/problem.php?id=3282 给出n个点以及权值,四种操作: 0.求x,y路径上的点权值的异或和. 1.连接x,y. ...
- 转自作者:phylips@bmy
差分约束系统 2008-11-28 20:53:25| 分类: 算法与acm|举报|字号 订阅 出处:http://duanple.blog.163.com/blog/static/7097 ...
- [转] 网络流算法--Ford-Fulkerson方法及其多种实现
网络流 转载自:http://www.cnblogs.com/luweiseu/archive/2012/07/14/2591573.html 在上一章中我们讨论的主题是图中顶点之间的最短路径,例如公 ...
- Android学习之路——简易版微信为例(一)
这是“Android学习之路”系列文章的开篇,可能会让大家有些失望——这篇文章中我们不介绍简易版微信的实现(不过不是标题党哦,我会在后续博文中一步步实现这个应用程序的).这里主要是和广大园友们聊聊一个 ...