本連載は、Linuxサーバーに初めて触れる人、基本から学習したい人に向けて、「CentOS 7」をベースにLinuxサーバーの基礎を解説していきます。今回は、ネットワーク経由でファイルのアップロード/ダウンロードを可能にするFTPサーバーの基本的な設定を解説します。
書籍の中から有用な技術情報をピックアップして紹介する本シリーズ。今回は、秀和システム発行の書籍『たった2日でわかる Linuxサーバー Cent OS 7.0対応(2015年2月6日発行)』からの抜粋です。
ご注意:本稿は、著者及び出版社の許可を得て、そのまま転載したものです。このため用字用語の統一ルールなどは@ITのそれとは一致しません。あらかじめご了承ください。
※編集部注:前回記事「システムの設定を変更してみよう」はこちら
インターネット上のサーバーへ、HTMLファイルや画像、動画といったコンテンツをアップロードするとき、手元のパソコンからWebサーバーへとファイルを転送しなければなりません。また、インターネット上で配布されているソフトウェアをダウンロードする際にも、サーバーからパソコンへとファイルが転送されています。
そのような、ネットワーク経由でのファイル転送に使われるのが「FTP(File Transfer Protocol:ファイル転送プロトコル)」です。FTPは、ファイル転送を制御するFTPサーバーと、それを利用するFTPクライアントで構成されます。
Linuxで利用できるFTPサーバーには、vsftpd、ProFTPD、Pure-FTPDなどがあります。FTPクライアントには、Linuxで利用できるgFTP、Windowsで利用できるFFFTP、OS Xで利用できるCyberduckなどがあります。
インターネット上で不特定多数にファイルを配布する際によく使われるのが「匿名FTP(アノニマスFTP)」という仕組みです。
FTPでは、あらかじめFTPサーバー側にユーザーアカウントを用意し、パスワードを正しく指定したユーザーのみがFTPサーバーにログインできます。しかし、不特定多数にあらかじめユーザー名とパスワードを知らせるのは現実的ではありません。そこで、ユーザー名に「anonymous」、パスワードに任意のメールアドレスを指定するだけでFTPサーバーを利用できる仕組みがあります。これを匿名FTP(anonymous FTP)といいます。anonymous(アノニマス)というのは「名無しさん」くらいの意味ですね。
ちなみに、パスワードに指定するメールアドレスは、特に確認はされません。つまり、まったく存在しないメールアドレスであっても通ってしまうので、信頼性はありません。そのため、匿名FTPは「ファイルを配布する(ダウンロードさせる)」用途にだけ使います。「ファイルをアップロードする」用途を許可してしまうと、どこの誰だかわからない人が、違法なファイルをアップロードしてしまう可能性があるからです。
なお、多くのWebブラウザーは匿名FTPに対応していますので、匿名FTPサイトからファイルをダウンロードすることができます★。
Webブラウザーのアドレス欄が「ftp://〜」となっている時はFTPで接続しています。
FTPというプロトコルは、ネットワーク上を流れるデータを暗号化しません。つまり、ユーザー名やパスワードも、アップロード/ダウンロードされるファイルの内容も、盗聴されれば筒抜けになってしまいます。そのため、最近ではインターネット上でFTPによるアップロードは減少しています。FTP自体は安全ではない、と考えてください。
インターネットサーバーで利用する場合は、匿名FTPを使ってのファイル配布に限定した方がよいでしょう。
しかし、FTPを安全に利用するための技術もあります。安全なWebサービスでおなじみのSSLと組み合わせた「FTP over SSL(FTPS)」と、安全な通信のためのプロトコルSSHと組み合わせた「SFTP」です。いずれも、暗号化通信などによって安全性を高めますが、それぞれに対応したFTPクライアントソフトウェアが必要となります。
FTPサーバーにはさまざまな種類がありますが、CentOSではvsftpd(very secure ftpd★)という名前のFTPサーバーが標準的に用意されています。
末尾の「d」はdaemon(デーモン:常駐ソフトウェア)の「d」です。
vfstpdをインストールするには、rootユーザーで次のコマンドを実行します★。
yumコマンドで-yオプションを指定すると、問い合わせに対して自動的にYesと回答します。
正しくインストールできたかどうかは、次のコマンドで確認できます★。vsftpdのバージョン番号が次のように表示されればOKです。
rpmコマンドは、パッケージを詳細に管理するコマンドです。
インストールされていない場合は、次のように表示されます。
Copyright © ITmedia, Inc. All Rights Reserved.