admin 管理员组文章数量: 887021
1.开机用wol即可实现
1)进入要控制的win电脑--设备管理器--负责联网的网卡--电源管理--勾选允许此设备唤醒计算--勾选只允许幻数据包唤醒计算机--高级--开启幻数据包唤醒
2)进入homeassistant的configuration.yaml,输入(注意缩进与空格!)
switch:
- platform: wake_on_lan
name: "电脑" # 定义HA中实体的名称,可任意命名
mac: "**-**-**-**-**-**" # 主机MAC地址
host: "192.168.*.**" # 主机IP地址
broadcast_address: "192.168.*.255" # 广播地址
broadcast_port: 9
保存后重启ha,测试的话直接在概览页添加实体即可
2.关机用openssh实现
可以用其他帖子中安装小软件的方式,软件需要实时运行,但我不想实时运行软件,只能用openssh来实现
1)进入要控制的win电脑--设置--搜索可选功能--安装openssh服务端--安装完成后重启电脑--进入服务--找到openssh开头的两个服务--改为开机自启并开启服务
2)打开cmd命令行 输入(注:一定要输入ed25519 否则生成的密钥可能无法认证)
ssh-keygen -t ed25519 -f my_ed25519_key
会有提示输入密码 直接全部回车 (设置密钥的密码一定为空 否则生成的密钥文件用不了)
生成的密钥路径为当前cmd指向路径
把id_rsa.pub公钥修改名字为administrators_authorized_keys ,然后把公钥文件复制到C:\ProgramData\ssh,然后修改该目录下sshd_config
PasswordAuthentication no
PubkeyAuthentication yes
修改完之后重启openssh服务
3)把C:\Users\用户名\.ssh\id_rsa复制到homeassistant的/config/.ssh/ (如果filebrowser插件找不到/config/.ssh/目录,那就只能先将id_rsa复制到~/share目录 然后执行cp ~/share/id_rsa /config/.ssh/)
进terminal给私钥改权限 chmod 600 /config/.ssh/id_rsa
输入ssh -i /config/.ssh/id_rsa 用户名@192.168.*.** shutdown /h 进行测试
如果win电脑休眠就代表可以了
4)在configuration.yaml中添加(在刚刚添加的那部分底下添加,注意空格和换行)
turn_off:
service: shell_command.turn_off_connect
shell_command:
turn_off_connect: 'ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -i /config/.ssh/id_rsa 用户名@192.168.*.** shutdown /h'
保存后重启ha即可
ssh连接失败可能与以下问题有关!
注1:win自己安装的openssh版本过低可能会导致密钥验证失败
查看windows的openssh的版本,进cmd输入ssh -V,如果低于9.5建议升级到9.5+
升级openssh教程:设置--可选功能--卸载旧的openssh服务器版本--重启--删除掉C:\windows\System32\OpenSSH整个文件夹(可能需要trustedinstaller权限) --打开 https://github/PowerShell/Win32-OpenSSH/releases--下载OpenSSH-Win64-v9.5.0.0.msi并安装
注2:如果ha的Terminal端在连接时弹出are you sure you want to continue connecting(yes/no/fingerprint)?
这里不要只摁回车,一定要输入yes加回车!
注3:如果之前连接成功/失败过 更换过密钥或认证方式 再次连接该ip时
需要先删除认证列表
输入 rm ~/.ssh/known_hosts
注4:如果ha输入连接命令提示timeout 那win电脑端肯定是防火墙拒绝了访问
win端需要进入防火墙-高级设置-入站规则- 新建规则--端口--特定本地端口输入22--点击下一页--允许链接--点击下一页--随便输入个名字提交即可
注5:操作完之后你会发现添加的实体按钮无法显示开关机状态 也无法操作关机
原因是显示开关机状态其实是ping win电脑,因为防火墙默认禁止了ping端口导致ping不通,解决方法就是进入命令行,输入命令:netsh firewall set icmpsetting 8
3.用小爱音箱来控制电脑开关机
1)注册巴法云账号,并获取密钥
2)在ha的HACS中搜索 bemfa 安装并重启ha
在ha的集成页面,搜索 bemfa并添加,输入巴法云密钥后提交
安装成功后,点击集成--选项--同步需要的实体至巴法云
3)在米家App中添加巴法云设备:
米家app--我的--其他平台设备--点击添加--找到巴法--输入巴法云账号即可
本文标签: 开关机 小爱 同学 电脑 HomeAssistant
版权声明:本文标题:小爱同学通过homeassistant控制win电脑开关机 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1729932783h1371873.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论