የHome Assistant dashboardዎን በባቡር ውስጥ መክፈት ይፈልጋሉ። ራውተሩ እምቢ ይላል፦ የኢንተርኔት አቅራቢው ከCGNAT ጀርባ አስቀምጦዎታል፣ ወይም port forwarding በቴክኒክ ይቻላል ነገር ግን አንድ መብራት ለማብራት ሙሉ የቤት አውታረ መረብዎን በኢንተርኔት ላይ ማንጠልጠል አይፈልጉም። ትንሽ VPS ሁለቱንም ይፈታል። ቤትዎ በWireGuard በኩል ወደ እሱ ወደ ውጭ ይገናኛል፣ VPS ደግሞ ብቸኛው ህዝባዊ ገጽታ ነው፦ በእውነተኛ domain፣ በእውነተኛ certificate፣ እና በቤት ውስጥ ለዓለም የሚያዳምጥ ምንም ነገር የለም።
ማዋቀሩ እንዴት ይሰራል
phone ──HTTPS──> VPS (Caddy :443) ──WireGuard──> Home Assistant :8123 at home
▲
home box dials out on UDP 51820
VPS ሁለት ነገሮችን ያሄዳል፦ የWireGuard server እና Caddy እንደ reverse proxy። በቤት ውስጥ የWireGuard client (በHome Assistant host፣ በRaspberry Pi ወይም በራውተሩ ላይ) ዋሻውን ክፍት ያደርጋል። https://ha.example.comን ሲከፍቱ Caddy ጥያቄውን በዋሻው በኩል ወደ 10.8.0.2:8123 ያስተላልፋል።
የሚያስፈልግዎ
- dedicated IP ያለው ዕቅድ። VPS ገቢ 443 እና UDP 51820 መቀበል አለበት። Nano-IP በ$8/ወር ከበቂ በላይ ነው፦ ጥቂት ኪሎባይት የdashboard ትራፊክ ያለምንም ችግር ያንቀሳቅሳል። የNAT ዕቅዶች ከግል SSH ፖርትዎ በስተቀር ገቢ ግንኙነቶችን አይቀበሉም (NAT እዚህ እንዴት እንደሚሰራ)።
- domain A record ወደ VPS IP የሚያመለክት።
- በቤት ውስጥ የWireGuard client በአካባቢያዊ አውታረ መረብ ላይ Home Assistantን መድረስ የሚችል።
1. በVPS ላይ WireGuard server
apt update && apt install -y wireguard caddy
wg genkey | tee /etc/wireguard/server.key | wg pubkey > /etc/wireguard/server.pub
chmod 600 /etc/wireguard/server.key
cat > /etc/wireguard/wg0.conf <<EOF
[Interface]
Address = 10.8.0.1/24
ListenPort = 51820
PrivateKey = $(cat /etc/wireguard/server.key)
[Peer]
# the home side
PublicKey = HOME_PUBLIC_KEY
AllowedIPs = 10.8.0.2/32
EOF
systemctl enable --now wg-quick@wg0
ufw allow 51820/udp && ufw allow 80,443/tcp
2. የቤቱ ወገን
በቤት ውስጥ በማንኛውም Linux ማሽን ላይ (ወይም በHome Assistant WireGuard client add-on ውስጥ) peer ይፍጠሩ። keepalive አስፈላጊ ነው፦ ዋሻውን በቤት ራውተሩ NAT በኩል ክፍት ያደርጋል።
[Interface]
Address = 10.8.0.2/24
PrivateKey = HOME_PRIVATE_KEY
[Peer]
PublicKey = SERVER_PUBLIC_KEY
Endpoint = ha-vps.example.com:51820
AllowedIPs = 10.8.0.1/32
PersistentKeepalive = 25
የWireGuard client ከHome Assistant በተለየ ማሽን ላይ የሚሰራ ከሆነ 10.8.0.2:8123ን በአካባቢያዊ አውታረ መረብ ላይ ወዳለው የHA host ያስተላልፉ፣ ወይም ቀላሉ፦ clientቱን በራሱ በHA host ላይ ያሂዱ።
3. HTTPS በCaddy
cat > /etc/caddy/Caddyfile <<'EOF'
ha.example.com {
reverse_proxy 10.8.0.2:8123
}
EOF
systemctl reload caddy
Caddy certificateቱን በራስ-ሰር ያገኛል እና የHome Assistant app የሚተማመንበትን WebSocket ግንኙነት ያስተናግዳል።
4. Home Assistant proxyውን እንዲያምን ይንገሩት
ያለዚህ HA በproxy የመጡ ጥያቄዎችን ይከለክላል። በconfiguration.yaml ውስጥ፦
http:
use_x_forwarded_for: true
trusted_proxies:
- 10.8.0.1
Home Assistantን እንደገና ያስጀምሩ፣ https://ha.example.comን ይክፈቱ፣ እና ይህንን URL በሞባይል app ውስጥ እንደ ውጫዊ አድራሻ ያዘጋጁ።
ግብይቶቹ፣ በሐቀኝነት
HTTPS በVPS ላይ ይጠናቀቃል፣ ስለዚህ ያ server የdashboard ትራፊክዎን ወደ ዋሻው ከመግባቱ በፊት ሳይመሰጠር ያያል። serverሩ የእርስዎ ነው፣ ዋናው ነጥብም ይህ ነው፣ ነገር ግን እንደ የቤት አውታረ መረብዎ አካል ይያዙት፦ SSH keys ብቻ፣ ዝማኔዎች የበሩ፣ በእሱ ላይ ሌላ ምንም የማይሰራ። የHome Assistant የራሱን የይለፍ ቃል እና ባለሁለት ደረጃ መግቢያ እንደበራ ይተዉ፤ proxyው የማረጋገጫ ንብርብር አይደለም።
የHome Assistant ቡድን ይፋዊ የሚከፈልበት የcloud አገልግሎት ተመሳሳይ ስራን ያለምንም ጥገና ይሰራል እና ፕሮጀክቱንም ይደግፋል። server ማሄድ በጭራሽ የማይፈልጉ ከሆነ ይህ ፍጹም ጥሩ መልስ ነው። የVPS መንገድ የሚያሸንፈው አስቀድመው self-hosting ሲያደርጉ፣ የራስዎን domain ሲፈልጉ፣ ወይም በኋላ ሌሎች የቤት አገልግሎቶችን ከተመሳሳይ ዋሻ ጀርባ ለማስቀመጥ ሲያስቡ ነው።
ተዛማጅ መመሪያዎች
- በVPS ላይ WireGuard VPN ማዋቀር፦ የWireGuard ሙሉ መመሪያ
- Nginx reverse proxy ከHTTPS ጋር፦ ከCaddy ይልቅ Nginxን ከመረጡ
- አዲስ VPS ደህንነትን መጠበቅ፦ ኢንተርኔትን በሚመለከት በማንኛውም ማሽን ላይ መጀመሪያ ይህንን ያድርጉ
አስተያየቶች
እስካሁን አስተያየቶች የሉም። መጀመሪያ ይሁኑ።