这样就能摆脱安装 JuiceSSH 的桎梏了。

环境

  • Android:Termux 0.118.0
  • Server:Debian 11

安装 ssh

Termux

1
pkg install openssh -y

Server

1
sudo apt install openssh-client openssh-server -y

普通连接

Server 开启 ssh

1
sudo /etc/init.d/ssh start

准备好 Server 的 ip:

1
ifconfig

Termux 连接

Termux 中执行下述代码后输入 user_name 的登录密码即可完成连接:

1
ssh user_name@ip_address

免密和免 ip 登录

有没有觉得每次登录都要输入密码和 ip 地址很麻烦?幸好 ssh 提供了免密和免 ip 登录的方法!

Termux 中执行下述代码在 ~/.ssh/ 中生成公私密钥:

1
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa

参数说明:

  • -t 加密算法类型,这里是使用 rsa 算法
  • -P 指定私钥的密码,不需要可以不指定
  • -f 指定生成秘钥对保持的位置

Termux 中执行下述代码将公钥发给 Server,之后执行 ssh user_name@ip_address 后不需要输入密码:

1
ssh-copy-id user_name@ip_address

Termux 中新建或打开 ~/.ssh/config 文件,添加以下内容:

1
2
3
4
5
6
Host server_name                   # ssh 连接的服务器别名(自己任意取即可)
HostName server_ip # Linux 的 ip 地址
Port 22 # 默认即可
User user_name # Server 端用户名
PreferredAuthentications publickey # 默认即可
IdentityFile ~/.ssh/id_rsa # 第一步生成的私钥地址,这是默认值

执行 ssh server_name 后即可完成连接!

一键更新博客并推送到 Github 远程库:

1
chattr -i /www/wwwroot/hexo-new/public/.user.ini && rm -rf /www/wwwroot/hexo-new/public && hexo g && git add . && git commit -m "vpsup" && git push

如果报错,试试:

1
rm -rf /www/wwwroot/hexo-new/public && hexo g && git add . && git commit -m "vpsup" && git push

删除旧密钥:

1
ssh-keygen -f  "/root/.ssh/known_hosts" -R ip_address
  • -f filename 指定密钥文件名;
  • -R hostname 从 known_hosts 文件中删除所有属于 hostname 的密钥;
  • 也可以去掉 -f 的内容,写成这样:
1
ssh-keygen -R ip_address