M1 iTerm2 Telnet URL

iTerm2

工作中会需要使用EVE-NG做网络模拟。EVE-NG是一个BS架构的模拟平台,已经有成熟的Html5界面,但是对一些命令行的复制、黏贴、批量编辑并不友好。同时平台的legacy登陆方式是允许使用其他终端软件直接连接虚拟的网络设备。

在Mac OS下已经去除了原生telnet命令行支持,这里可以通过关闭SIP创建软连接或者单独安装telnet。为了考虑系统安全以及完成性,我通过Homebrew单独安装telnet。

安装ARM版本Homebrew(参照sspai)

根据官方规划,ARM 版 Homebrew 必须安装在 /opt/homebrew 路径下,而非此前的 /usr/local/Homebrew。由于官方的安装脚本还未更新,可以通过如下命令手动安装:

cd /opt # 切换到 /opt 目录
mkdir homebrew # 创建 homebrew 目录
curl -L https://github.com/Homebrew/brew/tarball/master | tar xz --strip 1 -C homebrew

注: 如果安装和使用过程中报错,可能是因为当前用户对于 /opt/homebrew 路径没有权限。对此,可以通过 sudo chown -R $(whoami) /opt/homebrew 接管该目录。)

注: 如果安装和使用过程中报错,可能是因为当前用户对于 /opt/homebrew 路径没有权限。对此,可以通过 sudo chown -R $(whoami) /opt/homebrew 接管该目录。)

虽然上面的步骤已经安装了 ARM 版 Homebrew,但此时在终端中运行 brew 命令并不能直接启动该版本。这是因为默认情况下,ARM 版 Homebrew 用来安装程序的路径 /opt/homebrew/bin 并不在环境变量 PATH 中,因此终端无法检索到该路径下的 brew 程序。

为此,编辑配置文件 ~/.zshrc,加入如下内容:

path=('/opt/homebrew/bin' $path)
export PATH

注: 本文推定读者使用 macOS Big Sur 的默认终端 zsh,如使用 bash 或 fish,则修改 ~/.bashrc~/.config/fish/config.fish,后同。)

然后重新启动终端。这样,直接执行 brew 就可以启动 ARM 版的 Homebrew 了。

安装Telnet

使用 homebrew 安装telnet

brew install telnet

打开iTerm2终端输入telnet

$ telnet
telnet>

能够正常调用说明已经成功安装Telnet

配置iTerm2

在iTerm2的preference>profiles>general下新建一个profile专门用于处理Telnet类型的URL。这里需要让iTerm2直接调用homebrew安装的Telnet,所以在Command选项下选择Command并输入/opt/homebrew/bin/telnet $$HOST$$ $$PORT$$。下方的URL Schemes选项内选择telnet。

iTerm2-telnet

comments powered by Disqus