devliu1

关于个人服务器安全

  •  
  •   devliu1 · Aug 4, 2020 · 5569 views
    This topic created in 2283 days ago, the information mentioned may be changed or developed.

    暴露在公网上的个人服务器,怎么样才能提高安全性?

    目前的办法是 port knocking + 蜜罐 + vpn 。但是 使用 port knocking 如果忘记了关怎么办😂

    想到了本地的安全软件,可以做到发起或传入连接时通过 GUI 进行控制。 服务端有什么现成的系统或者 API,可以做到一个连接传入时,通过程序控制吗(比如发邮件,邮件附带一个 url 对服务器进行控制,允许当前 IP 连入)

    30 replies  •  2020-08-21 11:20:21 +08:00
    loading
    loading
    Aug 4, 2020 via Android❤️1
    1
    端口全关,只留 ssh 禁用密码登录,基本就差不多了吧。
    loading
    loading
    Aug 4, 2020 via Android
    2
    还有,别部署热门程序,例如帝国 cms,哈哈。
    devliu1
    devliu1
    OP
    Aug 4, 2020
    3
    @loading 嗯,基本的安全措施还是可以做的,主要是想避免被扫
    mikeguan
    mikeguan
    Aug 4, 2020 via Android❤️1
    4
    这个 port knocking 忘记关是什么意思? 这个不是一定时间后失效吗?是指错误的把端口扫描的 IP 加白了吗?这个好像也可以通过几个端口不同顺序来解决
    locoz
    locoz
    Aug 4, 2020 via Android❤️1
    5
    端口全关,用 zerotier 或者是直接搞个 VPN,通过隧道的方式连上去操作。
    opengps
    opengps
    Aug 4, 2020
    6
    白名单是个好东西
    noclin
    noclin
    Aug 4, 2020❤️1
    7
    @mikeguan 比如我使用一个 seq 调用 iptable 开放某个 IP,可以做到让它在一定时间之后再调用 iptable 关闭访问权限吗
    noclin
    noclin
    Aug 4, 2020
    8
    @mikeguan 看到过类似的方案,但是没有配置过
    ly4572615
    ly4572615
    Aug 4, 2020❤️1
    9
    改端口,关密码登录,denyhosts,有固定 ip 加个防火墙,差不多了
    devliu1
    devliu1
    OP
    Aug 4, 2020
    10
    @mikeguan 和#7 说的是一样的,我测试看看


    @opengps @ly4572615 但是问题在于需要通过一种方法动态修改白名单,和 /t/684494 说的差不多,他的做法是通过一台公网服务器主动请求修改白名单。能不能有人连接时产生一个 callback,通知用户进行添加到白名单这个操作,同时可以看到有人在尝试连接。
    updateing
    updateing
    Aug 4, 2020 via Android❤️1
    11
    @devliu1 如果是使用 ipset 做的 port knocking 的白名单,可以用 ipset 自带的 timeout 功能实现定时解除。
    devliu1
    devliu1
    OP
    Aug 4, 2020
    12
    @locoz 就是 VPN 之外再套一层,会不会很多余
    CallMeReznov
    CallMeReznov
    Aug 4, 2020❤️1
    13
    通过防火墙的 API 开放你需要访问的服务器端口
    前几年做游戏的时候被人 CC 就是这样的,为了要区分正常玩家与恶意攻击代理,正常的客户端请求那个地址后会才可以正常进入,有效的过滤了一批攻击者.
    CallMeReznov
    CallMeReznov
    Aug 4, 2020
    14
    jumpserver 或者 frp 也可以吧.
    love
    love
    Aug 4, 2020❤️2
    15
    放心,个人 VPS 就别安全强迫症了,基本的通用软件 ssh/mail/web 服务器软件不太能被爆(除非用了弱密码),要爆也轮不到你这种没价值的
    devliu1
    devliu1
    OP
    Aug 4, 2020
    16
    @CallMeReznov 根据上面大佬的回复,是可以通过 port knocking + iptable 做到的,frp 的话也可以使用 stcp+socks5 代理做,似乎性能有点低。

    不知道 #10 提到的能不能做到
    devliu1
    devliu1
    OP
    Aug 4, 2020
    17
    @love 也对啊 😄确实是强迫症
    locoz
    locoz
    Aug 4, 2020 via Android
    18
    @devliu1 #12 不是 VPN 外再套一层啊,zerotier 或 VPN,选一个😂。你现在有 VPN 就直接只留 VPN,其他端口全关就行了。
    locoz
    locoz
    Aug 4, 2020 via Android
    19
    或者更暴力一点,通过第三方服务通知你的服务器,让它主动连接你本地的 VPN 之类的建立连接,这样就一个端口都不用开了…
    flypei
    flypei
    Aug 4, 2020
    20
    我自己用的基本就是裸奔,只修改了 ssh 端口,其他的懒的搞。
    locoz
    locoz
    Aug 4, 2020 via Android
    21
    还有个直接点的办法,写个程序调用云厂商的 SDK 或防火墙开启你需要的端口,并把当前本地 IP 设为白名单,然后再加上关闭和移除白名单的操作,实现一键开关 hhh 。
    CallMeReznov
    CallMeReznov
    Aug 4, 2020
    22
    另外如果你是云平台,可以利用他们自己的防火墙
    比如阿里云,直接用 aliyuncli 工具控制安全组,要用的时候添加自己 IP 为白名单,就算不关闭也无所谓,总不可能攻击者会使用你的 IP 吧?
    xingyue
    xingyue
    Aug 4, 2020 via Android
    23
    @locoz 请问为什么要端口全关的呢,那些没用到的端口会引起什么问题吗?看到一楼也是全关这个观点,图方便安全组全开的我开始慌了~
    jilu171990
    jilu171990
    Aug 5, 2020❤️1
    24
    都已经是个人服务器了,如果是被攻破就会被抓的话,那最简单靠谱的就是开防火墙,只允许跳板主机访问 ssh 就结束了,其他的都是多余的举动。被攻破不会被抓的话就装个 fail2ban 就结束了
    devliu1
    devliu1
    OP
    Aug 5, 2020
    25
    @locoz
    @CallMeReznov 动态修改防火墙,iptable 和云服务器 API 其实都可以做到。我还是想找找能不能在建立连接时,产生一个 callback 给我的脚本,我的脚本再发送邮件,让我可以感知到有人在尝试建立连接,并远程修改白名单。攻击者使用我的 IP 确实也不现实。


    @flypei @xingyue 舍弃便利去换取一点点安全感吧


    @jilu171990 把 fail2ban 忘记了,那基本上是可以了



    总结一下,

    1. ipset + iptable 做 port knocking 。 或者通过另一个服务器以某种形式动态调用 iptable 或云服务器 API

    2. VPN / zerotier / frp (stcp + socks) / jumpserver

    3. fail2ban 监控
    takemeaway
    takemeaway
    Aug 5, 2020❤️1
    26
    你们这些都只能防君子,有个漏洞随便入侵。
    whileFalse
    whileFalse
    Aug 5, 2020❤️1
    27
    最简单的是在上面部署一个带密码的 ss server
    其他端口全用防火墙关掉
    devliu1
    devliu1
    OP
    Aug 5, 2020
    28
    @takemeaway 是的,这也是为什么我发帖提问
    xfelix
    xfelix
    Aug 19, 2020
    29
    黑客来搞你的机器也是要花时间的。所以把基础的防护做好,及时打安全补丁,避免被扫到就行。
    如果投入与产出不成比例,他们可没功夫跟你耗着。除非有其他原因被他们针对了,那再怎么防也不一定防得住。
    devliu1
    devliu1
    OP
    Aug 21, 2020
    30
    @xfelix 哈哈 确实是一个成本博弈的事情
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   4032 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 66ms · UTC 05:36 · PVG 13:36 · LAX 21:36 · JFK 00:36
    ♥ Do have faith in what you're doing.