本文最终实现在cmd命令行输入下列指令即可ssh登录服务器
$ ssh host-alias
最近 pycharm 的 ssh terminal 连不上服务器,链接总会timeout,用putty还要单独再开个软件而且时间长了会连接中断,所以笔者.....
马赛克处遮挡的是服务器地址(非礼勿视)
1. Before Start
实现用指令登录服务器需要用到 openssh,如果已经安装 git 则 openssh 十有八九也已经装了,因为:
若不确定,可在命令行输入 ssh 通过输出进行确认:
D:
λ ssh
usage: ssh [-46AaCfGgKkMNnqsTtVvXxYy] [-B bind_interface]
[-b bind_address] [-c cipher_spec] [-D [bind_address:]port]
[-E log_file] [-e escape_char] [-F configfile] [-I pkcs11]
[-i identity_file] [-J [user@]host[:port]] [-L address]
[-l login_name] [-m mac_spec] [-O ctl_cmd] [-o option] [-p port]
[-Q query_option] [-R address] [-S ctl_path] [-W host:port]
[-w local_tun[:remote_tun]] destination [command]
如果没安,可以通过官网,
http://www.openssh.com/portable.html#httpwww.openssh.com
也可以通过 Chocolately 安装,安装指令如下:
$ choco install openssh
2. 生成 key 文件
如果登录服务器用 .ppk 后缀的文件,则还需要先生成一个key文件
可以使用 PuTTYgen 生成,点击 Conversions --> Import Key --> 选择登录服务器用的.ppk文件
然后点击 Conversions --> Export OpenSSH key (force new file format)
弹出对话框选择保存路径保存即可,文件名字随意,生成的文件开头是这样的
-----BEGIN OPENSSH PRIVATE KEY-----
3. 登录
- 通过普通密码登录服务器,则输入下列指令,替换用户名加服务器地址即可,后续指令会提示输入密码:
$ ssh <username>@<host>
- 通过.ppk文件登录服务器,则输入:
$ ssh -i "D:openssh-key" username@host
4. 简化
通过 .ppk文件 频繁登录服务器,输入指令较长会比较麻烦,可以通过配置文件简化操作
在 C:Users<username>.ssh 文件夹下创建文件 config (直接创建txt文件删除后缀即可)
在文件中写入:
Host myserver # 自定义一个别名用于登陆时区分不同服务器
Hostname 111.111.1.1 # 服务器地址
User jax # 登陆服务器的用户名
PubKeyAuthentication yes
IdentityFile D:openssh-key # 刚生成openssh的key文件所在路径
将 Host, Hostname, User 以及 IdentityFile 四项替换成自己的,保存
回到命令行,直接输入以下指令即可登录:
$ ssh myserver
5. 故障排除
- Permissions for ... are too open
文件权限问题,通过在.ppk文件上右键属性--> 安全 --> 高级 --> 编辑,确保自己具有完全控制
6. Integrate with cmder
打开cmder 之后,按下设置的快捷键 Win + alt + P --> Tasks --> + --> 在右下方输入框写入 ssh myserver(myserver替换成自己设定的别名哈) --> Save settings
Tip,如果需要经常登录,还可以在此界面选定 task 后, 勾选右上方的 Default task for new console, 这样默认启动的任务就是刚才设定的ssh登录
设定完成后,回到 cmder, 按下 Ctrl + T --> 选定刚才设定的 task --> Start
This is End -------------------------
El fin de este artículo ---------------------