Windows 10开启免密ssh登录&远程端口转发
安装OpenSSH服务端
设置-系统-可选功能-添加功能-在这里搜索OpenSSH服务端,然后开始安装即可
开启sshd服务端
可以使用图形界面使用命令行执行services.msc找到服务启动即可,并将其设置为自动。
可以使用powershell执行命令启动服务
启动服务:Start-Service sshd
查看状态:Get-Service sshd
关闭服务:Stop-Service sshd
重启服务:Restart-Service sshd
也可以使用net start sshd
此时OpenSSH服务端就是安装好了,但是默认客户端的用户名下面没有.ssh目录,最好是使用ssh自动服务新建,所以我这里使用ssh-keygen -t rsa一直敲击回车生成本机的密钥和公钥,此时也会生成了文件 authorized_keys
Tips:记住一点,这Windows 10以上版本操作,都会默认是低权限,所以都是复制文件到桌面或者其他有权限的地方,进行编辑文件,然后将编辑改好的文件复制到目的文件夹中进行覆盖更改。
开启OpenSSH免密认证
默认情况下OpenSSH服务端安装好之后,服务端文件路径在 C:\ProgramData\ssh 这个文件夹是个隐藏文件,要么命令行看,要么打开隐藏文件,或者使用Everything工具直接搜索sshd即可找到
然后将sshd_config文件复制到桌面,进行更改好,然后覆盖就可以了,要更改的内容如下:
下面这个两个参数去掉注释保持开启状态,至于密码认证不用关,默认如果密钥认证失败会进入密码认证
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
重点记住要注释下面两个参数,如下所示:
#Match Group administrators
# AuthorizedKeysFile __PROGRAMDATA__/ssh/administrators_authorized_keys
复制公钥到authorized_keys,操作方式跟上面一样,以覆盖方式执行操作即可。
然后执行命令重启OpenSSH服务
重启服务:Restart-Service sshd
在Windows 10操作系统执行远程端口转发,将下面代码保存为批处理执行即可
@echo off
::setting
set HOST="10.10.6.220"
set MONITOR_PORT=30808
set LOCAL_PORT=20808
ssh -o ServerAliveInterval=180 -NCfTR %MONITOR_PORT%:127.0.0.1:%LOCAL_PORT% xnull@%HOST%
迷茫的人生,需要不断努力,才能看清远方模糊的志向!