SSH
設定ssh server [Ubuntu]
先安裝一下 SSH server
sudo apt-get install -y ssh openssh-server
安裝後可以修改一些 ssh 內的設定,例如port (可以換成非22), 是否允許用密碼認證? 以及是否允許root登入?
/etc/ssh/sshd_config
Port 22
PasswordAuthentication yes
PermitRootLogin yes
更改完存檔之後,重啟服務。
指令:
/etc/init.d/ssh restart
免輸入密碼
用public key登入
ssh-copy-id -i (user name)@(IP)
用別名快速登入遠端機器
個人覺得這個技巧非常實用且對Linux不是很熟悉的人來說很酷,普遍都知道說如果使用ssh登入的話, 不外乎就是ssh (username)@(ip) 頂多加個port number。但此技巧可以用別名來代替直接做登入。 在終端器上可以不必在輸入IP與username等資訊,如果再搭配免密碼登入,基本上就是一秒登入遠端設備,真的是相當實用!
步驟
- 先於
.ssh/config
內來設定連線的 Hosts 資訊。
.ssh/config
ServerAliveInterval 60
Host Chieh-PC
HostName 10.1.2.10
Port 22
User chieh
Host旁邊是給一個代表名稱,HostName區域輸入IP,Port是ssh連入的port,User是User name。
- 儲存。我們直接於終端器上輸入
ssh Chieh-PC
,就可以成功登入遠端伺服器啦!
使用A電腦作為跳板,連進到B電腦
概念像下圖:
一樣在.ssh/config
裡面做設定。
而這邊的A電腦是則是Chieh-PC,由於可能是網路設定因素,並不開放由外部可以直接連入B電腦,但是可以藉由A電腦的內部網路連進去。
那我們設定好A電腦(Chieh-PC)的資訊,則在B電腦的設定資訊下方,指定ProxyJump
是使用A電腦(Chieh-PC)作為登入就就完成設定了。
.ssh/config
ServerAliveInterval 60
Host Chieh-PC
HostName 10.1.2.10
Port 22
User chieh
Host B-Computer
HostName 10.1.2.100
User user
ProxyJump Chieh-PC