背景
家中有一台虚拟机安装了Linux系统,宽带申请了公网ip,并通过ikuai的动态域名解析绑定了自有的一个域名,通过端口转发设置访问该Linux系统
问题
如何通过域名+端口ssh连接家庭Linux虚拟机
如何设置免密登录
解决步骤
ssh连接方法:
ssh -p 9150 root@域名
此处9150是我暴露在公网的端口,通过ikuai进行端口转发到家中的Linux主机。
到这一步会提示你输入密码,输入成功后即可ssh连接成功
设置免密登录
首先客户端机器生成公钥和私钥
命令:ssh-keygen
会提示你将公钥和私钥放在哪个目录下,设置好目录后
出现上述图像即代表秘钥生成成功
到刚刚设置的目录下,可以看到生成了两个秘钥,带有pub后缀的是公钥,我们要把公钥发送到Linux服务器,
cat ~/.ssh/id_rsa.pub | ssh -p 9150 root@域名 "cat - >> ~/.ssh/authorized_keys"
通过上述命令可以将公钥上传至Linux服务器,完成认证过程,此处要验证需要关闭当前bash窗口重新打开,使用ssh命令连接目标服务器,发现不需要输入密码。
finish!