当你拥有了属于本身的一个云服务器后,首先须要作的事情就是登陆服务器。而登陆服务器,做为新手能够经过云厂商提供的 dashboard 进行登陆操做。可是,最简单及最方便的方式仍是经过终端,使用 ssh
命令快速登陆html
本节主要涉及如下四个实践操做,这也是山月关于我的服务器管理的第一篇文章,欢迎持续关注git
你对流程熟悉后,只须要一分钟即可以操做完成vim
把如下 IP 地址替换为你云服务器的公网地址,并提供密码便可登陆。但记住一个 IP 地址,这是一个反人性的操做,若是你有多个服务器呢?此时 ssh-config
就派上了用场安全
$ ssh root@172.16.3.2
复制代码
在本地客户端环境 (我的电脑) 上配置 ssh-config,对我的服务器起别名,能够更方便地登陆云服务器,如下是关于 ssh-config 的配置文件bash
/etc/ssh/ssh_config
~/.ssh/config
如下是快速登陆山月两个服务器 shanyue
和 shuifeng
的配置服务器
# 修改 ssh 配置文件 ~/.ssh/config
Host shanyue
HostName 59.110.216.155
User root
Host shuifeng
HostName <PUBLIC_IP>
User root
复制代码
配置成功以后直接 ssh host 名称就能够,是否是很方便呢?微信
$ ssh shanyue
The authenticity of host '59.110.216.155 (59.110.216.155)' can't be established. ECDSA key fingerprint is SHA256:WXULVpZcrX6kENrR5GH0mqRi49Djj22UXba0dRXCVKo. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added '59.110.216.155' (ECDSA) to the list of known hosts. Welcome to Alibaba Cloud Elastic Compute Service ! [root@shanyue ~]# [root@shanyue ~]# [root@shanyue ~]# 复制代码
不过仅仅有了别名,每次输入密码也是足够麻烦的。那如何实现远程服务器的免密登陆?运维
~/.ssh/id_rsa.pub
与 远程服务器的 ~/.ssh/authorized_keys
若是本地环境中 ~/.ssh/id_rsa.pub 文件不存在,请参考下一章节使用 ssh-keygen 生成 ssh keys: ssh key 及 git 配置ssh
总结成一句话,即把本身的公钥放在远程服务器。工具
简单来讲,就是 Ctrl-C
与 Ctrl-V
操做,不过具体实施起来较为琐碎。 更为重要的是对于新人还有一个门槛:vim 的使用。
关于 vim,能够参考后续文章 vim 基本操做及其配置
此时一个解决生产力的命令行工具应运而生: ssh-copy-id
# 在本地环境进行操做
# 提示你输入密码,成功以后能够直接 ssh 登陆,无需密码
$ ssh-copy-id shanyue
# 登录成功,无需密码
$ ssh shanyue
复制代码
为了更大保障服务器的安全性,这里禁止密码登陆。修改云服务器的 sshd
配置文件:/etc/ssh/sshd_config
。其中 PasswordAuthentication
设置为 no
,以此来禁用密码登陆。
# 编辑服务器端的 /etc/ssh/sshd_config
# 禁用密码登陆
Host *
PasswordAuthentication no
复制代码
此时仿佛一切都顺心遂意,心满意足了,因而,山月去接了杯水喝。然而回来发现,ssh 链接超时断了,并由于 hang 住了。这怎么能忍?
在客户端的 ssh-config 配置文件中,加两行配置搞定。
Host *
ServerAliveInterval 60
复制代码
我是山月,我会按期分享全栈文章在我的公众号中。若是你对我的服务器运维感兴趣的话,能够加我微信
shanyue94
与我交流,或者备注我的服务器,加入我的服务器运维讨论群