在以往連線到別台電腦時,大家都習慣使用telnet。
但由於telnet傳遞資料是使用明碼,萬一被有心人竊聽封包就糟了。
所以後來就出現了ssh這個好東西,可是ubuntu預設只安裝ssh client,
所以無法由遠端使用ssh連線到本機。這時就必須安裝ssh server。
1.更新套件庫:
$sudo apt-get update
2.安裝ssh server
$sudo apt-get install openssh-server
3.觀察ssh有無啟動daemon
$ps ax |grep ssh
4.configuration
$vi /etc/ssh/sshd_config
修改:
PermitRootLogin Yes --> PermitRootLogin No #拒絕遠端使用root登入
#What ports, IPs and protocols we listen for
port 22 #使用哪個port號登入,可改為系統未使用的
5.限制可登入之ip
$sudo vim /etc/hosts.allow
加入:
sshd:xxx.xxx.xxx.xxx :allow # xxx.xxx.xxx.xxx 輸入ip
6.拒絕未設定之ip登入
$sudo vim /etc/host.deny
加入:
sshd:all:deny #拒絕所有ip登入
7.重起daemon
$sudo /etc/init.d/ssh stop
$sudo /etc/init.d/ssh start
使用方式:
1.ssh 帳號@host
2.ssh 帳號@host CMD #ssh過去後執行CMD就回來,結果顯示在本地
3.ssh -p 22 帳號@host #連線時用指定的port
在用了ssh這麼好用的東西後,開始有了更進階的需求,
像是想把本機端的資料丟過去或想把在那邊執行的程式或資料抓回來,
在以前這種需求就要靠ftp之類的資料傳輸方式,可是為了要傳送一時的資料,
又要裝東裝西調整防火牆實在太麻煩,這時依附在ssh上的scp就很好用了
實作如下:
1.scp 來源檔案 目的地 #其中遠端的電腦要加上: 如-192.168.1.1:
#預設不打路徑放在登入帳號的home
沒有留言:
張貼留言