V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
COW
V2EX  ›  宽带症候群

问一个 ipv6 远程访问家里电脑的问题?

  •  
  •   COW · 79 天前 · 2540 次点击
    这是一个创建于 79 天前的主题,其中的信息可能已经有所发展或是发生改变。
    背景是这样的,我家里有一个 Windows 台式机(光猫桥接路由器,有公网的 ipv6 ),安装了一个 OpenSSH 服务,台式机里面的 Vmware WS 还开了几台虚拟机。

    我现在需求非常简单,所以不想太复杂,就是用另外一台笔记本,手机热点上网,可以直接 ssh ipv6 公网地址访问到家里的台式机上。

    但这里有几个问题。
    1. 直接暴露 22 端口,即使 ssh 采用密钥登录方式是不是也不够安全?套一个 openvpn 可以解决安全问题么,或者有没有更简单的方法。
    2. 由于台式机上那个公网 ipv6 的地址会动态变化,弄个聊天机器人或者邮件定时提醒是个好的方案么?
    第 1 条附言  ·  77 天前
    补充下,我打算继续用密钥登录的方式,由于密钥有限制重试次数,安全性还算 ok 吧,另外今天我花了 180 块,弄了个 10 年阿里云的域名,打算用 ddns-go 解决 ipv6 动态变更的问题。

    现在有个问题,Powershell 获取以太网卡上的 ipv6 太多了,但是实际能用的就一个,这么多 IPv6 啊,怎么区分哪个是能用的。

    类似这样:

    以太网适配器 以太网:
    IPv6 地址:240e:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx (首选)
    IPv6 地址:240e:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx (首选)
    IPv6 地址:240e:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx (首选)
    临时 IPv6 地址: 240e:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx(首选)
    第 2 条附言  ·  77 天前
    已经找 gpt 解决了,Windows 下的 ipconfig 命令输出太垃了,换了下面这个命令就好了(仅适用于 SLAAC )。

    Get-NetIPAddress -InterfaceAlias "以太网" | Where-Object {$_.AddressFamily -eq "IPv6" -and $_.PrefixOrigin -eq "RouterAdvertisement" -and $_.SuffixOrigin -eq "Link" } | Select-Object -ExpandProperty IPAddress
    40 条回复    2024-10-14 09:09:36 +08:00
    wheat0r
        1
    wheat0r  
       79 天前   ❤️ 1
    1 、密钥对认证方式确保了认证过程的安全,但是如果 SSH 有一个漏洞可以绕过认证过程,什么认证方式都没有意义。
    2 、如果不希望用 ddns ,用类似 ipify 的东西获取地址发提醒也不难实现。
    wnpllrzodiac
        2
    wnpllrzodiac  
       79 天前 via Android
    ssh 直接暴露,等着被黑吧
    jtshs256
        3
    jtshs256  
       79 天前 via iPhone
    这种需求的话套 cf tunnel 吧
    tool2dx
        4
    tool2dx  
       79 天前
    @wnpllrzodiac

    1. ipv6 only 的机器,基本上扫不到的。
    2. openssh 那么多年下来,没什么很大漏洞的。
    z7356995
        5
    z7356995  
       79 天前 via Android   ❤️ 1
    ssh 用密钥验证的话足够安全,世界上那么多 vps 都是 ssh 登录操作的,不安全到处放马了,我是 80 块钱买个 10 年的 8 位数.xyz 的域名,然后用 cloudflare 解析,用 ddns-go 自动更新 ipv6 地址, 这样子不用复制粘贴,记住自己的域名就好了
    z7356995
        6
    z7356995  
       79 天前 via Android   ❤️ 1
    我的是 nas ,出门在外,随时可以手机看家里 nas 上爱情动作片
    Gotchaaa
        7
    Gotchaaa  
       79 天前
    @z7356995 #5 这个价格一直都有吗,如果是的话,是哪个平台?
    COW
        8
    COW  
    OP
       79 天前
    @z7356995 在哪里买的域名?
    wktrf
        9
    wktrf  
       79 天前
    组一个虚拟局域网感觉安全一些,防火墙只放行虚拟局域网的连接端口入站。ipv6 地址就定时检查然后调用域名解析商的 API 更新某个子域名的记录,如果感觉不安全可以加密地址放在某个子域名的 TXT 记录里,用的时候再解密。

    话说有大佬知道怎么扫描某个域名下所有记录的内容吗?不过感觉就算把 ipv6 地址放在某个域名的记录里也没啥问题吧,把防火墙搞好就可以了。
    Greendays
        10
    Greendays  
       79 天前
    可以用 zerotier ,缺点是用的时候必须在客户端笔记本那边启动一个程序。这个方案应该是安全的。
    kenneth104
        11
    kenneth104  
       79 天前
    支持 1 楼
    Greendays
        12
    Greendays  
       79 天前
    如果直接暴露 22 端口用 SSH 登录的话,其实也没太大风险。注意要禁止 root 用户远程登录就可以,然后普通用户给一个复杂的密码,基本就是安全的。
    COW
        13
    COW  
    OP
       79 天前
    @jtshs256 这个之前听说过,连接质量会不会有差啊。
    0xlamlados
        14
    0xlamlados  
       79 天前
    不知道 tailscale 是不是符合你的使用场景,我的需求只是串流和访问电脑文件,一开始用 ddns nginx cf 域名处理一堆服务,后来发现还是 tailscale 方便快速且安全
    z7356995
        15
    z7356995  
       79 天前 via Android
    @Gotchaaa 我是在 godaddy 买的
    KingOfUSA
        16
    KingOfUSA  
       79 天前
    1. 感觉没什么问题,我的 windows 远程也是 ipv6 暴漏出去
    2. 我把台式机的 ipv6 固定死了
    COW
        17
    COW  
    OP
       79 天前
    @KingOfUSA 怎么做到把 ipv6 固定死的?
    kuawo
        18
    kuawo  
       79 天前
    @Greendays 我也在用这个 刚开始怕速度慢 没想到还挺快的,我是访问家里的 ipv6 nas
    duanxianze
        19
    duanxianze  
       79 天前
    没啥不安全的,密钥登录要是还不安全,起码 5 成的服务器早就被干崩了,就算真有 0day 漏洞,也不至于先攻击普通人的电脑
    leeyuzhe
        20
    leeyuzhe  
       79 天前
    借楼问一下 ac 86u 是不是不支持 ipv6 的端口转发啊。
    motai
        21
    motai  
       79 天前
    套一层 ssr 或者 vmess 还可以用混淆 用流量卡的定向流量
    nekomiao
        22
    nekomiao  
       79 天前
    v2 还是牛人多,暴露个 ssh 就能黑。
    johnnyyee
        23
    johnnyyee  
       79 天前
    我也想用 ipv6 ,但是路由器开启 ipv6 后时不时打开 app 或者网页就很慢 QAQ
    hancai2
        24
    hancai2  
       79 天前
    换个端口,被扫的概率估计能少 9 层以上吧。 话说开 ipv6 要钱吗
    jtshs256
        25
    jtshs256  
       79 天前 via iPhone
    @COW 连个 ssh 还是很够的,附送的网页版 terminal 也很方便
    fanersai
        26
    fanersai  
       79 天前
    socat 转发端口出去
    yfmir
        27
    yfmir  
       79 天前
    1. 换 ssh 端口、改成私钥认证,简单点的办法就是 cf tunnel ,还能绑 2FA ,去买个域名就好了
    2. ddns
    SenLief
        28
    SenLief  
       79 天前
    你这个需求直接 tailscale 就可以了。
    sl0000
        29
    sl0000  
       79 天前
    路由器上开个 ipv6 的 vpn 服务端, 直接连回去最方便
    dyexlzc
        30
    dyexlzc  
       79 天前
    同意楼上,tailscale 会帮你打洞,打洞成功的话。ipv4 也是能直连的
    tailscale 的打洞服务器还能自己部署在国内的 ecs 上,成功率很高。
    之前我也是一直尝试 ipv6 直连,后面发现家里打开 ipv6 以后,各种 app 会有周期性的刷不出消息的情况,就关掉了,用 tailscale 打洞。zerotier 现在国内打洞&连接成功率不太好了
    sinry
        31
    sinry  
       79 天前
    还是 cf 吧,慢是慢了点
    flynaj
        32
    flynaj  
       79 天前 via Android
    默认端口要改,IP 用 ddns-go
    LnTrx
        33
    LnTrx  
       79 天前
    先权衡一下是否想用虚拟组网工具。如果不想用,可以采取以下措施提升安全性:
    1. 不要使用默认 22 端口,改一个高位不常用的端口
    2. 确保可登录的账号都是强密码,更进一步可以禁止密码、强制使用私钥
    3. 确认 IPv6 是 SLAAC 分配的(后缀是一长串),这样极难被扫到
    4. 减少 IPv6 主动暴露的情况(例如 BT ),有关事项可以单独分一个 IPv6 地址
    5. OpenSSH 问世 20 年,今年才出了首个远程执行漏洞,而且很难被利用。安全起见可以检查是否在受影响的版本。

    虽然定时发送 IPv6 地址也是可行的,但 DDNS 在实际使用过程中更方便。
    Jisxu
        34
    Jisxu  
       78 天前
    tailscale 使用 subnet 功能,v6 公网的话,大概率能打洞成功直接用到宽带的上行。subnet 功能开了之后,你在笔记本上访问你的内网地址,ts 会自动帮你路由过去。而且 ts 有认证机制,你既能完全用上所有的端口,又有足够的安全性
    JKOR
        35
    JKOR  
       78 天前
    @wnpllrzodiac 大多数 VPS 的 SSH 端口不也是直接暴露的,而且还是 ipv4 ,禁用密码登录,改用密钥认证,不会有问题的。
    JKOR
        36
    JKOR  
       78 天前
    1. 大多数 VPS 的 SSH 端口不也是直接暴露的,而且还是 ipv4 ,禁用密码登录,改用密钥认证,不会有问题的。
    2. 关于 ip 变动可以使用 ddns 绑定域名
    3. 如果实在担心安全问题,可以使用 cf tunnel ,虽然 cf 国内访问速度不佳,但是 ssh 够用了。
    yc8332
        37
    yc8332  
       78 天前
    1. ipv6 的 ssh 应该没什么人扫你,再用证书验证还有 bug 的,估计和你也无关了。。。世界上那些服务器都得跪
    2. 动态 ip 的问题就是 ddns ,或者是搞个第三方推送
    lihaohenqiang
        38
    lihaohenqiang  
       78 天前 via iPhone
    外网访问套个 VPN ,只开放内网端口
    COW
        39
    COW  
    OP
       77 天前
    @yc8332 是的,刚搞了个飞书的自定义机器人,在 ddns-go 里配置下就能自动通知了,现在主要是 Powershell 获取公网的 IPv6 的命令有点理解不了,我得再研究下。
    yc8332
        40
    yc8332  
       75 天前
    @COW 直接 curl 6.ipw.cn 就能获取到你的 ipv6 地址了。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2545 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 15:28 · PVG 23:28 · LAX 07:28 · JFK 10:28
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.