Distributions
› Ubuntu
› Fedora
› CentOS
中文资源站
› 网易开源镜像站
WordTian
V2EX  ›  Linux

有人猜解 Linux 的 ssh 服务,你们是怎么处理的?

  •  
  •   WordTian · Oct 24, 2017 · 10136 views
    This topic created in 3299 days ago, the information mentioned may be changed or developed.
    最近有个人一直在猜解我的 ssh,五分钟猜一次,持续了快半个月了。
    虽然我知道他猜不出来,但是一直在日志里晃悠,强迫症受不了啊
    之前试过 /etc/hosts.deny,但是还是会进入 pam 验证过程后再拒绝
    有什么办法能针对 IP,直接拒绝访问的方法吗? iptables ?
    Supplement 1  ·  Oct 24, 2017
    下面回复出现的解决方法,整理如下:
    1.换端口(感觉作用不大,nmap 还是能扫出来)
    2.IP 登录白名单(如果换 IP 就坑了)
    3.登录方式换为公私钥(虽然安全性很高,但我还是喜欢帐密,可以用不同设备随时登录)
    4.tcp_wrappers (通过 pam 认证过程后才拒绝,感觉有点迟钝)
    5.iptables (针对某 IP 或 IP 段还是比较好用的)
    6.fail2ban (这个可以尝试下)
    7.port knocking (这个很 6,就是不知实际使用效果如何,可以试试)

    我倒是还一个思路:
    sshd 监听 127.0.0.1,这样外网就扫不到 sshd 的端口了
    服务器开着代理服务(比如$$,或 v2ray )
    然后通过代理,访问 127.0.0.1 登录 ssh
    但是有个问题是,sshd 绑定到 127.0.0.1 就会无法启动,有 dalao 知道是啥情况吗?
    Supplement 2  ·  Oct 25, 2017
    update:
    8.denyhosts (类似 fail2ban )
    9.在 ssh 端口上做蜜罐,反套路(思路清奇)
    10.ssh 多开,九假一真(脑洞真大)
    Supplement 3  ·  Nov 5, 2017
    update:
    11.集成 Google Authenticator 两步验证登录(这个也很不错的样子)
    69 replies  •  2017-11-04 10:31:36 +08:00
    opengps
    opengps
    Oct 24, 2017 via Android❤️2
    1
    换端口啊
    zlfzy
    zlfzy
    Oct 24, 2017
    2
    就是你那个加入 /etc/hosts.deny 就可以了,而且 tcp_wrappers 的优先级貌似高于 iptables,没必要再加入 iptables
    sagaxu
    sagaxu
    Oct 24, 2017❤️1
    3
    标准答案不是 fail2ban 吗?
    wxm4ever
    wxm4ever
    Oct 24, 2017
    4
    阿里云 ECS 不天天被人扫么
    isCyan
    isCyan
    Oct 24, 2017
    5
    装个 fail2ban 不用配置,默认就会帮你自动封
    clino
    clino
    Oct 24, 2017
    6
    fail2ban+1
    装上了不用配置直接就能防
    当然要更严格,比如更少的失败次数更长的封禁时间,可以自己改配置
    j4fun
    j4fun
    Oct 24, 2017
    7
    换个数字大一点的端口肿么样?或者改成秘钥登陆。。
    或者 iptables -t filter -d ip -j REJECT ?
    aalska
    aalska
    Oct 24, 2017❤️4
    8
    随便他扫。。。。。看着他从 0 次失败变成 50w 次失败 心情舒爽
    kmahyyg
    kmahyyg
    Oct 24, 2017 via Android
    9
    301 到 10GB.test
    type
    type
    Oct 24, 2017❤️1
    10
    使用 SSH KEY 来登陆,并且关闭密码登陆。
    就没人尝试你的 SSH 密码了。
    sagaxu
    sagaxu
    Oct 24, 2017
    11
    @zlfzy Changes since OpenSSH 6.6
    =========================

    Potentially-incompatible changes
    * sshd(8): Support for tcpwrappers/libwrap has been removed.
    WordTian
    WordTian
    OP
    Oct 24, 2017
    12
    @opengps 懒,不想换,换了我的手机电脑上的 ssh 配置都得改
    @zlfzy 我一直以为 iptables 的优先级更高 /doge
    @j4fun 端口已经是 5 位数字的了,密钥感觉不太方便
    @sagaxu @clino 回头试试
    @aalska 怎么说呢,其实不知道他在扫还好,发现了强迫症就忍不了
    est
    est
    Oct 24, 2017❤️11
    13
    把登陆成功的提示语改成:Permission denied, please try again.
    sagaxu
    sagaxu
    Oct 24, 2017
    14
    @WordTian iptables 的优先级更高,你理解无误
    likuku
    likuku
    Oct 24, 2017
    15
    @WordTian 不方便?比密钥更方便唯有空密码了。
    ferstar
    ferstar
    Oct 24, 2017
    16
    楼上 fail2ban 可破, 或者 iptables 也是美滋滋的
    https://ferstar.org/post/root/ssrbei-e-yi-sao-miao-shi-xu-yao-zuo-de-shi-qing
    fe619742721
    fe619742721
    Oct 24, 2017
    17
    @est 我看行。。。
    zjyl1994
    zjyl1994
    Oct 24, 2017
    18
    我端口都没换,把密码登录关掉,只允许 SSH 密钥登录,这样就行了
    zlfzy
    zlfzy
    Oct 24, 2017
    19
    @sagaxu 实测 openssh-6.6 版本 tcpwrappers 依然有效
    加入 /etc/hosts.deny 之后再连 ssh:
    “ ssh_exchange_identification: read: Connection reset by peer ”
    aalska
    aalska
    Oct 24, 2017
    20
    @WordTian 我也强迫症 我就是强迫一定要看到对面登陆失败
    sagaxu
    sagaxu
    Oct 24, 2017
    21
    @zlfzy Changes since OpenSSH 6.6,6.6 是最后一个能用的版本
    zlfzy
    zlfzy
    Oct 24, 2017
    22
    @sagaxu 噢噢,谢谢
    levenhdu
    levenhdu
    Oct 24, 2017
    23
    mark
    eslizn
    eslizn
    Oct 24, 2017
    24
    证书登录,如果对方能猜解出来,我也认了
    Phariel
    Phariel
    Oct 24, 2017
    25
    关闭密码登入,换私钥,改端口
    cye3s
    cye3s
    Oct 24, 2017
    26
    就算改密钥登陆,关密码,也还是有大把 ip 来尝试,顺便上了 fial2ban
    psirnull
    psirnull
    Oct 24, 2017
    27
    /sbin/iptables -A INPUT -s 1.1.1.0/24 -j DROP #网段
    /sbin/iptables -A INPUT -s 1.1.1.0 -j DROP #ip
    zpvip
    zpvip
    Oct 24, 2017❤️1
    28
    fail2ban + 最多三次尝试 + IP 白名单
    白名单里放另一台服务器的 IP

    SSH 改端口一般是第一件事,改的时候小心点,新的端口通了再删除旧的,不然连不上只能控制面板重装系统了。
    zpf124
    zpf124
    Oct 24, 2017
    29
    只允许 秘钥登录 +1。

    唯一有点方的就是 前段时间那个 xshell 被植入恶意后门那个,我当时更新到了中招版本。
    不过知道它上传秘钥不,反正目前那个服务器啥也不干,如果发现被人黑了,我再换秘钥。
    okletswin
    okletswin
    Oct 24, 2017
    30
    更换端口+秘钥登陆
    macfee
    macfee
    Oct 24, 2017
    31
    @zpvip console 呢?
    vipper
    vipper
    Oct 24, 2017
    32
    今天好像看到一篇有关 ssh 私钥泄露的新闻,不知真假,不过还是小心为好。

    另外,像这种扫你登录的可以直接 iptables ban 掉他

    之前我的一个论坛,一直有人在猜管理员密码,看日志 ip 不是固定的,前 3 位一样,但第四位会变,于是我就将那个段的 IP 全 ban 了,之后再也没有猜解的出现
    woshinide300yuan
    woshinide300yuan
    Oct 24, 2017
    33
    0.0 我是阿里云安全组仅允许固定 IP 访问 SSH 端口,不知道这样有用吗!
    zander
    zander
    Oct 24, 2017
    34
    /etc/ssh/sshd_config
    PasswordAuthentication no
    hjc4869
    hjc4869
    Oct 24, 2017
    35
    ssh 关掉
    yingtl
    yingtl
    Oct 24, 2017
    36
    有个脚本,如果检测到我登陆进去了,就把端口关上。没有登陆就开着端口。
    然后我长年保持登陆
    ArcticL
    ArcticL
    Oct 24, 2017
    37
    @yingtl 端口关了,怎么通信的?
    q397064399
    q397064399
    Oct 24, 2017
    38
    随便扫,你能扫到算我输
    sagaxu
    sagaxu
    Oct 24, 2017
    39
    @ArcticL port knocking,敲门敲对了才能 connect
    https://wiki.archlinux.org/index.php/Port_knocking
    ArcticL
    ArcticL
    Oct 24, 2017
    40
    @sagaxu 这个还挺好玩的
    srx1982
    srx1982
    Oct 24, 2017
    41
    @woshinide300yuan 万一你的 ip 变了。。。
    feast
    feast
    Oct 24, 2017
    42
    57880 123.183.209.135
    20925 58.242.83.26
    16902 60.18.229.201
    16878 58.242.83.35
    16271 123.183.209.136
    12324 59.63.166.83
    11911 42.7.26.49
    10259 121.18.238.106
    9554 221.194.44.212
    8816 218.65.30.190
    8757 59.45.175.96
    8605 221.194.47.242
    8538 121.18.238.28
    8455 123.244.9.47
    8378 59.45.175.94
    8373 121.18.238.119
    8351 59.45.175.95
    8209 221.194.47.224
    8130 59.45.175.98
    8050 218.87.109.150
    7903 59.45.175.67
    7773 121.18.238.123
    7673 221.194.47.236
    7417 221.194.47.233

    48757 218.65.30.124
    39393 123.244.9.46
    38337 61.177.172.66
    26713 58.242.83.14
    21392 42.7.26.15
    19163 218.65.30.126
    10409 103.242.58.237
    9516 218.65.30.30
    8673 121.18.238.106
    8469 42.7.26.60
    7960 221.194.47.236
    7947 61.177.172.60
    7897 59.45.175.11
    7712 58.57.65.112
    7463 59.45.175.96
    7440 121.18.238.125
    7425 121.18.238.123
    7361 221.194.47.242
    7193 221.194.47.233
    6772 221.194.44.212
    6696 121.18.238.119
    6659 59.45.175.95
    6635 59.45.175.67
    6109 121.18.238.28

    开机半个月的 JJ
    ryd994
    ryd994
    Oct 24, 2017 via Android
    43
    禁止密码登录,随便扫随便试
    真要在外面的话用跳板机进去
    wdlth
    wdlth
    Oct 24, 2017
    44
    我限制了只能深圳电信连进来……
    timothyye
    timothyye
    Oct 24, 2017 via Android
    45
    只允许证书登录,密码登录的不安全!
    Neveroldmilk
    Neveroldmilk
    Oct 24, 2017
    46
    前面有人说过了,关闭密码验证,使用 key 验证。
    iceheart
    iceheart
    Oct 24, 2017 via Android
    47
    我只 listen 127.0.0.1,就没人能猜了
    BFDZ
    BFDZ
    Oct 24, 2017 via Android
    48
    @WordTian 我都是先换端口,禁止密码开密钥登录,看日志
    WordTian
    WordTian
    OP
    Oct 24, 2017
    49
    @iceheart 能监听 127.0.0.1 ?我改成 127.0.0.1 之后 ssh 就没法启动啊
    Ultraman
    Ultraman
    Oct 24, 2017
    50
    随他猜 百十位的随机字符 猜得出来我也认了
    kiwi95
    kiwi95
    Oct 24, 2017
    51
    1. 换端口
    2. 禁止密码登陆
    3. 禁止 root 用户登陆

    三个全了基本就问题了
    intsilence
    intsilence
    Oct 24, 2017
    52
    3 楼就有标准答案了呀,其他方法都会给自己带来不便
    WordTian
    WordTian
    OP
    Oct 24, 2017 via Android
    53
    @intsilence 想看看大家遇到这种情况都是怎么处理的,集思广益嘛
    tinkerer
    tinkerer
    Oct 24, 2017
    54
    fail2ban
    bao3
    bao3
    Oct 24, 2017
    55
    fail2ban + ssh key
    aaronzjw
    aaronzjw
    Oct 24, 2017
    56
    @est 机智
    ywgx
    ywgx
    Oct 24, 2017 via Android
    57
    https://xabcloud.com 强安利 😄
    pynix
    pynix
    Oct 25, 2017
    58
    采用公钥验证。。。。
    twl007
    twl007
    Oct 25, 2017 via iPhone
    59
    denyhosts
    pony279
    pony279
    Oct 25, 2017
    60
    搞个 docker 镜像给他登陆,把容器里面的网络关掉,记录信息,看能不能反套路一波
    qzy168
    qzy168
    Oct 25, 2017
    61
    换端口+证书登录。
    0871087123
    0871087123
    Oct 25, 2017
    62
    找个 ssh 的蜜罐,开个十几个的,真的 ssh 端口只有自己知道,不 OK ?
    寻龙点穴之 ssh 七星疑冢(滑稽)
    flynaj
    flynaj
    Oct 25, 2017 via Android
    63
    如果是那种无脑机器扫描,换端口就行了,如果是针对性的用用密匙
    bigpigeon
    bigpigeon
    Oct 25, 2017
    64
    改证书登录,在 /etc/ssh/sshd_conf 把密码登录 false 掉,随他怎么猜
    woshinide300yuan
    woshinide300yuan
    Oct 25, 2017
    65
    @srx1982 主要我的情况是不重启路由就 IP 不变,要变了再去阿里云安全组里更新一下喽。嘻嘻~~~~
    nyaruko
    nyaruko
    Oct 25, 2017
    66
    之前也有过密码被扫描的困扰。后来只允许密钥登录。但加密钥又实在太麻烦。现在用了 Google 验证器做两步验证,有 key 可以免密码,没 key 需要 Google 验证和用户密码
    nyaruko
    nyaruko
    Oct 25, 2017
    67
    好吧没注意审题。这种情况只能蜜罐了。
    panzhc
    panzhc
    Oct 30, 2017
    68
    集成 Google Authenticator 双因子登录
    testcaoy7
    testcaoy7
    Nov 4, 2017
    69
    头一次听说 port knocking,真的很 6 !正在研究中。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   3030 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 174ms · UTC 11:43 · PVG 19:43 · LAX 03:43 · JFK 06:43
    ♥ Do have faith in what you're doing.