通过交互式界面快速选择服务器并登录 SSH。
- Go 1.24+
- sshpass(macOS:
brew install sshpass)
go build -o /usr/local/bin/sshlogin .首次运行会自动生成示例配置 ~/.sshlogin/servers.json,编辑填入真实信息:
{
"groups": [
{
"name": "生产环境",
"servers": [
{
"name": "Web Server 01",
"host": "192.168.1.10",
"port": 22,
"user": "root",
"password": "your-password"
}
]
},
{
"name": "测试环境",
"servers": [
{
"name": "Test Server",
"host": "10.0.0.5",
"port": 22,
"user": "test",
"password": "$ENV:TEST_SERVER_PASSWORD"
}
]
}
]
}| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| name | string | 是 | 显示名称 |
| host | string | 是 | IP 或域名 |
| port | int | 否 | SSH 端口,默认 22 |
| user | string | 是 | 登录用户名 |
| password | string | 是 | 密码,支持 $ENV:VAR_NAME 从环境变量读取 |
sshlogin- 输入关键字实时搜索(匹配名称、组名、IP、用户名)
↑/↓选择服务器Enter确认登录Esc退出
选中服务器后拼接并执行:
sshpass -p "<password>" ssh -F ~/.ssh/config -p <port> <user>@<host>