|
| sshファイル転送2つの方法、scpとsftp |
scpの特徴は? |
図1はscpが動いているときのイメージを図にしたものです。利用者がサーバにあるファイルを取り出す指定をすると、scpのクライアントプログラムはsshサーバに接続して、「『自分あてにファイルを送る』コマンドを起動しなさい」という命令を送ります。
![]() |
| 図1 scpの利用イメージ |
命令を受け取ったsshサーバは、シェルと呼ばれるプログラムを起動し、そのシェルが「sshの通信路を使ってファイルを送り返す」プログラムを起動します。これにはscpという名前のプログラムを使います。プロトコルと同じ名前が付いたプログラムです。
このscpは指定のファイルを読み出して、同じ通信路に流し込みます。するとそのデータはscpクライアントに届きます。scpクライアントはこれを保存してゆくことで、ファイル転送を実現します。
このときscpクライアントプログラムとsshサーバプログラムの間は、sshによる通信路を使っていますので、誰かに盗聴されても内容は分かりませんし、改ざんすることもできません。またsshの接続をするときに正しいサーバか、正しいユーザーかを確認しますので、なりすましも防ぐことができます。つまり、安全にファイル転送ができたことになります。
ちなみにscpのプロトコルは、rcpという暗号化機能のないファイル転送用のプロトコルがベースになっています。これをsshの安全な通信路でやりとりすることで、安全なファイル転送を実現しています。
「UNIXスタイルのシェルで動かす」って何ですか? |
シェルは、UNIX系のシステムで使われている、コマンド処理プログラムのことです。Windowsでいうところの「コマンドプロンプト」に相当するものと考えると分かりやすいでしょう。ちなみに「コマンドプロンプト」とシェルを比べると、コマンドの種類はもちろん、その書き方も違います。このシェルを使うのはscpの特徴の1つです。
sftpの特徴は? |
ではsftpはどうでしょうか? sftpが動いているときのイメージを図2に示します。
![]() |
| 図2 sftpの利用イメージ |
利用者がサーバにあるファイルを取り出す指定をすると、sftpのクライアントプログラムはsshサーバに接続して、「sftpサーバを起動して接続しない」という命令を送ります。
命令を受け取ったsshサーバは、sftpサーバプログラムを起動して、クライアントとの間に通信路を準備します。
この後、クライアントはsftpサーバに対して、sftpのコマンドを送り、必要なファイルを取り出します。コマンドには「ファイルを開く」「ファイルを閉じる」「ファイルを読み出す」「ファイルを書き込み」といったものがあります。
ファイル転送を途中で止められるsftp |
sftpでは、通信路をつないだ後に、コマンドを送るスタイルを取っていますので、1つのコマンドが終わった後に、次のコマンドを送ることができます。そのため、ファイル転送を途中で止めたり、途中から再開したり、ファイル転送をいろいろとコントロールできる特徴があります。
sftpの場合も同様に、sftpクライアントプログラムとsshサーバプログラムの間は、sshによる通信路を使っていますので、盗聴などの心配はありません。
| 軽快さをウリにするscp、高機能をウリにするsftp |
scpとsftpの違いを一目で見たいのですが |
表1にscpとsftpの特徴を比較してみました。この表はWinSCPのWebページにある比較表を参照して、主要部分を抜き出して日本語化、また一部追記したものです。薄緑の背景は、一般的に考えて優れていると思われる方を表しています。
|
|||||||||||||||||||||||||||||||||
| 表1 scpとsftpの比較 (参照) http://winscp.net/eng/docs/protocols ※一般的に考えて、優れていたり汎用的と思われる方の背景色を薄緑にしています。どちらも同様の機能を備える項目、またその項目が短所長所の両面を持っていて甲乙つけ難いものは両方の背景を薄緑にしています |
発表時期はscpの方が古いのですが、特徴を比較する限りは、どちらか一方がずばぬけて優れているというわけではないようです。人によって見方は違うかもしれませんが、一言でいうなら軽快さをウリにするscp、高機能をウリにするsftp、といったところです。
興味深いのは、サーバの環境です。scpはサーバにUNIXスタイルのシェルを備えている必要があります。それに対してsftpはUNIXスタイルのシェルは不要です。さまざまなOSへの対応のしやすさはsftpに軍配が上がるようです。
また大きなファイルを取り扱う必要があるときにはscpでは対応できないことも起こり得ますので注意が必要です。
すべてのsshサーバがscpとsftpに対応しますか? |
sshサーバにはフリーで配布されているものと商品として販売されているものがあります。フリーで配布されている代表的なsshサーバ「OpenSSH」については、scpとsftpの両方の機能を持っています。一方、市販品のsshサーバの中には、sftpにのみ対応し、scpには対応していないものもあるので注意が必要です。
sshバージョン1や2との組み合わせは? |
sshのプロトコルには大きく2種類あります。それぞれバージョン1、バージョン2と呼びます。sshバージョン1はいくつか問題点が見つかり、使われない方向にありますが、まだ使われています。
scpはsshバージョン1対応のプログラムの一部として、sftpはsshバージョン2対応のプログラムの一部として発表されました。しかしながら、sshバージョン1とsftpを組み合わせて使うことも、sshバージョン2とscpを組み合わせて使うこともできます。
代表的なクライアントは? |
Windowsで利用できる代表的なクライアントプログラムでは、何といっても「WinSCP」が有名です。WinSCPはhttp://winscp.net/eng/docs/lang:jpからダウンロードできます。WinSCPでは、転送プロトコルとしてscp、sftpの両方に対応しています。またsshのバージョンに関しても、バージョン1と2の両方に対応します。画面1は、これらの情報登録画面で、ホスト名やユーザー名などともに、使用するプロトコルを指定しているところです。「sftpが使えないときにはscpを使う」という設定も可能です。
![]() |
| 表1 WinSCPの設定画面 |
| 目次 | |
| 安全なファイル転送とは 安全なファイル転送って何ですか?/安全に行うにはどうするのでしょうか?/sshとファイル転送/sshはリモートコンソールではないのですか?sshのファイル転送は1種類だけですか? | |
| 軽快さをウリにするscp、高機能をウリにするsftp scpの特徴は?/「UNIXスタイルのシェルで動かす」って何ですか?/sftpの特徴は?/ファイル転送を途中で止められるsftp/scpとsftpの違いを一目で見たいのですが/すべてのsshサーバがscpとsftpに対応しますか?/sshバージョン1や2との組み合わせは?/代表的なクライアントは? | |
| 関連リンク | |
| 連載:インターネット・プロトコル詳説 | |
セキュリティプロトコルマスター バックナンバー
TCP/IPアレルギー撲滅ドリル
TCP/IPへのアレルギーを撲滅すべく、試しながらナットクしていただく超実践型入門ドリル。
- 第1回 telnetでWebサーバに接続してみよう
- 第2回 HTTP語でWebブラウザとしゃべってみよう
- 第3回 SMTPでメール送信の舞台裏をあやつる
- 第4回 ちょっとジミなPOP3でメールを読む
- 第5回 器用な二刀流、FTPでファイル転送!
- 第6回 覗いてみればディープな世界 DNS
- 最終回 知れば知るほどDNSは不思議な海へ
TCP/IPアレルギー撲滅ドリル【下位レイヤ編】
正確で確実な通信をするための下位レイヤプロトコル。あなたはTCP/UDP/IP/ARPを制覇できるか?
- 第1回 TCPの迷宮をさまよってみませんか?
- 第2回 ITオンチにTCPのセボネを見る
- 第3回 分かるスライディングウィンドウ、見えるEhtereal
- 第4回 ウィンドウは主導権と良心のはざまで
- 第5回 それでも不正確なデータを受け取ったらどうするの?
- 第6回 EtherealでリアルなTCPの動きを観察する
- 第7回 「アイピー」ってなんですか?
- 第8回 不確実なIP通信をカバーするうまい方法とは
- 第9回 データの過保護をお望みでないならUDPで
- 第10回 arpはネットワークで何を「叫ぶ」?
TCP/IPアレルギー撲滅ドリル【総まとめ編】
ウェブブラウザでウェブページが見られるまでの各プロトコルの動きをパケットになった気分で冒険してみよう
- 第1回 Webページを見せるまでのパケット君の冒険
- 第2回 パケット君がWebページ表示の冒険に失敗するとき
- 第3回 Etherealでパケットの実物を捕まえ中身をのぞき込もう
- 第4回 Etherealでarpパケットをのぞき込もう
- 第5回 DNSへの問い合わせをEtherealでのぞき込む
- 第6回 Webアクセス中のHTTPパケットの中身をみる
| 「Master of IP Network総合インデックス」 |
ホワイトペーパー(TechTargetジャパン)
- 知られざるLTEのネットワーク構成 (2010/1/13)
LTEのネットワーク構成やプロトコルスタックを詳解。それぞれどんな役割を果たしているかを解説します - iPhoneアプリ内課金導入でガッチリもうけるのだ (2009/12/18)
「iPhoneのアプリ内課金ってどーよ?」 そんな疑問に答えるべく、アプリ内課金のサポート業務を行っている企業を直撃 - インターネット世界の住所の書き方 (2009/12/8)
TCP/IPネットワークであて先を特定する識別子、IPアドレスの構造やサブネットマスクの役割などを説明します - iPhoneアプリに広告を挿入してガッチリもうけるのだ (2009/11/16)
iPhoneアプリに広告を挿入して1日に50万円ももうけている!と聞き、その仕組みを知りたくて、日米のアドネットワーク企業に聞いた
|
|
スキルアップ/キャリアアップ(JOB@IT)
スポンサーからのお知らせ
- - PR -
- - PR -
お勧め求人情報

**先週の人気講座ランキング**
〜CCNA編〜
| ◆ | 企業の仮想化に足りない“発想”とは? 仮想化運用管理のキモは意外なところに! New! |
| ◆ | 操作もマニュアルも分かりやすい! ユーザー視点で開発されたPC管理ツール New! |
| ◆ | 仮想化すればコストは削減できるか? 仮想化に必要な「3つの視点」を解説する |

| ◆ | セキュリティを知り尽くす上野氏が登壇! @ITメールソリューションLive! in Tokyo |
| ◆ | 運用管理の課題を“2つの観点”から分析 ユーザー満足度の高い「仮想環境」とは? |
| ◆ | 世界に通用するストレージの作り方とは? 製品に込めた思いを富士通の開発者に聞く |

| ◆ | OSSで手間も時間も、障害も減った―― 「マピオンの事例」オープンソース活用法 |
| ◆ | 「ノートPCの持ち出し禁止」で大丈夫? 情報漏えいを防ぐ管理手法とインフラは? |
| ◆ | 1日の処理を1秒に――MySQLの達人が語る 「コスト削減」できるチューニング |

| ◆ | ドキュメント作成を自動化して、SEの作業 効率を大幅アップ! Visio 2007の魅力 |
| ◆ | 急速に広がるHyper-Vでのサーバ仮想化 そのベストプラクティスをデルが解説 |
| ◆ | @IT主催セミナーで語られた、「担当者に 求められるセキュリティ対策」をレポート |

| ◆ | @IT「Windows 7」 特設サイトオープン! 最新情報・移行ノウハウを公開しています |









