我正在尝试使用ngrok通过SSH(公钥认证)从远程计算机通过互联网连接到Windows用户。但显然不起作用。
以下是我所做的。
我在windows上安装并激活了SSH。
Get-WindowsCapability -Online | ? Name -like 'OpenSSH*'
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0
我生成了公钥文件,并从发送到远程机器进行ssh。
ssh-keygen
我在SSH设置文件“C:\ProgramData\SSH\sshd\u config”中更改/添加了以下行
PermitRootLogin yes
AllowUsers otheruser
PubkeyAuthentication yes
PasswordAuthentication no
我重新启动了ssh服务器以应用设置更改。
net stop sshd ; net start sshd
我安装了ngrok并运行ngrok
./ngrok tcp 22
# got "6.tcp.ngrok.io:25252"
我尝试从远程机器ssh到Windows机器,使用“tmp”密钥文件给用户“tmp”。
ssh -i "C:\pg\.ssh\tmp" tmp@6.tcp.ngrok.io -p 25252
并失败了。
ssh -i "C:\pg\.ssh\tmp" tmp@6.tcp.ngrok.io -p 25252
Enter passphrase for key 'C:\pg\.ssh\tmp':
tmp@6.tcp.ngrok.io: Permission denied (publickey,keyboard-interactive).
我自己没有在Ngrok上测试过,但请尝试以下步骤。
Get-WindowsCapability -Online | Where-Object Name -like 'OpenSSH*'
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0
Start-Service sshd
Set-Service -Name sshd -StartupType 'Automatic'
C:\ProgramData\ssh\sshd_config
(路径可能不同)请注意,没有。
PubkeyAuthentication yes
PasswordAuthentication no
StrictModes no
请注意,不仅要输入到授权密钥中,还要输入到管理员授权密钥中。因为如果你是服务器上的管理员,那么你需要在管理员授权密钥文件中拥有授权的pub密钥。将所有pub键添加到这两个文件不会对您造成影响。(或编辑sshd\u config文件)
当服务器的授权密钥和/或sshd\u配置文件更新时,必须重新启动服务器。
stop-Service ssh
Start-Service sshd
然后试试看。
ssh user@192.168.1.2
SSH视窗系统是浪费时间。不幸的是,他们的文档https://docs.microsoft.com/en-us/windows-server/administration/openssh/openssh_keymanagement已经过时https://github.com/MicrosoftDocs/windowsserverdocs/issues/4598不再工作。
如果你使用的是视窗10,我建议在你的视窗10上使用WSLLinux。它在视窗上基本上是Linux机器,但也可用于SSH功能。WSL SSHing确实和你在Linux机器上一样完美。
Jenkins master运行在Amazon实例上,从机设置在专用的Soyoustart机器上。工作正常,直到需要重做从属设置:重新安装OS,安装Java,向从属authorized_keys添加masters key,并删除/再次添加masters known_hosts中的从属。为从机设置新的凭据,并在Jenkins master中配置节点,但它无法连接到从机。 设置是相同的,并且一直在与其
我有两台机器:machine foo()运行redis服务器,而machine bar()运行通过Jedis连接到foo的java应用程序。当给jedis提供地址时,一切都很好。 但是我不信任foo和bar之间的路由器,redis也不支持SSL。因此,我设置了一个从bar到foo:的ssh隧道 现在,从bar中,我可以直接在或通过隧道在成功地telnet到foo上的redis。对于jedis,如果
远程Linux计算机位于内部网络中,没有公共IP地址。所以我安装了ngrok。 ngrok by@不可恢复(Ctrl C退出)在线隧道状态2.0.19/2.0.17版Web界面http://127.0.0.1:4040 转发tcp://0.tcp.ngrok.io:36428 - 我检查了sshd是否正在运行。 在当地的电脑上,我试着 这引起了 SSH:连接到主机ngrok.com端口36428:
我想公开我的系统,以便通过ssh进行访问。 运行此
在尝试应用terraform计划时,我得到一个不加起来的ssh错误: SSH:握手失败:SSH:密钥交换没有通用算法;提供的客户端:[curve25519-sha256@libssh.org ecdh-sha2-nistp256 ecdh-sha2-nistp384 ecdh-sha2-nistp521 diffie-hellman-group14-sha1 diffie-hellman-grou
我无法通过 SSH 连接到我的 EC2 实例 - 我收到超时错误。我检查了安全组,以确保 SSH 流量正常工作。我检查了路由表,并确保它们已连接到互联网网关。一小时前,我能够通过SSH连接到实例中,但现在已经没有了。我正在通过腻子连接。在使用ec2-user@domain之前,我遇到了相同的超时连接问题,我只需在Putty的主机名字段中输入IP地址即可解决。在这一点上,我能够毫无问题地连接。然后,