内网穿透就是将自己的地址当穿透到公网ip,这一就可以在外网访问了(因为大部分人ip都是动态分配的),以适用ssh远程连接,我这里用的是极点云cpolar,反正也是黑框编程,免费就行了。我是ubuntu虚拟机,在虚拟机上下载跟着他的操作步骤来
创建隧道时协议选tcp,端口选本地ssh的端口22,创建后通过25....这个地址端口就能访问到本地ip的22端口了
官网登录后在左侧"状态"栏可以看到我们的已经连接上隧道(127...是本机地址,如果是本机的windows安装我估计是本机地址处填写虚拟机的网络地址和ssh端口22,可能虚拟网卡会要修改成桥接模式)
ssh连接就输入公网地址端口,虚拟机登录时的用户名和密码即可
安全性更高的方法是关闭用户名密码连接改用ssh秘钥连接
ssh-keygen -m pem -t ecdsa
vs新版本已经不再支持RSA加密,所以使用ecdsa
其余的参考SSH服务详解(二)--使用私钥登录 SSH 服务器(免密登录)_ssh私钥登录-CSDN博客
~/.ssh 目录为ssh服务的秘钥目录,里面的authorized_keys文件即是允许登录的ssh公钥,通过cat 公钥 >> authorized_keys在当前秘钥文件authorized_keys后添加新的公钥
/etc/ssh/sshd_config 为ssh配置文件,将其中的
PasswordAuthentication注释打开,改为no然后重启sshsudo systemctl restart ssh即可关闭密码登录
建议先测试连接成功后再关闭密码登录
连接上后要用vs去linux重新下载各种索引文件
vs2022 找不到linux的头文件问题解决_visual studio 2022 wsl linux 头文件-CSDN博客