如何通過SSH讓服務器遠程執行命令?

如何通過SSH讓服務器遠程執行命令?

0x00 前言

我有一塊Pi,掛着個服務,但是這服務只要長時間沒有通訊就會自己掛起。試着用crontab每小時自動重啓,有時候還是得手動重啓服務。

所以,我想幹脆每次打開終端要用的時候啓動一下得了。

但是每次SSH,輸密碼,執行命令太麻煩了,就想着能不能只用一條命令完成這件事。

0x01 SSH執行命令

看了下手冊,通過SSH執行命令,其實只要在主機名後面加個命令就完了。

ssh  reboot

0x02 免密登入

遠程執行命令ok了,那就得解決一下免密登入了。

這個SSH也有自帶工具可以解決。

先在主機通過ssh-keygen生成公鑰私鑰對

ssh-keygen

一路回車,然後公鑰就默認保存在~/.ssh/id_rsa.pub了。

然後把公鑰拷到服務器的~/.ssh/authorized_keys文件

ssh-copy-id -i ~/.ssh/id_rsa.pub

接着就能免密連接服務器,免密遠程執行命令了。

不過每次打一大串命令還是麻煩,有沒有辦法一句話完成呢?

0x03 命令別名

不知道alias怎麼翻譯,不過大概是別名的意思。

編輯~/.bashrc,這個文件會在你每次打開終端的時候自動執行。

在末尾加上一句

alias lalala="ssh reboot"

接着只要在終端打lalala,服務器就重啓了。

這裏的reboot換成你要執行的命令就可以了。

ssh

相关推荐