當你擁有了屬於本身的一個雲服務器後,首先須要作的事情就是登陸服務器。而登陸服務器,做爲新手能夠經過雲廠商提供的 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
與我交流,或者備註我的服務器,加入我的服務器運維討論羣