👀

簡単にscpコマンドを使う

2024/10/01に公開

scpコマンドの概要

  • ネットワーク上のホスト間で、ファイルをコピーする。
  • ファイルの転送にsshを使い認証する。

オプションについて

オプション 内容
-4 IPv4アドレスを使用する
-6 IPv6アドレスを使用する
C 圧縮を有効にする。ssh -C にそのまま適用される
-F ssh_config sshの設定ファイルを指定できる
-o ssh_option ssh_configで設定できるオプション(User,HostName,Port,)
-P Port ポート番号
-r ディレクトリを再帰的にコピーする。cp -rと同じ
-v 通信中のdebugメッセージを詳細に表示する
-i identity_file RSA 認証用の秘密鍵を読むファイルを選択します(EC2などの秘密鍵*.pem)
-p 権限や変更日時が同じファイルを送信

scpの使い方

  • 通信先には、[通信先ユーザー名]@[通信先IPアドレス]:[path/to/direcotry]の形式で送信する
  • scp [オプション] [コピー元] [コピー先]の形式
scp -P [ポート番号] -r [送信元のpath/to/directory] [通信先のユーザー名]@[通信先IPアドレス]:[通信先のpath/to/directory]
  1. ローカルサーバーからリモートへコピー
scp  [送信元のpath/to/directory] [通信先のユーザー名]@[通信先IPアドレス]:[通信先のpath/to/directory]
  1. リモートからローカルにコピー
scp [通信先のユーザー名]@[通信先IPアドレス]:[通信先のpath/to/directory] [送信元(ローカル)のpath/to/directory]
  1. -Fでssh_configファイルを指定する
~/.ssh/config
Host remoteName(適切な名前'piyo')
  HostName ローカルアドレス
  User remoteUser名
  Post ポート番号
  IdentityFile 秘密鍵へのPATH

使ってみる

scp -F ~/.ssh/config ~/copy.txt myhacker@127.0.0.1:~/tmp

参考

https://nxmnpg.lemoda.net/ja/1/scp
https://nxmnpg.lemoda.net/ja/1/ssh

Discussion