【SFTP】Linuxコマンド_通信を暗号化し安全にファイルを転送する

リモート先のファイルサーバとの間で通信を暗号化し、安全にふくすのファイルを転送したい場合、対話的に操作することができる「sftp」コマンドが便利です。

以下ではsftpコマンドの使い方を紹介します。




↓↓↓ITエンジニアのおすすめ学習・開発環境の詳細へ↓↓↓

「sftp」コマンドの使い方(Linux)

sftpコマンドは複数のファイルを暗号化通信を利用して安全に転送するときに使用します。
通常のftpコマンドよりもセキュアで盗聴されることはありません。

安全にファイルのやりとりをしたい時は「sftp」コマンドを使用します。

「scp」コマンドをインストールする

「sftp」コマンドを実行するには「openssh-clients」パッケージをインストールしないといけません。
インストール方法は以下となります。

# dnf -y install openssh-clients 
# yum -y install openssh-clients 

「sftp」コマンドを利用したファイル・フォルダ転送方法

以下では実際にファイルサーバーは「sftp」コマンドを使用してアクセスした例となります。
※ユーザ名は「foo」、パスワードは「pass」となります。

アクセス後、パスワードを聞かれたら「pass」と入力しエンターをします。
「Connected」の表記が出ればOKです。

# sftp foo@localhost
The authenticity of host 'localhost (127.0.0.1)' can't be established.
ED25519 key fingerprint is SHA256:jfugvH6XQbC8OBd/NBoBpL05GJVhu4plMtJzBUS2lBs.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added 'localhost' (ED25519) to the list of known hosts.
foo@localhost's password:
Connected to foo@localhost.
sftp>

SFTPサーバ動作確認(アップロード)

SFTPサーバへファイルをアップロードします。

sftp> cd upload/
sftp> mput test.txt
Uploading test.txt to /upload/test.txt
test.txt                                                                                                     100%    0     0.0KB/s   00:00
sftp>
sftp> ls
test.txt
sftp> quit

SFTPサーバ動作確認(ダウンロード)

SFTPサーバからファイルをダウンロード「します。

sftp> cd upload/
sftp> get test.txt
Fetching /upload/test.txt to test.txt
sftp> quit
[root@CetOS8]# ls
test.txt

「sftp」コマンドオプション

「sftp」コマンドのオプションは以下の通りとなります。

# sftp -h
usage: sftp [-46aCfpqrv] [-B buffer_size] [-b batchfile] [-c cipher]
          [-D sftp_server_path] [-F ssh_config] [-i identity_file]
          [-J destination] [-l limit] [-o ssh_option] [-P port]
          [-R num_requests] [-S program] [-s subsystem | sftp_server]
          destination

以上が「sftp」の起動と動作確認となります。

エンジニアのオンライン学習

エンジニアにおすすめのオンライン教材比較
ITエンジニアが自宅で学習ができるオンラインスクール比較

エンジニアのおすすめ学習「Progate」と「Udemy」比較

VPS_比較
最新情報をチェックしよう!