对Fabri使用SSH密钥文件

2024-04-20 07:18:59 发布

您现在位置:Python中文网/ 问答频道 /正文


Tags: python
3条回答

从Fabric1.4-Fabric now supports SSH configs开始提供的另一个很酷的功能。

如果您的~/.ssh/config文件中已经有了所有SSH连接参数,Fabric将在本机上支持它,那么您只需要添加:

env.use_ssh_config = True

在你的fab文件的开头。

找一个简单的fabfile和一个SSH密钥文件使用的工作示例是不容易的。我写了一篇关于它的blog postwith a matching gist)。

基本上,用法如下:

from fabric.api import *

env.hosts = ['host.name.com']
env.user = 'user'
env.key_filename = '/path/to/keyfile.pem'

def local_uname():
    local('uname -a')

def remote_uname():
    run('uname -a')

重要的部分是设置env.key_filename环境变量,以便Paramiko配置可以在连接时查找它。

这里还值得一提的是,您可以使用命令行参数执行以下操作:

fab command -i /path/to/key.pem [-H [user@]host[:port]]

相关问题 更多 >