如何在苹果MacOS上通过SSH连接谷歌云上的服务器实例并使用SFTP方式上传文件

📌 导读:本文手把手教你在 macOS 上用”终端”通过 SSH 密钥连接谷歌云(GCP)服务器实例,并用 SFTP(FileZilla)上传文件。ssh-keygen 生成密钥、chmod 权限、ssh 登录等命令讲解历久弥新;而谷歌云控制台的界面与菜单可能已多次调整,文中截图为早期版本,请以最新界面与官方文档为准。

前段时间,一位会员用户向我求助做跨境电商应该购买一台什么样的电脑?一开始,我还觉得很诧异,似乎这个问题与跨境电商沾不上半点关系。但每次想到购买电脑这事,早年跑去中关村海龙大厦攒机的情形历历在目。也许是出于信任,也许是真的不知道如何选择,我坦然的推荐了苹果macbook。没过几天,就到香港搞定了一台。

我在《推荐的工具、应用、网站、业务、服务》一文中分享了一些我的macbook使用经历,也真真切切的体验到了macbook的超实用价值。当然,在目前国内绝大部分人习惯了windows的操作模式下,转变使用习惯并不是一件容易的事情。从早年市场调研机构的数据统计看,全球桌面操作系统中,绝大多数用户使用的是 Windows 系统,macOS 的用户占比相对较小,而在中国这一比例则更低(具体数字逐年变化,以权威机构最新公布为准)。显然,我就是那少得可怜的一小部分 macOS 用户中的一个。

如何在苹果MacOS上通过SSH连接谷歌云上的服务器实例并使用SFTP方式上传文件

也许正是因为 macOS 这相对较小的市场份额,时至今日,仍然有不少人把使用 Mac 电脑的行为理解为”装 X”。哔哩哔哩上找到的这个视频可以告诉你一些答案。

如果你是通过开源程序搭建独立自建站的跨境电商卖家、或者需要制作视频内容,通过youtube进行站外引流的,那么,这个苹果的mac系统即能帮你提升很大的工作效率。今天的这篇文章即是教你如何在苹果的 macOS 系统中通过 SSH 连接谷歌云上的服务器实例,以及如何使用 SFTP 方式上传文件到谷歌云服务器上。

不管你是用wordpress搭建博客,还是用WooCommerce、Magento或者OpenCart方式搭建独立自建站,必不可少的需要用到SSH连接到服务器上,执行一些命令,做一些配置调整。如果你使用的是谷歌云开设的服务器 VM 实例,自然也可以直接在浏览器界面中连接 SSH 管理网站。但每次都得打开谷歌云网站,找到实例,打开 SSH,等待 SSH 界面加载完成,似乎有些麻烦且耽误时间。那么,更简单的方法即是直接在 Mac 电脑中打开”终端”,用 ssh 命令远程连接到谷歌云服务器上。

为了能让谷歌云服务器实例和本地电脑直接进行连通,我们需要准备两把钥匙:一个私钥和一个公钥。

1、先从本地 Mac 电脑中通过一段简单的命令生成钥匙;

ssh-keygen -t rsa -f ~/.ssh/gc_rsa -C bitnami

其中,”gc_rsa”为钥匙名称;”bitnami”为服务器的用户名称;(这里服务器安装的是 Bitnami 公司的优化版本,所以默认情况下,用户名即是 bitnami,请根据自己的实际情况修改为自己的服务器用户名。)

执行命令后,会让你输入并确认密码,这里直接回车确认即可。

如何在苹果MacOS上通过SSH连接谷歌云上的服务器实例并使用SFTP方式上传文件

然后输入以下命令进入.ssh目录

cd ~/.ssh

并用ls命令列出当前目录下的文件内容

ls

如何在苹果MacOS上通过SSH连接谷歌云上的服务器实例并使用SFTP方式上传文件

你会找到 gc_rsa 和 gc_rsa.pub 这 2 个文件,这里就获得了我们的两把钥匙,一个私钥 gc_rsa 和一个公钥 gc_rsa.pub。

接下来,我们要把公钥的内容复制到谷歌云的服务器 VM 实例中。用以下命令打开公钥 gc_rsa.pub

vim gc_rsa.pub

你会找到一大串乱码,复制下来。

如何在苹果MacOS上通过SSH连接谷歌云上的服务器实例并使用SFTP方式上传文件

登录谷歌云账户,打开 VM 实例详情,点击修改;(注:谷歌云控制台界面可能已多次调整,下方截图为早期版本,具体入口请以最新界面与官方文档为准。)

在 SSH 密钥相关区域,点击”显示和修改”,并将刚才复制的内容直接粘贴到输入框中,点击保存。

如何在苹果MacOS上通过SSH连接谷歌云上的服务器实例并使用SFTP方式上传文件

回到本地电脑终端界面,给私钥权限;

限制对您的私钥的访问,以便只有您能读取此密钥,且所有人都不可向其写入。

chmod 400 gc_rsa

到这里,连接通道已经打通,我们可以用下面命令尝试登录:

ssh -i gc_rsa bitnami@123.456.789.123

如何在苹果MacOS上通过SSH连接谷歌云上的服务器实例并使用SFTP方式上传文件

这里的”123.456.789.123″是你的谷歌云 VM 实例 IP 地址。

顺利完成!如此一来,管理谷歌云 VM 实例,以后只需要直接打开本地电脑的”终端”即可顺利连接了。

谷歌云官方帮助文档:https://cloud.google.com/compute/docs/instances/adding-removing-ssh-keys?hl=zh-cn

使用SFTP方式上传文件到谷歌云vm实例中

SFTP 类似我们常用的 FTP 服务,主要作用是用来上传文件到服务器中。

💡 想用开源程序搭建外贸独立自建站、却卡在服务器与运维环节?晨飞博客会员区整理了从云服务器选型、SSH 配置到 WordPress/WooCommerce 建站的实操资料与工具,帮你把技术门槛降到最低。 📍 这一步在《晨飞十二年》路线图 · 第 4 站「模式转型期」

这里我们采用 FileZilla 软件进行文件上传。先从 FileZilla 官方网站下载软件。

因为是使用密钥方式来连接谷歌云上的远程服务器,为了工作方便,我们先在本地终端中输入以下代码,把钥匙复制到桌面上来。

cp _gc_rsa.pub ~/Desktop/gc_ras.pub
cp _gc_rsa~/Desktop/gc_ras

如何在苹果MacOS上通过SSH连接谷歌云上的服务器实例并使用SFTP方式上传文件

然后打开 FileZilla 软件,在”菜单 → 设置 → SFTP”中,右侧添加密钥文件,加载桌面上的私钥 gc_ras,确定,保存。

如何在苹果MacOS上通过SSH连接谷歌云上的服务器实例并使用SFTP方式上传文件

然后,在 FileZilla 软件中,打开”站点管理器 → 新建站点”,协议选择 SFTP,输入服务器 IP,登录类型选择密钥文件,在密钥文件中加载桌面上的私钥 gc_ras,确定,保存。

如何在苹果MacOS上通过SSH连接谷歌云上的服务器实例并使用SFTP方式上传文件

然后,点击连接。

这时候,你会发现 SFTP 已经能够顺利连接到服务器上了,并且已经可以上传下载文件了。

如何在苹果MacOS上通过SSH连接谷歌云上的服务器实例并使用SFTP方式上传文件

SSH 的本地连接和 SFTP 是管理服务器经常会用到的功能,问的读者也比较多,所以单独出一篇详细的图文教程进行分享。因为 macOS 自带了 Unix 系统原生的终端,所以在连接支持上也比较友好。如果你使用的是 Windows 系统,连接的原理与本篇文章类似。可以参考谷歌云的官方帮助文档完成。

如何在苹果MacOS上通过SSH连接谷歌云上的服务器实例并使用SFTP方式上传文件

希望这点技术经验,能够帮助各位读者顺利解决一些独立自建站的搭建与维护问题。

关于作者 · 晨飞(Lifei Zhou)

跨境创业者 · CBPath 创始人

十二年从义乌外贸、亚马逊与独立站做起,以文案作家身份 DIY 移民加拿大,现居多伦多,从事美加公司注册与税务合规。持有两年制商业会计文凭与两个加拿大研究生证书,修完税务合规课程。本文基于我的亲身实操与一手记录。

晨飞二维码

扫码加晨飞聊聊,或加入会员同行。