Linux 云主机使用windows登录(含免密登录及使用别名快速登录主机)
在windows上生成ssh公钥
ssh公钥 是用于免密登录的核心文件,基本原理在这里不做赘述,我的方法大概就是把在windows主机生成的ssh密钥中的公钥在需要免密登录的Linux主机中放置,再通过一些简单的配置即可生效,这里仅表述使用CMD命令行的方式,其他软件也可实现同样的效果
打开CMD命令行生成公钥(此处应先安装Git,便于后续操作)
1.查看本地是否有ssh公钥文件夹,若没有,则创建文件夹
mkdir ~/.ssh //创建文件夹,在CMD即可执行
因为我已经有ssh文件夹在 C:\Users\你的机器名文件夹.ssh,所以不用再创建了
2.生成公钥 邮箱最好为你github注册邮箱,因为github会用到这个公钥(当然也可以不添加这个参数
ssh-keygen [-t rsa -C "email@email.com" ] //方括号中的参数可以不用添加
3.这时候windows上的公钥就已经生成好了,后续可以使用文本编辑软件打开
本地id_rsa.pub文件(也就是公钥文件)。
将公钥传递给Linux主机(可以使用命令或者手动赋值过去)
方法1. 命令发送
输入scp -P 22 .ssh/id_rsa.pub username@remote:~/.ssh/authorized_keys
//这一步是将windows中的公钥传给服务器,并存为authorized_keys
方法2.手动复制
1.将本地id_rsa.pub文件的内容拷贝至远程服务器的~/.ssh/authorized_keys。
这里的authorized_keys可能原本不存在,使用vim工具创建一个即可:
vim authorized_keys
正常输入即可,如果是第一次使用vim工具建议先去学一下简单的操作
i 键可开始插入内容,如果想保存并退出,就先按ESC,然后键盘按
:wq(别忘记冒号),最后回车即可。我这里是创建了两次免密的会话,第一次用的是Xshell的向导,效果是一样的
2.然后将本地的公钥复制后粘贴进去,如果是后续新建的免密登录,附在之前的公钥后即可,不过记得隔开一行。
3.到这里基本就结束了,需要重新登录或者重启sshd服务,选用命令
service sshd restart
这里如果你的Linux主机有多个用户会让你选择重启哪个,你需要免密登录哪个就选择哪个
使用别名快速登录主机
在生成公钥的文件夹.ssh中新建config文件(无后缀),在其中添加内容
Host 自定义名称(建议用服务器名)
HostName 服务器ip地址
User 服务器名
Port 22(如果不是22端口自行更改)