废话
之前一直使用 Termius 连接服务器,但 Termius 收费用太贵了,每月 10 美元,合70块一个月,免费的才符合真香定律。
我用 Termius,主要用多端同步功能(不想背电脑回家啊)。最近,同事推荐 Electerm。支持 SSH、Telnet、Serial,还有 SFTP 。
Electerm 还原生支持 lrzsz(Mac 上配置 lrzsz,太费劲了),用跳板机的同学应该清楚,rz\\sz。
项目地址:https://github.com/electerm/electerm
Electerm 界面示例:
Electerm同步配置概览
Electerm 支持以下同步方式:
- GitHub(Gist同步)
- Gitee(Gist同步)
- Cloud(作者提供的云服务)
- Custom(自建同步服务器)
其中,GitHub 和 Gitee 模式需要申请 Token 和创建 Gist, ID、Token 总是丢
相比之下,自建(Custom)服务器 数据自己存,公司的有些秘钥我也不敢存别的地,万一呢,还是在公司服务器上搞个小服务,嘿嘿,以后那都不是我的锅。
Electerm 同步设置界面如下:
Electerm同步服务器搭建教程(Java版)
1. 服务端项目列表
Electerm 官方提供了多种语言版本的同步服务器端程序,任选其一:
- electerm-sync-server-kotlin
- electerm-sync-server-vercel
- electerm-sync-server-rust
- electerm-sync-server-cpp
- electerm-sync-server-java
- electerm-sync-server-node
- electerm-sync-server-python
- electerm-sync-server-deno
- electerm-sync-server-go
👉 我选的 Java 版本部署,这玩意我熟,其他版本配置方式大差不差,会编译就行。
2. 部署步骤
安装JDK
sudo apt install openjdk-17-jdk
克隆项目
git clone https://github.com/electerm/electerm-sync-server-java.git
cd electerm-sync-server-java
配置环境变量
# 拷贝示例配置文件
cp sample.env .env
# 编辑.env文件
vim .env
.env 文件关键配置说明:
# 服务器端口
PORT=7837
# 服务器绑定地址(如需公网访问,设置为0.0.0.0)
HOST=0.0.0.0
# JWT秘钥(请务必修改为自己的秘钥)
JWT_SECRET=请修改为复杂且唯一的密钥
# 例: JWT_SECRET=283ert544trggger283ert544trggger283ert544trggger283ert544trggger283ert544trggger283ert544trggger
# 允许登录的用户名(逗号分隔)
JWT_USERS=username1,username2
# 数据存储路径(按需设置)
FILE_STORE_PATH=/home/your-folder
编辑完毕后,按 Esc,输入 :wq 保存退出。
本地试运行
# 赋予gradlew可执行权限
chmod +x gradlew
#运行
./gradlew run
如果看到如下输出,说明启动成功,这时候看后面的 客户端配置 可以试着连一下
01:01:03.197 [Thread-0] INFO org.eclipse.jetty.server.Server – Started @482ms
按下 Ctrl+C 停止运行。
打包正式运行
# 编译项目
./gradlew build
# 进入打包目录
cd build/distributions
# 解压程序
unzip electerm-sync-server-java.zip -d /opt
拷贝配置文件:
cp ../../.env /opt/electerm-sync-server-java/bin/.
创建日志目录:
cd /opt/electerm-sync-server-java
mkdir logs
启动服务:
cd bin
nohup ./electerm-sync-server-java > ../logs/out.log 2>&1 &
查看日志,确认启动成功:
tail -f ../logs/out.log
客户端配置
- API Url : http:// 服务器地址:端口号/api/sync
- JWT Secret : 服务端.env 文件中JWT_SECRET 值
- User ID : 服务端.env 文件中 JWT_USERS 其中之一
- 加密密码: 随便写个 自己能记得住的
配置完成后点击保存 ,不出意外的话就成功了。
不放心再去服务器 .env 内FILE_STORE_PATH 配置的路径里面看看 是不是有json文件
如果有问题可以留言,尽量自己找,服务端代码很简单,没什么可能出错。基本上都是配置错了,网络不通等问题
评论前必须登录!
注册