Linux

無法通過 ipv6 SSH 伺服器

  • May 15, 2019

第一:ipv4 工作正常。

所以我得到了以下設置:(伺服器是作為 VM 執行的 Arch Linux 作業系統)

編輯 添加了一條規則

ACCEPT     tcp      ::/0                 ::/0                 tcp dpt:22

它接受埠 22 上的任何連接(以確保它不是 IP 故障),但這也不起作用。所以我對命令做錯了,ssh ...或者 ipv6 防火牆表不起作用:

Chain INPUT (policy DROP)
target     prot opt source               destination         
ACCEPT     all      ::/0                 ::/0                 ctstate RELATED,ESTABLISHED
ACCEPT     all      ::/0                 ::/0                
DROP       all      ::/0                 ::/0                 ctstate INVALID
UDP        udp      ::/0                 ::/0                 ctstate NEW
TCP        tcp      ::/0                 ::/0                 tcp flags:0x17/0x02 ctstate NEW
REJECT     tcp      ::/0                 ::/0                 reject-with tcp-reset
REJECT     all      ::/0                 ::/0                 reject-with icmp6-adm-prohibited

Chain FORWARD (policy DROP)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         

Chain TCP (1 references)
target     prot opt source               destination         
ACCEPT     tcp      ::/0                 ::/0                 tcp dpt:22

Chain UDP (1 references)
target     prot opt source               destination         

刪除 ip6table 後,它終於可以工作了 :D 所以我需要弄清楚出了什麼問題:)

鑑於您沒有詳細介紹設置,這裡有一些提示:

驗證…

  • 您為 IPv6 啟用了 ip_forward:sysctl net.ipv6.conf.all.forwarding=1
  • 你不是在處理連結本地地址(fe80::/10 前綴)
  • 您可以從執行它的主機通過 IPv6 訪問虛擬機。
  • 您首先在禁用防火牆 ( ip6tables -F) 的情況下測試 IPv6 連接,並在其工作時添加規則。

我的 Edgerouter X 也有同樣的問題。我嘗試使用 TCP_UDP 協議設置 ssh 埠,而不僅僅是 TCP,解決了這些問題。TCP 適用於 IPv4。

引用自:https://serverfault.com/questions/942345