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

Posted rpish

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何通過SSH讓服務器遠程執行命令?相关的知识,希望对你有一定的参考价值。

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

0x00 前言

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

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

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

0x01 SSH執行命令

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

ssh root@192.168.1.6 reboot

0x02 免密登入

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

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

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

ssh-keygen

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

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

ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.1.6

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

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

0x03 命令別名

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

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

在末尾加上一句

alias lalala="ssh root@192.168.1.6 reboot"

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

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

以上是关于如何通過SSH讓服務器遠程執行命令?的主要内容,如果未能解决你的问题,请参考以下文章

linux 上安裝lnmp

在Centos雲服務器上架設python3.6環境

blockstack.js 教程:如何在blockstack上寫壹個區塊鏈“臉書” 程序

Tomcat服務器部署是返回下一步完成变成灰色如何解决

ajax ready

nginx部署