從零開始搭建服務器之登錄和登出遠程服務器

雙 11 期間入手了一臺雲服務器,備案花了一兩個星期,這兩天終於備案通過了.於是在個人服務器上裝了 Docker 容器用於部署項目,準備儘量把所有的服務都打包成容器,方便統一管理運維.

於是利用 docker 搭建了 nginx 作為反向代理服務器,負責請求分發,用 nginx 部署靜態博客,用 mysql 暴露給個人項目使用...

但是千里之行始於足下,一切還要從登錄登出遠程服務器開始,本文基於 Centos7.6 環境,不保證其他環境正常.

環境準備

服務器要求

如果你已經有云服務器或者虛擬機服務器,首先需要驗證服務器上是否已經安裝 ssh 服務,如果沒有安裝則需要提前安裝.

登錄服務器後,在命令行窗口中輸入 rpm -qa | grep ssh 查看是否包括 ssh 相關文件.

[root@snowdreams1006 ~]# rpm -qa | grep ssh
openssh-clients-7.4p1-16.el7.x86_64
libssh2-1.4.3-12.el7_6.2.x86_64
openssh-server-7.4p1-16.el7.x86_64
openssh-7.4p1-16.el7.x86_64

默認情況下運行 netstat -antp | grep sshd 命令,可以看到 sshd 服務監聽的端口正是默認的 22 端口.

[root@snowdreams1006 ~]# netstat -antp | grep sshd
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1051/sshd
tcp 0 0 *.*.*.*:22 *.*.*.*:46797 ESTABLISHED 17334/sshd: root@pt

其實一般雲服務器均已預裝好 ssh 服務,如果沒有上述輸出,則說明可能並沒有安裝 ssh 服務,可以使用 yum install openssh-server 進行安裝.

下面總結一些關於 sshd 的常用命令,如下

  • 查看 sshd 運行狀態
systemctl status sshd

如果運行結果包括 Active: active (running) 則證明 sshd 服務處於激活狀態,如果是 Active: inactive (dead) 則表示服務已關閉.

[root@snowdreams1006 ~]# systemctl status sshd
● sshd.service - OpenSSH server daemon
Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled; vendor preset: enabled)
Active: active (running) since 五 2019-11-29 21:05:08 CST; 16h ago
Docs: man:sshd(8)
man:sshd_config(5)
Main PID: 1051 (sshd)
Tasks: 1
Memory: 10.9M
CGroup: /system.slice/sshd.service
└─1051 /usr/sbin/sshd -D
  • 啟動|關閉|重啟 sshd 服務
systemctl start sshd

針對處於已經關閉 sshd 狀態時,可以再次啟動,如果已經啟動,則不會輸出結果,但還是啟動中.

systemctl stop sshd

針對處於正在運行 sshd 狀態時,可以停止服務,如果已經停止,則不會輸出結果,但還是停止中.

systemctl restart sshd

針對處於正在運行 sshd 狀態或者已經停止狀態時,可以重啟服務,雖然都不會輸出結果,但已經啟動.

  • 開機自啟|禁止自啟 sshd 服務
systemctl list-unit-files | grep enabled

查看全部開機自啟服務,如果包括 sshd 則表示 sshd 已加入開機自啟服務,如果沒有則不會開機自啟.

systemctl list-unit-files | grep enabled | grep sshd

如果全部開機自啟服務比較多的話,肉眼不太直接看出 sshd 是否自啟,在上一條命令的基礎上多加一個 grep sshd 即可過濾是否包含 sshd 服務.

systemctl enable sshd

開機自啟服務,如果某些服務非常重要需要一直後臺運行的話,最好加入開機自啟,這樣能防止意外關機重啟服務器後忘記開啟服務,比如 sshd 服務和 docker 服務等等.

systemctl disable sshd

針對已經開機自啟服務進行禁用,運行 systemctl list-unit-files | grep enabled | grep sshd 可以查看當前服務是否會開機自啟.

如果你現在還沒有服務器但又想學習體驗一下,要麼立即花錢去買服務器要麼

免費安裝虛擬機,或者先收藏起來以後再看!

針對立即購買服務器的小夥伴,請私信聯繫我,用我的推廣鏈接購買,你有優惠,我有分成,何樂而不為呢?

https://webhook.snowdreams1006.cn/hooks/query?title=有人打算購買雲服務器啦&body=趕緊去查一下阿里雲服務器購買鏈接私信告訴他/她!,最好還是留言或者私信告訴我!

針對免費安裝虛擬機體驗的用戶,可以根據自己的操作系統,參考以下推文進行安裝,有問題也可以聯繫我!

https://webhook.snowdreams1006.cn/hooks/query?title=有人想要安裝虛擬機&body=趕緊去查一下虛擬機安裝教程!,最好還是留言或者私信告訴我!

下面是之前推文關於什麼是虛擬機以及如何安裝 Centos 服務器的相關文章,可以點擊直接閱讀.

  • https://mp.weixin.qq.com/s/7_ZxBsxlMoCIr-Qcw1G8Qg

主要介紹了什麼是虛擬機以及實例演示如何給 Windows 電腦裝個 VMware 虛擬機.

  • https://mp.weixin.qq.com/s/7_ZxBsxlMoCIr-Qcw1G8Qg

在 Windows 電腦已經裝好 VMware虛擬機的基礎上,裝個 Centos 鏡像就擁有了自己的 Centos 服務器.

  • https://mp.weixin.qq.com/s/ToXjx06xlehHpsCcfOWliw

主要介紹了什麼是虛擬機以及實例演示如何給 Mac 電腦裝個 VMware 虛擬機.

  • https://mp.weixin.qq.com/s/D1Fdpp2vcBnX0eVbMzPV1A

在 Mac 電腦已經裝好 VMware虛擬機的基礎上,裝個 Centos 鏡像就擁有了自己的 Centos 服務器.

客戶端要求

因為登錄服務器需要使用到 ssh 協議,所以首先需要驗證本機客戶端命令行是否支持 ssh 協議.

打開你正在使用的命令行,直接輸入 ssh 如果有下列提示證明是可以的,如果沒有請安裝支持 ssh 協議命令行終端.

如果你是 Mac 用戶,打開默認的 terminal 終端輸入 ssh 返回用法說明,證明是支持 ssh 協議的.

snowdreams1006$ 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]

Mac 自帶的 terminal 終端是支持 ssh 協議的,Windows 的 Git Bash 命令行也是支持的!

如果你是 Windows 用戶正在使用 cmd 命令行窗口,很遺憾並不支持 ssh 協議,請自行選擇類 unix 終端進行操作.

Microsoft Windows [版本 6.1.7601]
版權所有 (c) 2009 Microsoft Corporation。保留所有權利。

C:\\Users\\Administrator>ssh
'ssh' 不是內部或外部命令,也不是可運行的程序
或批處理文件。

C:\\Users\\Administrator>

Windows 用戶不妨安裝 https://git-scm.com/download/win ,默認自帶的 Git Bash 命令行就很好用,比 cmd 終端更加簡單優雅,給你一種類 unix 操作體驗.

命令行登錄

ssh 登錄服務器前提是知道賬號密碼,先用密碼登錄的方式進行設置,然後才能用 ssh 方式進行免密登錄.

一般情況下,密碼都是自己設置的,如果不清楚默認密碼是多少可以詢問雲服務器廠商或者選擇重設密碼,這裡不再贅述,假設你已經知道服務器密碼並且知道服務器公網 ip.

下面我們將會在本機客戶端的命令行中遠程登錄雲服務器,從最簡單方便的密碼登錄到無密碼的密鑰登錄再到最後的別名登錄,快點跟著我一起動起來吧!

友情提示: 請確保服務端已開啟 sshd 服務和本地客戶端命令行中支持 ssh 協議,否則還是先收藏起來以後再看吧!

密碼登錄

打開熟悉的命令行終端,運行 ssh @ 服務器公網> 登錄賬號> 命令直接登錄遠程雲服務器.

$ ssh [email protected]
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the ECDSA key sent by the remote host is
SHA256:/RJ5aI+c41Brr1dcBMhdNHQJa7daP+8fbupqsGmHRHc.
Please contact your system administrator.
Add correct host key in /c/Users/Administrator/.ssh/known_hosts to get rid of this message.
Offending ECDSA key in /c/Users/Administrator/.ssh/known_hosts:5
ECDSA host key for 121.40.223.69 has changed and you have requested strict checking.
Host key verification failed.

因為我的域名 snowdreams1006.cn 已經備案成功並且做了域名解析,所以這裡我可以直接用域名而不是 ip,說白了還是因為懶,誰讓 ip 記不住呢!

如果你沒有遇到上述提示,恭喜你,可以接著輸入賬號密碼就可以登錄到服務器了!

如果你和我一樣遇到這種問題,很可能是之前登陸過服務器,不過後來服務器又重裝系統,導致無法登錄,可以清除本機 ~/.ssh/known_hosts 重新登錄.

rm -rf ~/.ssh/known_hosts

強制刪除 ~/.ssh/known_hosts 文件後重新 ssh [email protected] 登錄到遠程雲服務器,按照提示選擇繼續連接 yes ,然後輸入自己的密碼 password ,登錄成功後默認進入到家目錄.

$ ssh [email protected]
The authenticity of host 'snowdreams1006.cn (*.*.*.*)' can't be established.
ECDSA key fingerprint is SHA256:/**********************************.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'snowdreams1006.cn,*.*.*.*' (ECDSA) to the list of known hosts.
[email protected]'s password:
Last login: *** from *.*.*.*

Welcome to Alibaba Cloud Elastic Compute Service !

[root@snowdreams1006 ~]#

來都來了,不留下點什麼東西不好不意思跟別人說過自己曾將來過,那就隨便意思意思好了.

  • 悟空到此一遊
[root@snowdreams1006 ~]# whoami
root

whoami 我是誰: 查看正在登錄用戶名稱

[root@snowdreams1006 ~]# pwd
/root

pwd 我在哪: 打印當前目錄路徑

[root@snowdreams1006 ~]# who -u
root tty1 2019-11-29 21:05 舊的 596
root pts/0 2019-11-30 14:15 . 17506 (115.217.243.122)
root pts/1 2019-11-30 14:28 00:05 17533 (115.217.243.122)

who -u 還有誰: 打印系統登錄用戶

[root@snowdreams1006 ~]# last -a | head -6
root pts/1 Sat Nov 30 14:28 still logged in 115.217.243.122
root pts/0 Sat Nov 30 14:15 still logged in 115.217.243.122
root pts/0 Sat Nov 30 13:10 - 13:51 (00:41) 115.217.243.122
root pts/0 Sat Nov 30 12:24 - 12:25 (00:00) 115.217.243.122
root pts/1 Fri Nov 29 22:08 - 23:12 (01:03) 112.17.241.55
root pts/0 Fri Nov 29 21:33 - 22:13 (00:39) 112.17.241.55

last -a | head -6 最後是誰: 打印最後登錄用戶

  • 好像不認識你

如果發現登錄用戶除了自己還有別人或者不記得自己其他終端登陸過沒有退出,這時候應該踢出這些登錄終端.

如果要踢出別人,首先要自己登錄的終端終端中哪個是自己,不能自己把自己踢了,那就好笑了!

whoami 僅僅打印登錄名,沒有登錄終端信息,但是 who am i 展示信息就相對多了,這裡要記住當前用戶登錄終端的名稱!

[root@snowdreams1006 ~]# who am i
root pts/0 *** (*.*.*.*)

who am i : 我是誰,比 whoami 顯示的信息更多.

who -u 可以展示全部登錄用戶,不過這裡推薦使用 w 查看登錄用戶終端信息,因為敲入的命令更少!

[root@snowdreams1006 ~]# w 

14:53:04 up 17:48, 3 users, load average: 0.00, 0.01, 0.05
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root tty1 五21 17:46m 0.00s 0.00s -bash
root pts/0 115.217.243.122 14:15 0.00s 0.81s 0.00s w
root pts/1 115.217.243.122 14:51 1:37 0.00s 0.00s -bash

who -u 和 w 都可以查看登錄用戶終端信息,pts/0 是當前登錄終端,其他終端 pts/1 就可以被踢掉了.

# pkill -kill -t pts/1

pkill -kill -t pts/ 序號> 踢出登錄終端後,被踢出的終端則會自動退出顯示連接已關閉.

[root@snowdreams1006 ~]# w
14:58:46 up 17:53, 2 users, load average: 0.00, 0.01, 0.05
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root tty1 五21 17:52m 0.00s 0.00s -bash
root pts/0 115.217.243.122 14:15 6.00s 0.83s 0.00s w

w : 有誰,踢出其他終端後再次查看登錄終端發現確實沒有 pts/1 了,證明操作成功!

  • 回家洗洗睡吧

登錄到服務器查看了一些信息,併成功踢出了其他終端,天已經黑了,是時候洗洗睡了,這時候需要退出服務器回到本地客戶端的命令行.

[root@snowdreams1006 ~]# exit
登出
Connection to ssh.snowdreams1006.cn closed.

除了敲入命令 exit 還可以敲入快捷鍵 Ctrl+D 退出連接.

密鑰登錄

一般來說,使用密碼登錄的方式更加適合不常用的場合,偶爾用終端登錄一下沒什麼問題,如果是經常性需要登錄到遠程服務器的話,每次連接都需要登錄就比較費事了.

既然不用密碼登錄,那怎麼證明自己的身份以保證合法性登錄請求呢?

這裡就要用到密鑰代替密碼進行登錄,首先在本機客戶端生成一種認證信息,然後將這種認證信息安裝到遠程服務器中,只要完成這種操作就意味著下一次來自該客戶端的登錄請求都是合法的,不然服務端怎麼會有你的認證信息?

所以,可以猜想的是,即使是相同的賬號,如果使用的是不同的認證信息,那麼遠程服務器還是會已保存的認證信息為準,比如你的 Mac 已經實現免密登錄,但是你的 Windows 由於並沒有上傳自己的認證信息,所以免密登錄只對 Mac 有效!

當然,如果 Mac 和 Windows 電腦的認證信息是一樣的,那麼服務器保存一份是不是可以免密登錄了呢?

答案是: 正確的!

由此可見,密鑰登錄是針對終端設備而言的,特別適合常用的終端,偶爾性的電腦前往不要設置密鑰,不然哪天你忘記了,人家都能直接登錄你的服務器,多可怕!

所以,要完成免密登錄,需要兩個操作,一是本地客戶端生成認證文件,二是遠程服務器保存該認證文件.

  1. 本地客戶端生成公鑰
$ cat ~/.ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC0gC0u4gR4oba4oHS59Tcc4eAVkaJHsCmys0v4IupoSLQKkdUJVxSfkmL5JZEkr7JNySD7Y52ukRcxx1ZMW0oK7lq+FvfEwzIfAOqVoM4bCoh2D/iC6Xf43ilxCM6oMhpWyITGtxPVzW/ZmmxRGcQzeVrrvoSLhOt0+L0rvFuiQZmnhkV0zqGTRKTQ5uEKycigfdItEaHFIg9fMxugN/bgeflJoEBZjAJHXkqd0mq/4AqeAbkoruEz6D+OiqBhoN8CsbaPCaccMoKd8Tze5UszC3PsQWo96nQoXMXk7HYoFwvJCAgAfKP0CaTwGEK/D7SFvXm3UMlFwAHxELr2bbTv [email protected]

~/.ssh/id_rsa.pub 文件被稱為公鑰,即用於發送給服務器的認證文件,可以公開到互聯網,只要服務器保存該公鑰,那麼生成該公鑰的本地客戶端就能免密連接到服務器.

如果你的本地客戶端沒有該文件,可以使用 ssh-keygen -t rsa 生成一份,按照提示輸入相關的信息即可,然後再次運行 cat ~/.ssh/id_rsa.pub 就能查看公鑰文件的具體內容了.

  1. 遠程服務器接收公鑰

本地客戶端將自己的公鑰文件內容追加到遠程服務器的授權文件中就能完成免密登錄,那麼問題來了,公鑰文件保存在哪呢?

答案是: ~/.ssh/authorized_keys

[root@snowdreams1006 ~]# cat ~/.ssh/authorized_keys 
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC0gC0u4gR4oba4oHS59Tcc4eAVkaJHsCmys0v4IupoSLQKkdUJVxSfkmL5JZEkr7JNySD7Y52ukRcxx1ZMW0oK7lq+FvfEwzIfAOqVoM4bCoh2D/iC6Xf43ilxCM6oMhpWyITGtxPVzW/ZmmxRGcQzeVrrvoSLhOt0+L0rvFuiQZmnhkV0zqGTRKTQ5uEKycigfdItEaHFIg9fMxugN/bgeflJoEBZjAJHXkqd0mq/4AqeAbkoruEz6D+OiqBhoN8CsbaPCaccMoKd8Tze5UszC3PsQWo96nQoXMXk7HYoFwvJCAgAfKP0CaTwGEK/D7SFvXm3UMlFwAHxELr2bbTv [email protected]

這裡可以看出,遠程服務器的 ~/.ssh/authorized_keys 內容包含了本地客戶端的 ~/.ssh/id_rsa.pub 公鑰內容.

所以接下來的動作就是複製粘貼的操作,複製本地客戶端的 ~/.ssh/id_rsa.pub 公鑰文件內容,粘貼到遠程服務器的 ~/.ssh/authorized_keys 文件中.

只不過這裡需要用到 vim 操作,這也是對於新手來說唯一的挑戰了,但是我們還有神器來簡化這種複製粘貼操作!

那就是: ssh-copy-id [email protected]

首先確保本地客戶端已經生成公鑰,這裡查看一下公鑰文件的內容: cat ~/.ssh/id_rsa.pub

$ cat ~/.ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC1UGGBXbqINEfQNCweCOWDlqvRfw3iIqkX9UnI71GgyJkkPUZbycw3L4dVeBkpo76OJjJhJmsAGbHAuhYLloqoNjD9+c/hk7vgP0uZHqVXehqKuP5VvOOkqeLXZkjdXQ49MhARHBVm1LaD44iOOneYclSPiRjKs+6eCxU9SQp+dVUcZMrbAE1lktGgDQEkjtFl8BE9BQkCU24r8xcOUix4iZgdDIa5gnE9YLg1rNXO6LgQG61JLvErrc2g7KkkR4i2P1R+0uV3KdYyMv8Y2aYwYGqY1PjqXUVfaJjTor4Dr8HHBp4VHE3kNVZitLJ2S7RFYuYGFXTEX0xmi6o1r5xP Administrator@snowdreams1006

這裡是 Windows 電腦,演示前並沒有配置免密登錄,所以執行完 ssh-copy-id [email protected] 應該也像 Mac 電腦一樣支持免密登錄.

$ ssh-copy-id [email protected]
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/c/Users/Administrator/.ssh/id_rsa.pub"
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
[email protected]'s password:

Number of key(s) added: 1

Now try logging into the machine, with: "ssh '[email protected]'"
and check to make sure that only the key(s) you wanted were added.

這裡接著用已經免密登錄到遠程服務器的 Mac 電腦驗證一下,Windows 電腦的公鑰是否已經添加到遠程服務器的 ~/.ssh/authorized_keys .

[root@snowdreams1006 ~]# cat ~/.ssh/authorized_keys 
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC0gC0u4gR4oba4oHS59Tcc4eAVkaJHsCmys0v4IupoSLQKkdUJVxSfkmL5JZEkr7JNySD7Y52ukRcxx1ZMW0oK7lq+FvfEwzIfAOqVoM4bCoh2D/iC6Xf43ilxCM6oMhpWyITGtxPVzW/ZmmxRGcQzeVrrvoSLhOt0+L0rvFuiQZmnhkV0zqGTRKTQ5uEKycigfdItEaHFIg9fMxugN/bgeflJoEBZjAJHXkqd0mq/4AqeAbkoruEz6D+OiqBhoN8CsbaPCaccMoKd8Tze5UszC3PsQWo96nQoXMXk7HYoFwvJCAgAfKP0CaTwGEK/D7SFvXm3UMlFwAHxELr2bbTv [email protected]
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC1UGGBXbqINEfQNCweCOWDlqvRfw3iIqkX9UnI71GgyJkkPUZbycw3L4dVeBkpo76OJjJhJmsAGbHAuhYLloqoNjD9+c/hk7vgP0uZHqVXehqKuP5VvOOkqeLXZkjdXQ49MhARHBVm1LaD44iOOneYclSPiRjKs+6eCxU9SQp+dVUcZMrbAE1lktGgDQEkjtFl8BE9BQkCU24r8xcOUix4iZgdDIa5gnE9YLg1rNXO6LgQG61JLvErrc2g7KkkR4i2P1R+0uV3KdYyMv8Y2aYwYGqY1PjqXUVfaJjTor4Dr8HHBp4VHE3kNVZitLJ2S7RFYuYGFXTEX0xmi6o1r5xP Administrator@snowdreams1006

可以看到,遠程服務器已經保存了 Windows 電腦剛剛上傳的公鑰文件內容,所以說 ssh-copy-id 簡直就是神器,再也不用手動複製粘貼公鑰了!

至於登陸後可以做什麼,我想你還是可以到此一遊,順便再踢出其他終端之類的,最後別忘了退出登錄 exit 命令喲!

別名登錄

無論是密碼登錄還是密鑰登錄,我們都是採用 ssh 協議進行登錄,而密鑰登錄的配置也是依賴於密碼登錄,不管怎麼說,兩者敲入的命令都不少!

怎不能快速登錄呢?

答案是: 可以的!

既然想要快速登錄,但是登錄信息肯定是必不可少的,所以無外乎是將必要的登錄信息寫到配置文件中,登錄時再讀取配置文件進行登錄.

原理很好理解,關鍵是實現過程需要我們自己去實現麼?

幸運的是: 不需要!

同樣地,編輯 ssh 的配置文件設置一些登錄信息即可,配置文件的位於 ~/.ssh/config .

Host 
User
HostName

按照上述格式,將登錄信息配置如下:

Host github.com
User snowdreams1006
Hostname ssh.github.com

Host snowdreams1006.cn
User root
Hostname ssh.snowdreams1006.cn

其中 Host 是對外暴露的唯一標識,通過 Host 就可以代替賬號和 ip 了,兩個變成一個是不是簡化了呢?

原來的登錄命令是 ssh @ 服務器公網> 登錄賬號> 而現在則是 ssh 主機>

$ ssh snowdreams1006.cn
Last login: **** from *.*.*.*

Welcome to Alibaba Cloud Elastic Compute Service !

[root@snowdreams1006 ~]#

圖形化登錄

推薦 SecureCRT 圖形化工具遠程連接 Linux 實例,圖形化工具基本上很容易上手,配置一下就可以登錄成功了,這裡已 Windows 電腦為例演示一下相關過程.

首次登錄後會彈出快速連接配置,基本上是關於服務域名端口之類的,並沒有密碼的配置項.

從零開始搭建服務器之登錄和登出遠程服務器

點擊連接後會彈出是否加入主機指紋之類的,選擇接受並保存.

從零開始搭建服務器之登錄和登出遠程服務器

輸入密碼後選擇確定,過一會就連接到服務器了.

從零開始搭建服務器之登錄和登出遠程服務器

來都來了,還是隨便敲個命令再走吧!

從零開始搭建服務器之登錄和登出遠程服務器

雲服務登錄

登錄控制檯找到 ECS 服務器 ,然後找到自己的雲服務器,因此遠程連接->連接密碼->用戶名/密碼,然後就可以登錄成功了!

從零開始搭建服務器之登錄和登出遠程服務器

回顧總結

密碼登錄和密鑰登錄兩者均存在適合場景,如果覺得密碼登錄不安全的話,也可以禁用密碼登錄只保留密鑰登錄!

遠程登錄到服務器,找到 /etc/ssh/ssh_config 文件並編輯如下內容來禁用密碼登錄.

Host *
PasswordAuthentication no
  • 密碼登錄
$ ssh @

ssh [email protected]

  • 密鑰登錄
$ ssh @

ssh [email protected]

  • 簡化登錄
$ ssh 

ssh snowdreams1006.cn

閱讀更多

  • https://www.cnblogs.com/DiDiao-Liang/articles/8283686.html
  • https://blog.csdn.net/watsy/article/details/12611919
  • https://www.cnblogs.com/Cherry-Linux/p/11129334.html
  • https://blog.csdn.net/li528405176/article/details/82810342
  • https://juejin.im/post/5da724506fb9a04e2a73d96c
  • https://juejin.im/post/5dad7681f265da5bb86ad2f5
  • https://blog.csdn.net/wzzfeitian/article/details/9321027
  • https://www.jianshu.com/p/983f2f226579
  • https://www.jianshu.com/p/2bfd1fbf31bc

如果你覺得本文對你有所幫助,歡迎點贊評論和轉發,來一波素質三連吧! 偷偷告訴你,點擊瞭解更多可以獲得最佳閱讀體驗喲!


分享到:


相關文章: