【问题标题】:How can you run an SFTP through pbrun如何通过 pbrun 运行 SFTP
【发布时间】:2013-09-21 00:29:37
【问题描述】:

我有一个 (*nix) 服务器,其中某些文件夹的访问权限仅限于管理员帐户。为了访问其中一些文件夹,我们使用 pbrun 命令告诉一些“守护进程”为我们访问它(我认为?)。

我需要将安全目录(我进入的目录之一)中的整个文件夹复制到我的 Windows 计算机(不是服务器,只是普通 PC)。

我想我需要使用 SFTP 通过 SSH 连接到服务器并获取文件,但由于我无权访问我帐户中的文件,因此我无法使用我的凭据进行 SFTP。另外,我没有我正在使用的帐户的密码,所以我不能直接使用该帐户进行 SFTP。而且 pbrun 不是 FTP 命令,所以我不能将它添加到 FTP 中...

基本上,我的问题是如何在我的计算机上获取该目录,当它之间存在整个 pbrun 障碍时。

【问题讨论】:

    标签: windows unix ssh ftp sftp


    【解决方案1】:

    基本上,您正在尝试执行以下操作:

    tar cf - 文件 1 文件 2 | /bin/tar -xf - -C /some/path/directory

    您只希望在远程系统上完成提取,并沿网络通道加密内容。 PowerBroker 可用作传输数据的传输通道。默认情况下,所有 PowerBroker 网络流量都是加密的。您还需要一个允许该命令的策略。请尝试以下操作:

    tar cf - 文件 1 文件 2 | pbrun -h <target_host> -u <target_user> pbcp

    你需要一个大意的政策:

    if ( user in {"cire", "wax"}
        && command=="pbcp" 
        && requestuser in {"oracle", "root", "other", "allowed", "users" }) {
      runcommand = "/bin/tar";
      runargv = { "/bin/tar", "-xf", "-", "-C", "/some/path/directory" };
      SetRunEnv(requestuser); 
      accept;
    }
    

    【讨论】:

      【解决方案2】:

      pbrun 模式允许您获得通常由组 ID 和用户 ID(通常是应用程序 ID)标识的提升访问权限。一旦你拥有这些特权,就可以做很多事情。

      根据您对问题的最后陈述,我认为您可以将正常副本复制到同一服务器上的临时位置并更改所有权/权限 [chown/chmod] 以允许您正常使用文件/目录身份证。

      完成工作后,根据您的选择删除文件/撤销权限。

      另一方面,如果您想探索 sftp 和 ftp,信息如下:

      sftp 要求您在进行 ftp 之前设置 ssh 密钥。所以我认为有两种方法可以解决问题:

      1) 使用普通 ftp,您可以在连接到目标服务器时指定用户名。这将是最简单的解决方案。 缺点:未加密的文件传输

      2) 您可以在 windows 服务器上设置 ssh 密钥并允许应用程序 id 登录。

      你应该关心的另一件事是windows机器上的ftp服务本身,不管它是否存在。

      【讨论】:

        【解决方案3】:

        我的一位同事向我展示了一个巧妙的技巧来解决 pbrun/sftp 问题。我可以简单地创建一个我和守护程序都可以访问的临时目录,然后将我要传输的文件复制到临时目录。然后,我可以使用我的正常凭据将文件 SFTP 到我的 PC 上。这很老套(您最终将需要 2 个文件副本来执行此操作),但它确实有效。

        【讨论】:

          猜你喜欢
          • 2014-01-30
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多