linux 限制root用户SSH登录:
 
1、修改SSHD服务的配置文件/etc/ssh/sshd_config
   将#PermitRootLogin yes 改为PermitRootLogin no
2、重启sshd服务使配置生效
   /etc/rc.d/init.d/sshd restart
为了增强linux的安全性,应该限制只有wheel组的用户可以使用su命令切换到root和其他用户:
 
1、修改su命令的认证配置文件/etc/pam.d/su
 
   去掉以下两行前的#号注释
   #auth            sufficient      pam_wheel.so trust use_uid
   #auth            required        pam_wheel.so use_uid
2、创建一个普通用户,然后将这个用户加入到wheel组即可!以后就只有这个普通用户和root可以使用su命令了
   usermod -G 10 51hosting
   51hosting为创建的普通系统用户,10为wheel组的组ID
su命令使用简介:
  su  直接切换到root用户,但保持原用户的环境变量;

su - 切换到root用户,并使用root用户的环境变量;
 
  su -l test 切换到test用户,并使用test的环境变量;

从login方面来进行

1:Linux启动或禁止SSH root用户的登录

2:Linux限制SSH用户

其实这些东西就是修改一个系统的配置文件

  1. [root@rhsde ~]# vi /etc/ssh/sshd_config

我们可以查看

  1. #PermitRootLogin yes

把前面的#号去掉,yes修改为no即可

yes 就是可以使用SSH方式的root登录

no就是禁止使用SSH方式的root登录

  1. login as: root
  2. root@192.168.220.165's password:
  3. Access denied
  4. root@192.168.220.165's password:

另外如果需要限制SSH方式的用户登录 修改如下参数

  1. AllowUsers arcsde

arcsde是我操作系统的用户,如果没有用户可以手动添加AllowUsers

这样的话,只能arcsde登录了

其他用户登录不了了(oracle)

  1. login as: oracle
  2. oracle@192.168.220.165's password:
  3. Access denied
  4. oracle@192.168.220.165's password:

以上修改完配置文件,必须重新启动SSH服务才能生效

  1. [root@rhsde ~]# /etc/init.d/sshd restart
  2. Stopping sshd:                                             [  OK  ]
  3. Starting sshd:                                             [  OK  ]

可能会有人会问到如果我设置了,每次都是Access denied,有没有一些可以进行信息的提示,这肯定可以啊

我们可以修改如下文件

  1. [root@rhsde ~]# vi /etc/issue.net

然后添加如下信息

  1. ###############################################################
  2. #                    Welcome to redhatserver                                    #
  3. #          All connections are monitored and recorded                            #
  4. #  Disconnect IMMEDIATELY if you are not an authorized user!                    #
  5. #                       Please tel 400-819-2881
  6. ###############################################################

我们仍然需要修改sshd_config里面的参数

  1. Banner /etc/issue.net

后面对应的就是相关文件的路径,重启服务即可

然后我们测试一下

  1. login as: root
  2. Red Hat Enterprise Linux Server release 5.5 (Tikanga)
  3. Kernel \r on an \m
  4. ###############################################################
  5. #                    Welcome to redhatserver                                    #
  6. #          All connections are monitored and recorded
  7. #
  8. #  Disconnect IMMEDIATELY if you are not an authorized user!                    #
  9. #Please tel 400-819-2881
  10. ###############################################################
  11. root@192.168.220.165's password:

当我们输入root用户,系统就自动提示了。另外也可以在输入密码的时候提示,如果是这样的话,我们修改如下文件即可

  1. vi /etc/motd

Linux SSH 单点登录限制

有时候,为了防止一个SSH用户多次登录,即滥用资源,可以通过PAM来限制,达到SSH单点登录。

1.确保/etc/pam.d/sshd里添加了"pam_limits.so",Debian和Ubuntu默认情况下已经添加了哦。

>\# Set up user limits from /etc/security/limits.conf.
>session required pam_limits.so

2.在“/etc/security/limits.conf” 里添加“* - maxlogins 1”,意思是所有SSH用户的最大登录用户数都为1。

3.reboot

重启后,多次登录同一个用户就会提示“Too many logins for ”

linux 限制root SSH登陆和限制su的更多相关文章

  1. Linux系统下ssh登陆很慢的解决办法

    很多的Linux用户发现连接上Linux服务器在输入用户名之后还要再等一下才能输入密码,时间过长了,现在小白与大家分享一下如何解决ssh登陆问题的问题,希望对您有所帮助. 1.我们平时登陆Linux服 ...

  2. ECS Linux 服务器解除ssh登陆后被锁定或暂停输入输出的终端

    在使用SSH终端(如Xshell)登陆时,若不慎点击 Ctrl + S  按键,会导致终端很像被锁定,输入和输出都无响应. 这是由于操作系统的终端收到指令 Ctrl + S 后,会暂停终端输入输出的刷 ...

  3. linux修改root用户登陆密码

    如果不是以root用户登录的,请先切换到root用户下, 执行命令:su root 然后按提示输入root用户的密码. 英文系统: [root@localhost ~]# passwd Changin ...

  4. Ubuntu Linux启用root用户登录

    Ubuntu Linux有一个与众不同的特点,那就是初次使用时,你无法作为root来登录系统,为什么会这样?这就要从系统的安装说起.对于其他Linux系统来 说,一般在安装过程就设定root密码,这样 ...

  5. (转)Linux SSH配置和禁止Root远程登陆设置

    原文 一.修改vi /etc/ssh/sshd_config 文件 1.修改默认端口:默认Port为22,并且已经注释掉了:修改是把注释去掉,并修改成其它的端口. 2.禁止root用户远程登陆:修改P ...

  6. linux下在root用户登陆状态下,以指定用户运行脚本程序实现方式

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMcAAABKCAIAAACASdeXAAAEoUlEQVR4nO2dy7WlIBBFTYIoSIIkmD ...

  7. Linux三种SSH协议登陆方式

    在实际工作中遇到了三种不同SSH协议登陆Linux服务器的方式,由简单到复杂分别阐述:一.最简单也是最不安全的root账号密码登陆通过root账号+root密码登陆Linux服务器. 二.普通用户登陆 ...

  8. 关于deepin下安装ssh以后root用户登陆报错的解决

    最近刚刚接触到deepin,觉得,wow,除了mac,还有这么好看的非win系统,而且第测出那个Linux,宽容度很高,非常适合我这种比较喜欢折腾的人,于是下载了deepin15版本并将其当作虚拟机成 ...

  9. linux下开启SSH,并且允许root用户远程登录,允许无密码登录

    参考:http://blog.csdn.net/jia0511/article/details/8237698 1. 允许root用户远程登录 修改ssh服务配置文件 sudo vi /etc/ssh ...

随机推荐

  1. 概率论与数理统计图解.tex

    \documentclass[UTF8,a1paper,landscape]{ctexart} \usepackage{tikz} \usepackage{amsmath} \usepackage{a ...

  2. thinkphp标签

    1.volist标签 随后一条不一样的输出<volist name="pagehead" id="vo"> <if condition=&qu ...

  3. rpm---linux软件安装与管理

    linux的安装命令选项太多,整理一下,方便后期查找. 汇总: install: rpm -ivh 包全名 安装 upgrade: rpm -Uvh 包全名 升级 erase: rpm -e 包名 删 ...

  4. 【09-14】eclipse学习笔记

    eclipse安装class文件反编译插件jadClipse /** 1. 下载JadClipse的jar包 2. 下载Jad反编译器 3. 将JarClipse jar包放到eclipse plug ...

  5. @SuppressWarnings注解的用法

    一.前言 编码时我们总会发现如下变量未被使用的警告提示: 上述代码编译通过且可以运行,但每行前面的"感叹号"就严重阻碍了我们判断该行是否设置的断点了.这时我们可以在方法前添加 @S ...

  6. java基本知识小记(1)

    1.Java中的值传递 值传递意味着对于传给方法的每个参数都会制作一份副本然后将副本而不是原始值传递给方法并且通过参数的名进行引用. 注意:虽然传值机制对于所有参数类型都适用,但是他对对象类型的作用与 ...

  7. U盘安装Windows 7 + Ubuntu 14 双系统笔记

    第一个系统是Windows 7系统,现在采用U盘安装 Ubuntu 14,实现双系统,主要会用到3个软件: 1.DiskGenius - 磁盘修复.分区.调整分区工具,点击下载: 用这个工具先腾出一个 ...

  8. PHP的继承方法如何获取子类名?get_class() 和 get_called_class()

    PHP里的__CLASS__这类东西是静态绑定的,如果不在子类里重载的话,那么继承父类方法所得到的依旧是父类的名称,而不是子类的名称,比如: <?php class A { function _ ...

  9. Linux进程间通信(五):信号量 semget()、semop()、semctl()

    这篇文章将讲述别一种进程间通信的机制——信号量.注意请不要把它与之前所说的信号混淆起来,信号与信号量是不同的两种事物.有关信号的更多内容,可以阅读我的另一篇文章:Linux进程间通信 -- 信号.下面 ...

  10. git实践

    撤销提交 根据–soft –mixed –hard,会对working tree和index和HEAD进行重置: git reset –mixed:此为默认方式,不带任何参数的git reset,即时 ...