2024 年了, macOS 上最好用的 SSH 工具是啥?

2023-11-07 18:19:26 +08:00
 alanying

不瞒大家说,我 VMWare Fusion + XShell

但是感觉太厚重了。

6232 次点击
所在节点    SSH
50 条回复
ethanpeng
2023-11-08 08:41:47 +08:00
royal tsx
dddd1919
2023-11-08 08:45:43 +08:00
别折磨自己,换 win 吧
Dlin
2023-11-08 09:06:31 +08:00
我用的自带的终端,。感觉挺好用啊
winterbells
2023-11-08 09:07:52 +08:00
@dddd1919 用了一个月 mac 还是觉得 Windows 好用 ==

termius 的 SFTP 干吗只能显示半屏,也没有目录列表…
zfy941
2023-11-08 09:09:44 +08:00
你的方案让我震惊
我用 termius 和 iterm2 两个都用
ultimate42
2023-11-08 09:10:23 +08:00
warp
RudyS
2023-11-08 09:14:02 +08:00
我能说当初买 mac 的一部分原因就是自带 terminal 吗,实在不想在 windows 上折腾。
Terry166
2023-11-08 09:46:49 +08:00
item2 / mac 自带 terminal / vs code terminal
poisedflw
2023-11-08 09:49:25 +08:00
自己写的脚本,可以放在:/usr/local/bin/xxx
```
#!/bin/bash

# https://gist.github.com/pkuczynski/8665367
parse_yaml() {
local prefix=$2
local s='[[:space:]]*' w='[a-zA-Z0-9_]*' fs=$(echo @|tr @ '\034')
sed -ne "s|^\($s\)\($w\)$s:$s\"\(.*\)\"$s\$|\1$fs\2$fs\3|p" \
-e "s|^\($s\)\($w\)$s:$s\(.*\)$s\$|\1$fs\2$fs\3|p" $1 |
awk -F$fs '{
indent = length($1)/2;
vname[indent] = $2;
for (i in vname) {if (i > indent) {delete vname[i]}}
if (length($3) > 0) {
vn=""; for (i=0; i<indent; i++) {vn=(vn)(vname[i])("_")}
printf("%s%s%s=\"%s\"\n", "'$prefix'",vn, $2, $3);
}
}'
}

config_yml=$HOME/secret/server.yml

echo "欢迎使用快捷登录软件"

eval $(parse_yaml "${config_yml}" config_)

select server in $config_server; do
if [ ! -z "$server" ];then
break;
fi
done

# 都是一些默认值
port=config_${server}_port
port=${!port}
if [ -z "$port" ];then
port=22
fi

hostname=config_${server}_hostname
hostname=${!hostname}
if [ -z "$hostname" ];then
echo "不存在服务器配置,自动退出\n"
exit 0
fi

username=config_${server}_username
username=${!username}
if [ -z "$username" ];then
username=root
fi

password=config_${server}_password
password=${!password}

# 证书信息
pem=config_${server}_pem
pem=${!pem}

cmd="-o ServerAliveInterval=60 -p $port $username@$hostname"
if [ ! -z "$pem" ];then
cmd="-i ${pem} ${cmd}"
fi

# 跳板机
# ssh -J user1@host1:port1,user2@host2:port2 user3@host3:port3
proxy_jump=config_${server}_proxy_jump
proxy_jump=${!proxy_jump}
if [ ! -z "$proxy_jump" ]; then
cmd="-J ${proxy_jump} ${cmd}"
fi

# 加上 scp 前缀
cmd="ssh ${cmd}"

if [ ! -z "$password" ];then
cmd="sshpass -p ${password} ${cmd}"
fi

echo $cmd

eval $cmd
```
配置文件放在:$HOME/secret/server.yml
```
server name1 name2
name1:
hostname: 127.0.0.1
port: 22
username: root
password: 123456
pem: /path/to/xxx.pem
proxy_jump: 192.168.0.1:444
name2:
...
```
idontnowhat2say
2023-11-08 10:12:34 +08:00
不太理解有什么折腾的必要。10 台以内 完全 iterm2 + ssh config 文件就可以搞定。100 台以内随便找个客户端就行。超过 100 台就考虑堡垒机了。
Shunichi
2023-11-08 10:31:51 +08:00
vscode + remote-ssh
lifei6671
2023-11-08 10:37:17 +08:00
我说一个冷门收费的,zoc terminal 。界面比较复古,但是功能确实强大。
qingshui33
2023-11-08 10:42:48 +08:00
item2 ,或者 alacritty ,第二个感觉会就轻量点,后面就逐步没有再用 item2 了
zhdi
2023-11-08 13:17:58 +08:00
@kanchi240 直接写 ssh config 就可以了,然后配置好 key ,每次 ssh + 设置好的短名,还嫌麻烦就 alias 一下
wuyiccc
2023-11-08 13:19:43 +08:00
royal tsx
bohai
2023-11-08 13:32:42 +08:00
SecureCRT [旺柴]
kevinroot
2023-11-08 13:41:44 +08:00
iterm2 + alfred 自己写的 ssh 插件,比如 cmd + 空格输 ssh test 自动连上 test 环境服务器,插件脚本主要用的是 /usr/bin/expect
xycool
2023-11-08 13:49:58 +08:00
warp
ZekeChin
2023-11-08 14:26:24 +08:00
推荐一下自己写的小东西 https://github.com/Zeke-chin/ssh_auto_connect
swap123
2023-11-08 14:55:19 +08:00
SecureCRT

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://tanronggui.xyz/t/989621

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX