> 文章列表 > 0成本 使用home assistant远程开关机电脑

0成本 使用home assistant远程开关机电脑

0成本 使用home assistant远程开关机电脑

环境:docker+win10+HACS
问题:在外网手机上远程开关机家中电脑
解决办法:开机:WOL,关机ssh命令

背景:在部署HACS后,便想用HACS中的命令来开关机windows电脑,开机很简单,使用WOL命令即可,关机的话则要在HACS中SSH到windows中执行关机指令

解决过程:关键在于将HACS环境中生成的PUBkey复制到windows authorized_keys 中

文章目录

    • 1.安装homeassistant和HACS:
    • 2.在windows中安装openssh服务:
    • 3.在docker的HACS中生成密钥
      • 3.1 进入容器的shell环境,生成密钥:
      • 3.2 将生成的PUB文件内容复制到windows中
      • 3.3 重启openssh服务
    • 4.在HACS 命令行中远程登陆windows
      • 4.1 修改HACS配置文件并重启服务

效果图:


0成本 使用home assistant远程开关机电脑


1.安装homeassistant和HACS:

在docke中安装home assistant略过

2.在windows中安装openssh服务:

2.1 安装openssh服务

直接在添加功能里面搜索即可,参考上一篇文章:
https://blog.csdn.net/wangrui1573/article/details/121711732

2.1 修改openssh配置文件

在C:\\ProgramData\\ssh\\下,打开sshd_config文件

#启用公钥验证和文件
PubkeyAuthentication yes
AuthorizedKeysFile  .ssh/authorized_keys#注释这两条#Match Group administrators#AuthorizedKeysFile __PROGRAMDATA__/ssh/administrators_authorized_keys

3.在docker的HACS中生成密钥

3.1 进入容器的shell环境,生成密钥:

ssh-keygen -d 4096 -t hacs

3.2 将生成的PUB文件内容复制到windows中

将id_rsa.pub的文件内容复制到下列文件

C:\\Users\\你的用户名\\.ssh\\authorized_keys 

3.3 重启openssh服务

4.在HACS 命令行中远程登陆windows

第一次要输入密码,第二次就不用了

4.1 修改HACS配置文件并重启服务

switch:- platform: wake_on_lanname: "电脑"mac: "00:e0:70:da:??:52"host: "192.168.31.??"broadcast_address: "192.168.31.255"broadcast_port: "9"turn_off:service: shell_command.turn_off_pc- platform: wake_on_lanname: "服务器"mac: "b0:5a:da:??:37:28"host: "192.168.31.?"broadcast_address: "192.168.31.255"broadcast_port: "9"# 命令
shell_command:turn_off_pc: "ssh real@192.168.31.?? shutdown /s /t 0"