Debian 8 Jessie
Sponsored Link

SSH ファイル転送 (Debianクライアント)
2015/05/02
 
SSH を利用して、暗号化通信によるセキュアなファイル転送をすることができます。
[1] SCP (Secure Copy) によるファイルコピーの例です。
# 書式 ⇒ scp [オプション] コピー元 コピー先
# ローカルの [test.txt] を リモート [www.srv.world] 上の [jessie] ユーザーのホームディレクトリ直下へコピーする

jessie@dlp:~$
scp ./test.txt jessie@www.srv.world:~/

jessie@10.0.0.30's password:    
# 接続ユーザーのパスワード

test.txt                                                100%   10     0.0KB/s   00:00

# リモート [www.srv.world] 上の [/home/jessie/test.txt] を ローカルのカレントディレクトリにコピーする

jessie@dlp:~$
scp jessie@www.srv.world:/home/jessie/test.txt ./test.txt

jessie@10.0.0.30's password:
test.txt                                                100%   10     0.0KB/s   00:00
[2] SFTP (SSH File Transfer Protocol) によるファイル転送です。
SFTP サーバー機能は Debian ではデフォルトで有効になっていますが、もし有効になっていない場合は [/etc/ssh/sshd_config] に [Subsystem sftp /usr/lib/openssh/sftp-server] の行を追加して sshd をリロードしてください。
# sftp [オプション] [ユーザー@ホスト名]

debian@dlp:~$
sftp jessie@www.srv.world

jessie@www.srv.world's password:    
# ログインユーザーのパスワード

Connected to www.srv.world.
sftp>
# リモートのカレントディレクトリ表示

sftp>
pwd

Remote working directory: /home/jessie
# ローカルのカレントディレクトリ表示

sftp>
!pwd

/home/debian
# リモートのカレントディレクトリのファイル一覧表示

sftp>
ls -l

drwxrwxr-x    2 jessie     jessie            6 Jul 29 21:33 public_html
-rw-rw-r--    1 jessie     jessie           10 Jul 28 22:53 test.txt
# ローカルのカレントディレクトリのファイル一覧表示

sftp>
!ls -l

total 4
-rw-rw-r-- 1 debian debian 10 Jul 29 21:31 test.txt
# ディレクトリ移動

sftp>
cd public_html

sftp>
pwd

Remote working directory: /home/jessie/public_html
# ローカルのファイルをリモートにリネームアップロード

sftp>
put test.txt debian.txt

Uploading test.txt to /home/jessie/debian.txt
test.txt 100% 10 0.0KB/s 00:00
sftp>
ls -l

drwxrwxr-x    2 jessie     jessie            6 Jul 29 21:33 public_html
-rw-rw-r--    1 jessie     jessie           10 Jul 29 21:39 debian.txt
-rw-rw-r--    1 jessie     jessie           10 Jul 28 22:53 test.txt
# ローカルの複数ファイルをリモートに一括アップロード

sftp>
put *.txt

Uploading test.txt to /home/jessie/test.txt
test.txt 100% 10 0.0KB/s 00:00
Uploading test2.txt to /home/jessie/test2.txt
test2.txt 100% 0 0.0KB/s 00:00
sftp>
ls -l

drwxrwxr-x    2 jessie     jessie            6 Jul 29 21:33 public_html
-rw-rw-r--    1 jessie     jessie           10 Jul 29 21:39 debian.txt
-rw-rw-r--    1 jessie     jessie           10 Jul 29 21:45 test.txt
-rw-rw-r--    1 jessie     jessie           10 Jul 29 21:46 test2.txt
# リモートのファイルをローカルにダウンロード

sftp>
get test.txt

Fetching /home/jessie/test.txt to test.txt
/home/jessie/test.txt 100% 10 0.0KB/s 00:00
# リモートの複数ファイルをローカルに一括ダウンロード

sftp>
get *.txt

Fetching /home/jessie/debian.txt to debian.txt
/home/jessie/debian.txt 100% 10 0.0KB/s 00:00
Fetching /home/jessie/test.txt to test.txt
/home/jessie/test.txt 100% 10 0.0KB/s 00:00
Fetching /home/jessie/test2.txt to test2.txt
/home/jessie/test2.txt 100% 10 0.0KB/s 00:00
# リモートのカレントディレクトリにディレクトリ作成

sftp>
mkdir testdir

sftp>
ls -l

drwxrwxr-x    2 jessie     jessie            6 Jul 29 21:33 public_html
-rw-rw-r--    1 jessie     jessie           10 Jul 29 21:39 debian.txt
-rw-rw-r--    1 jessie     jessie           10 Jul 29 21:45 test.txt
-rw-rw-r--    1 jessie     jessie           10 Jul 29 21:46 test2.txt
drwxrwxr-x    2 jessie     jessie            6 Jul 29 21:53 testdir
# リモートのカレントディレクトリ内のディレクトリ削除

sftp>
rmdir testdir

rmdir ok, `testdir' removed
sftp>
ls -l

drwxrwxr-x    2 jessie     jessie            6 Jul 29 21:33 public_html
-rw-rw-r--    1 jessie     jessie           10 Jul 29 21:39 debian.txt
-rw-rw-r--    1 jessie     jessie           10 Jul 29 21:45 test.txt
-rw-rw-r--    1 jessie     jessie           10 Jul 29 21:46 test2.txt
# リモートのファイル削除

sftp>
rm test2.txt

Removing /home/jessie/test2.txt
sftp>
ls -l

drwxrwxr-x    2 jessie     jessie            6 Jul 29 21:33 public_html
-rw-rw-r--    1 jessie     jessie           10 Jul 29 21:39 debian.txt
-rw-rw-r--    1 jessie     jessie           10 Jul 29 21:45 test.txt
# ![command] で任意のコマンド実行

sftp>
!cat /etc/passwd

root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
...
...
debian:x:1001:1001::/home/debian:/bin/bash
# 終了

sftp>
quit

221 Goodbye.
 
Tweet