Python を使用した SSH 経由のコマンドの自動化
Python でコマンドライン タスクを自動化する場合、subprocess.call() を使用するのが一般的な方法です。ただし、SSH ログインが必要なリモート マシン コマンドの場合、この方法は不十分です。
Python での SSH コマンドの自動化
Python で SSH コマンドを自動化するには、次のモジュールが推奨されます。パラミコ。 SSH 接続を確立し、コマンドを安全に実行するためのインターフェイスを提供します。
paramiko を使用した例は次のとおりです。
<code class="python">import paramiko ssh = paramiko.SSHClient() ssh.connect(server, username=username, password=password) ssh_stdin, ssh_stdout, ssh_stderr = ssh.exec_command(cmd_to_execute)</code>
これにより、サーバー アドレス、ユーザー名を指定して、リモート サーバーへの SSH 接続が確立されます。 、パスワード。その後、exec_command() メソッドが目的のコマンドを実行し、標準出力とエラー ストリームをキャプチャします。
SSH キー認証の場合、次のコード スニペットを使用できます。
<code class="python">import paramiko k = paramiko.RSAKey.from_private_key_file(keyfilename) # OR k = paramiko.DSSKey.from_private_key_file(keyfilename) ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) ssh.connect(hostname=host, username=user, pkey=k)</code>
By秘密キーを含むキーファイル名を指定すると、このコードはキーベースの認証を使用して SSH 接続を開始します。
以上がPython で SSH コマンドを自動化するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。