前言
为了方便调试和开发,我需要用我的Mac笔记本远程调用Ubuntu20主机,来跑Ubuntu上的程序.
采取的方案使用过VSCode的SSH远程连接来调用Ubuntu的环境.
环境
一台Mac笔记本,一台Ubuntu20主机.
配置
一、台式机(Ubuntu)基础配置
启用SSH服务(若未安装)
1
2
3
4
5
6
7sudo apt update
sudo apt install openssh-server -y
sudo systemctl enable --now ssh
sudo ufw allow 22 # 如果启用了防火墙
sudo ufw disable # 关闭防火墙
#sudo ufw status # 查看防火墙状态
#sudo ufw enable # 开启防火墙检查SSH服务状态
1
sudo systemctl status ssh
应看到
"Active: active (running)"获取本机IP(用于后续连接)
1
ip a | grep "inet " | grep -v "127.0.0.1"
输出示例:
192.168.1.100
或者使用ifconfig命令查看.
二、Mac端SSH密钥配置
生成密钥对(在Mac终端执行)
1
ssh-keygen -t ed25519 -C "mac_to_ubuntu"
按回车接受默认存储路径:
/Users/你的用户名/.ssh/id_ed25519
建议设置密码短语(可选但更安全)查看公钥内容(复制后面要用)
1
cat ~/.ssh/id_ed25519.pub
输出示例:
ssh-ed25519 AAAAC3Nz... mac_to_ubuntu将公钥上传到台式机
1
ssh-copy-id -i ~/.ssh/id_ed25519.pub 你的ubuntu用户名@台式机IP
示例:
ssh-copy-id -i ~/.ssh/id_ed25519.pub user@192.168.1.100
首次需要输入Ubuntu密码ssh-copy-id -i ~/.ssh/id_ed25519 dong@192.168.3.27测试免密登录
1
ssh -i ~/.ssh/id_ed25519 你的ubuntu用户名@台式机IP
ssh -i ~/.ssh/id_ed25519 dong@192.168.3.27
成功应直接进入Ubuntu终端.
退出终端使用exit命令.
三、VSCode配置
- 安装必要扩展
在VS Code扩展市场搜索安装:Remote - SSHPython(Microsoft官方扩展) - 创建SSH配置文件
在Mac的~/.ssh/config中添加(没有则新建):3.点击左下角1
2
3
4
5Host Ubuntu-Desktop
HostName 192.168.3.27
User dong
IdentityFile ~/.ssh/id_ed25519
IdentitiesOnly yesRemote-SSH: Connect to Host
4.选择Ubuntu-Desktop
即可开始快乐的远程调用了!