zoukankan      html  css  js  c++  java
  • Linux禁用root账户ssh登录

    前言

    今天登录服务器的时候,控制台输出如下信息

    There were 48990 failed login attempts since the last successful login. 
    Last login: Thu Sep 26 14:01:34 2018 from xx.xxx.xxx.xx
    

    意识不对,可能是服务器被攻击了,网上查了查,发现很多人遇到这样的问题

    其他网友的说法:
    你服务器 IP 在那儿,那 SSH 开在 TCP 22 上谁都能连,连上了谁都能输密码,密码错了就在系统里留下一条记录。
    要么是被(无差别地)扫到了,要么是有人在盯着你。只说 SSH 登陆这事,如果你关闭密码登陆(或者密码足够健壮),那有个就算有一百万个猴子在试你的密码,你也完全不用担心的。

    解决方法

    关闭root用户的ssh登录

    1. 使用root账户登录系统,添加一个普通账户例如test,并为其设置密码

    useradd test 
    passwd test
    

    2. 修改配置文件

    编辑配置文件/etc/ssh/sshd_config修改PermitRootLogin 后面的yesno,并且去掉前面的注释符,同时可以限制失败次数
    注意: 这个失败次数是对所有用户都起作用的。

    #LoginGraceTime 2m
    PermitRootLogin no
    #StrictModes yes
    MaxAuthTries 3
    #MaxSessions 10
    

    3. 重启sshd服务

    systemctl restart sshd.service
    

    此时再用root用户登录,此时再用root用户登录,如果不能登录则代表配置成功。如果需要使用root权限,可以使用su或者sudo进行切换。

    注意:禁用root用户后使用sftp时可能出现登录不了的问题,目前还没找到解决办法

  • 相关阅读:
    Zepto结合Swiper的选项卡
    Angular选项卡
    创建简单的node服务器
    封装ajax
    JQuery和html+css实现鼠标点击放烟花
    js实现螺旋纹理特效
    Angular入门
    Angular JS例子 ng-repeat遍历输出
    Angular 基础教程(1)
    PHP数组
  • 原文地址:https://www.cnblogs.com/wuotto/p/9707030.html
Copyright © 2011-2022 走看看