私はCentOS 8を実行しているGCE仮想マシンでscpコマンドを使用する可能性を軽減する方法を探しています。
現在の設定は、Baschen VMがセカンダリVM(インスタンス1)にSSHで接続できるようにすることです。最初のSSH接続を確立した後、セカンダリVMからバスチョンVMにSSHを再接続することはできません。これは、反対方向にSSHキーペアがないためと仮定します(間違った場合は修正してください)。ランタイムエラーssh <BASTION_IP>
はPermission denied (publickey,gssapi-keyex,gssapi-with-mic)
インスタンス1から要塞としてSCPを試していますが、それも機能しません.エラーはですPermission denied (publickey,gssapi-keyex,gssapi-with-mic)
。 SSHキーペアが存在しないためですか?
この問題を解決する方法はありますか?インスタンス1から要塞としてSCPコマンドを実行するために使用できる潜在的な方法を確認したいと思います。どの形式のTCP転送または他のSSHトンネル設定を介してファイルを外部に転送できますか?
詳細を編集しました。
インスタンス-1にはプライベートIPが1つしかありません。どちらのVMも、ネットワーク間VPCピアリングを使用する2つの別々のGCPプロジェクトにあります。
インスタンス1の外部インターネットアクセスを許可するNATゲートウェイやその他のプロキシはありません。
Bastionには、インスタンス1の秘密鍵の公開鍵はありません。
他の質問を修正してください。
要塞がインスタンス1のSSHトンネルを設定した場合、インスタンス1に存在し、インスタンス1から要塞にファイルをインポートできますか?
要塞のインスタンス1のSSH鍵ペアに公開鍵がない場合、SCPは機能しませんか?
ベストアンサー1
sftp コマンドを使用することをお勧めします。まず、通常のSSHを介してBastionサーバーに接続します。 BastionサーバーでSFTPセッションを開始する
$ sftp -i /PATH/TO/SSH/KEY user@remote-vm-ip
コマンドを使用すると、コマンドを使用してファイルcd
システムの周りを移動できます(リモートの場合はcd
ローカルの場合)、コマンドを使用してファイルを一覧表示する(リモートの場合はローカルの場合)ファイルをアップロードするにはコマンドを使用します(例:)lcd
ls
ls
lcd
get
get file.txt
put
put file.txt
あるコンピュータから別のコンピュータにアクセスでき、ファイルシステム内のソースファイルの場所を知っている場合、またはsftp
コマンドを使用してプロセスを自動化することもできます。scp
引用:
https://www.ibm.com/support/pages/using-sftp-script-rsa-authentication
https://docs.oracle.com/cd/E36784_01/html/E36870/sftp-1.html