Ubuntu SFTP进入谷歌计算引擎

Ubuntu SFTP进入谷歌计算引擎,ubuntu,ssh,ftp,sftp,google-compute-engine,Ubuntu,Ssh,Ftp,Sftp,Google Compute Engine,我一直在玩计算引擎上的Debian,想知道如何将SFTP转换到服务器上。我找不到关于它的任何文档,希望有人能给我指出正确的方向 谢谢 如果这是不可能的,那么通过SCP管理静态站点的最佳方法是什么?如果指定实例的IP地址,ssh、SCP和sftp都应该可以工作。如果您有一个静态IP地址,您可以使用DNS,或者您可以使用gcutil listinstances或控制台中的IP地址 知道实例的IP地址后,还需要ssh私钥,通常位于~/.ssh/google\u compute\u engine。然后您

我一直在玩计算引擎上的Debian,想知道如何将SFTP转换到服务器上。我找不到关于它的任何文档,希望有人能给我指出正确的方向

谢谢


如果这是不可能的,那么通过SCP管理静态站点的最佳方法是什么?

如果指定实例的IP地址,ssh、SCP和sftp都应该可以工作。如果您有一个静态IP地址,您可以使用DNS,或者您可以使用
gcutil listinstances
或控制台中的IP地址

知道实例的IP地址后,还需要ssh私钥,通常位于
~/.ssh/google\u compute\u engine
。然后您可以通过
sftp
进行连接,如下所示:

sftp -o IdentityFile ~/.ssh/google_compute_engine user@host

如果我理解这个问题,您希望在Debian的实例中有一个SFTP

  • 试一试

  • 打开防火墙中的端口22:

    gcutil addfirewall port-22--description=“打开端口22。”--allowed=“tcp:22”

  • 使用Filezilla客户端建立SFTP连接进行测试


  • 玩得开心:)

    您可以通过以下方式上载和下载文件,例如:

    gcloud compute scp \
         ~/local-dir/file-1 \
         my-instance:~/remote-destination \
         --zone us-central1-a
    
    下载途径:

    gcloud compute scp \
         my-instance:~/file-1 \
         my-instance:~/file-2 \
         ~/local-dir \
         --zone us-central1-a
    

    gcloud
    工具包含在中,并预装在标准的Google Compute Engine VM映像中。

    似乎Google computer Engine在默认情况下已经有了SFTP服务。下面是使用WinSCP作为SFTP客户端连接到服务的一个很好的分步说明。我第一次试的时候,它非常适合我


    同样的原则也适用于使用其他FTP客户端软件。希望可以节省一些时间和精力。

    我放弃了使用gcloud compute copy文件,因为我不知道为什么我的实例没有被获取,以及一些权限不足的东西,然后我开始研究如何将sftp导入我的gcloud实例

    这就是我和filezilla合作的方式

  • 首先,我下载并运行了gcloud sdk:

  • 当我第一次尝试从终端连接到实例时,系统提示我创建ssh密钥,因为我在mac上,所以密钥设置在.ssh/folder下的/Users//文件夹中

  • 我从.ssh/文件夹中获得了google_compute_引擎私钥,并将其导入filezilla>settings>sftp

  • 主机是我的gcloud vm实例的ip地址,用户是通过ssh连接到实例后的用户名。。检查提示:[@]$,您的密钥应该是您的身份验证方法。您的远程目录与/home//相同,服务器类型为unix(我在google cloud中有centos vm)

  • 一旦我的文件从我的计算机上传到我的实例上的目录中,我就能够将它们移动到我需要这些文件位于gcloud vm实例中的任何位置

    我又是一个快乐的露营者


    来源:

    在Mac或linux操作系统上,使用“gcloud compute config ssh:命令。这将在.ssh dir中设置conf文件,并允许您使用配置文件中配置的别名使用ssh、scp和sftp


    gcloud doc for config ssh

    在较高级别上,以下是步骤:

  • 安装并运行gcloud SDK(
    $gcloud init
  • 生成SSH密钥(
    $gcloud compute SSH
  • 设置FTP客户端(安装并添加密钥文件)
  • 使用SFTP客户端连接到VM
  • 假设这个问题是在谷歌发布之前提出的

    此外,我还记录了这一点,这可能会有所帮助:


    仅供参考。如果您需要传输的文件非常小,那么您可能不需要SFTP客户端。直接从控制台传输,如图所示

    FileZilla免费版和FileZilla Pro都可以连接到Debian的Google Cloud VM实例。PuTTY,另一个需要的程序,也是免费的。

    1.下载PuTTY以生成SSH密钥。我无法使用gcommand生成的密钥(Google云连接)连接到实例。必须使用PuTTY密钥使FileZilla连接。
    a、 启动PuTTYgen
    b、 单击“生成”
    c、 不要保存公钥。这会使密钥无效。请改为从窗口复制它。
    d、 将其粘贴到文本编辑器中,并将其另存为KEYNAME.pub
    e、 从PuTTY中单击“转换>导出OpenSSH密钥”,并使用扩展名“.ppk”保存
    f、 不要关上油灰,你马上就需要它了。

    2.在谷歌控制台中编辑您的计算引擎实例。
    *通过从文本编辑器粘贴来添加公共SSH密钥(KEYNAME.pub)。

    3.启动FileZilla,然后启动其他需要的程序(如本文所述)
    a、 转到“编辑>设置”
    b、 从左侧菜单中选择“SFTP”。
    C.在右侧,单击“添加密钥文件…”(导航到您保存的ppk私钥)。
    d、 单击“确定”
    e、 在工具栏中输入“sftp://123.456.789.012“(使用实例的外部ip地址)在“主机”字段中。
    f、 在PuTTY中复制“关键注释”字段。
    g、 在FileZilla工具栏中,在FileZilla字段“用户名”中输入PuTTY复制的“关键注释”。
    h、 在FileZilla工具栏上,单击“快速连接”。
    i、 在FileZilla右侧窗格“远程站点”上,滚动到目录树的顶部,单击加号(+),然后再次单击加号(+)。这将加载整个操作系统的目录结构。
    j、 向下滚动到最后一个目录“var”,单击它,然后展开它的加号(+)。
    k、 目录“www”将弹出。单击该目录,然后单击其加号将其展开。
    l、 弹出“html”目录。点击它。离开FileZilla而不关闭它,进入“Google Cloud SDK>Google Cloud SDK外壳”。让它保持打开状态。
    m、 转到Google云控制台,列出您的计算引擎实例。在实例右侧单击“SSH”下拉列表并选择“查看gcloud命令”。复制该命令。
    n、 粘贴th