Hinweise zur ssh-Verbindung mit paramiko mit den folgenden Einstellungen in ssh_config und ssh-Verbindung zu app_host über fumidai_host
Host fumidai_host
User user_name
Hostname xx.xx.xx.xx (<= GIP)
IdentityFile ~/.ssh/hoge.pem
Host app_host
HostName 192.168.0.1 (<= private ip)
User user_name
IdentityFile ~/.ssh/hoge.pem
ProxyCommand ssh -W %h:%p fumidai_host
Sie können sich so verbinden. Probe zu sftp vorerst
import os
import paramiko
#Lookup SSH-Konfigurationsdatei
config_file = os.path.join(os.getenv('HOME'), '.ssh/config')
ssh_config = paramiko.SSHConfig()
ssh_config.parse(open(config_file, 'r'))
lkup = ssh_config.lookup(hostname)
#Stellen Sie eine Verbindung mit den ProxyCommand-Einstellungen her
ssh = paramiko.SSHClient()
ssh.load_system_host_keys()
ssh.connect(
lkup['hostname'],
username=lkup['user'],
key_filename=lkup['identityfile'],
sock=paramiko.ProxyCommand(lkup['proxycommand'])
)
sftp = ssh.open_sftp()
#Der Rest ist normal
# sftp.put(src, dist)Oder
# sftp.get(src, dist)Oder
sftp.close()
ssh.close()
Recommended Posts