Pythonを使用してSSH公開鍵認証でAmazon Lightsailへアクセスして、ファイルを設置したい
Pythonを使用してSSH公開鍵認証でAmazon Lightsailインスタンスにアクセスし、ファイルを設置するためには、paramiko ライブラリを使用することが一般的です。以下は、基本的な手順です。
- paramikoのインストール:
PythonスクリプトからSSH接続を確立するためにparamikoライブラリをインストールします。bash pip install paramiko
- Pythonスクリプトの作成:
SSH接続とファイル転送を行うPythonスクリプトを作成します。以下は基本的な例です。python import paramiko # Lightsailインスタンスの情報 hostname = 'your-lightsail-ip' port = 22 username = 'your-ssh-username' private_key_path = 'path/to/your/private-key.pem' # SSHクライアントの作成 client = paramiko.SSHClient() client.set_missing_host_key_policy(paramiko.AutoAddPolicy()) # SSH公開鍵認証で接続 private_key = paramiko.RSAKey(filename=private_key_path) client.connect(hostname, port, username, pkey=private_key) # ファイルのアップロード (例: ローカルのファイルをリモートにコピー) local_file_path = 'path/to/local/file.txt' remote_file_path = 'path/to/remote/file.txt' sftp = client.open_sftp() sftp.put(local_file_path, remote_file_path) sftp.close() # SSH接続の終了 client.close()
your-lightsail-ip: LightsailインスタンスのIPアドレスを指定します。your-ssh-username: LightsailインスタンスのSSHユーザー名を指定します。path/to/your/private-key.pem: ローカルのSSH秘密鍵ファイルへのパスを指定します。path/to/local/file.txt: アップロードしたいローカルのファイルのパスを指定します。path/to/remote/file.txt: リモートに設置したいファイルのパスを指定します。
- 実行:
スクリプトを実行して、SSH接続とファイルのアップロードを行います。bash python your_script.py
これにより、LightsailインスタンスにSSHで接続し、指定したファイルがリモートにアップロードされます。なお、ファイルのアップロード先のディレクトリが存在しない場合は、適切にディレクトリを作成してからアップロードするようにしてください。

ディスカッション
コメント一覧
まだ、コメントがありません