LinuxでFTPサーバーをセットアップする
ファイル転送プロトコル(FTP)は、2台のコンピューター間でファイルを転送するために使用される、一般的に使用されるネットワークプロトコルです。プロトコルは、クライアントサーバーアーキテクチャに基づいています。一方のコンピューターはFTPサーバープログラムを実行し、もう一方のコンピューターはFTPクライアントプログラムを実行します。このプログラムは、アクセス許可に基づいてサーバーコンピューターにファイルをダウンロードまたはアップロードできます。
通常、FTPサーバーにアクセスするユーザーは、ユーザー名とパスワードで認証する必要がありますが、匿名ユーザーへのアクセスを許可するようにサーバーを構成することもできます。
Windows、GNU / Linux、Mac OSなどのほとんどすべての一般的なオペレーティングシステムでは、FTPサーバーとクライアントプログラムを利用できます。この記事では、UbuntuシステムでFTPサーバーをセットアップする方法を説明します。
インストール
Ubuntuでは、プログラム vsftpd
、の略 非常に安全なFTPデーモン は人気のあるFTPサーバープログラムであり、ほとんどのサーバーと同様に、デーモンとして、つまりバックグラウンドプロセスとして実行できます。
このプログラムはUbuntu標準リポジトリで利用できます。 インストールするには、次のコマンドを実行します。
sudo apt install vsftpd
ノート: Ubuntuバージョン<14.04の場合は、 apt-get
それ以外の apt
.
インストール後、 vsftpd
デーモンが自動的に起動するはずです。正しく起動したかどうかを確認するには、次のコマンドを実行します。
サービスvsftpdステータス
![](http://img.drupalst.com/wp-content/uploads/linux/1092/sbxfd6p2bi.jpg)
ステータスがない場合 アクティブ
、つまり、正しく起動されていない場合は、次のコマンドを実行して起動し、実行後にステータスを再度確認して、現在の状態かどうかを確認します。 アクティブ
.
sudoサービスvsftpd開始
構成
の構成ファイル vsftpd
は /etc/vsftpd.conf
。ここで利用できる構成オプションは多数あります。一般的に必要な2つのオプションを変更します。
vimまたは任意のエディターを使用してファイルを開きます。
sudo vim /etc/vsftpd.conf
デフォルトでは、FTPサーバーへの匿名アクセスは許可されていません。匿名アクセスを許可するには、変数を変更します analog_enable
から いいえ
に はい
ファイル内。
![](http://img.drupalst.com/wp-content/uploads/linux/1092/sbxfd6p2bi-1.jpg)
匿名アクセスの場合、名前のユーザー ftp
インストール中に作成されます。匿名ユーザーにアクセスするためのデフォルトのディレクトリは / srv / ftp
、これは実際にはユーザーのホームディレクトリです ftp
。匿名ユーザーと共有するファイルはすべてここにコピーする必要があります。
匿名アクセスのディレクトリを変更する場合は、ユーザーのホームディレクトリを変更する必要があります ftp
。これを行うには、次を実行します。
sudo usermod -d ftp
![](http://img.drupalst.com/wp-content/uploads/linux/1092/sbxfd6p2bi-2.jpg)
同様に、デフォルトでは、FTPサーバーへの書き込みアクセス、つまりアップロードアクセスは許可されていません。これを有効にするには、変数を使用して行のコメントを解除します write_enable = YES
.
![](http://img.drupalst.com/wp-content/uploads/linux/1092/sbxfd6p2bi-3.jpg)
ファイルを保存して終了します。 vimを使用している場合は、 逃れる
vimコマンドモードに移動するには、次のように入力します :wq
を押して 入力
ファイルを保存して終了します。
これらの変更を有効にするには、FTPサーバーデーモンを再起動する必要があります。再起動するには、次のコマンドを実行します。
sudoサービスvsftpd再起動
サーバーのテスト
最新のWebブラウザのほとんどは、FTPサーバーへのアクセスのサポートが組み込まれています。つまり、統合されたFTPクライアントとして機能できます。ただし、サーバーからのファイルのダウンロードのみをサポートし、アップロードはサポートしていません。
テストをダウンロード
入力 ftp://
ブラウザのアドレスバーでFTPサーバーにアクセスします。 FTPサーバーのIPアドレスまたはドメイン名です。ローカルFTPサーバーをテストするには、次のように入力します。
ftp://127.0.0.1
![](http://img.drupalst.com/wp-content/uploads/linux/1092/sbxfd6p2bi-4.jpg)
匿名アクセスが有効になっているため、サーバーには、匿名アクセスを有効にしたフォルダのディレクトリリストが表示されていることに注意してください。 / srv / files / ftp
.
![](http://img.drupalst.com/wp-content/uploads/linux/1092/sbxfd6p2bi-5.jpg)
構成ファイルを変更して、今すぐ匿名アクセスを無効にし、ユーザーログインでアクセスをテストしてみましょう。
sudo vim /etc/vsftpd.conf
変数を変更します analog_enable
に いいえ
.
![](http://img.drupalst.com/wp-content/uploads/linux/1092/sbxfd6p2bi-6.jpg)
ファイルを保存して終了します。これらの変更を行うには、FTPサーバーを再起動します。
sudoサービスvsftpd再起動
ブラウザで同じURLをもう一度開きます(ftp://127.0.0.1
).
![](http://img.drupalst.com/wp-content/uploads/linux/1092/sbxfd6p2bi-7.jpg)
ご覧のとおり、サーバーはユーザー名とパスワードの入力を求めています。クレデンシャルを入力してを押します わかった
.
![](http://img.drupalst.com/wp-content/uploads/linux/1092/sbxfd6p2bi-8.jpg)
これで、ディレクトリリストはログインしたユーザーのホームディレクトリになります。この場合、 / home / abhi
.
![](http://img.drupalst.com/wp-content/uploads/linux/1092/sbxfd6p2bi-9.jpg)
アップロードテスト
Webブラウザでは、FTPサーバーからのファイルのダウンロードのみが許可されています。 FTPサーバーにファイルをアップロードするには、ファイルエクスプローラーからサーバーにアクセスします。
Ubuntuでは、デフォルトのファイルエクスプローラーであるNautilusを使用します。ドックからアイコンをクリックしてNautilusを開くか、Dashから検索して開きます。
![](http://img.drupalst.com/wp-content/uploads/linux/1092/sbxfd6p2bi-10.jpg)
クリック その他の場所
一番下に。
![](http://img.drupalst.com/wp-content/uploads/linux/1092/sbxfd6p2bi-11.jpg)
一番下に、FTPサーバーのURLを入力します(ftp://127.0.0.1
)[サーバーに接続]入力ボックスで、[接続]ボタンを押します。
![](http://img.drupalst.com/wp-content/uploads/linux/1092/sbxfd6p2bi-12.jpg)
[登録ユーザー]チェックボックスをオンにして、ユーザー名とパスワードを入力します。上記で入力したパスワードを記憶するための3つのオプションのいずれかを選択できます。最後に、ウィンドウの上部にある[接続]ボタンを押します。
![](http://img.drupalst.com/wp-content/uploads/linux/1092/sbxfd6p2bi-13.jpg)
これで、ファイルエクスプローラーで行う通常の方法で、FTPサーバー上でファイルを簡単にコピーまたは作成できます。 FTPサーバーは以下のように左側に表示されます。
![](http://img.drupalst.com/wp-content/uploads/linux/1092/sbxfd6p2bi-14.jpg)
Note: それでも vsftpd
匿名ユーザーへの書き込みアクセス用に構成できます。これはシステムにとって大きなセキュリティリスクであり、絶対に使用しないでください。 FTPサーバーへのアップロードは、システムユーザーに対してのみ有効にする必要があります。
結論
このようにして、UbuntuでFTPサーバーをセットアップできます。ネットワーク内の別のシステムからこれにアクセスしてみてください。その場合は、次のように入力する必要があります。 ftp:// Your_IP_address
それ以外の ftp://127.0.0.1
他のシステムのブラウザで。
ほとんどのFTPサーバープログラムは、SSL / TLS(FTPSと呼ばれる)またはSSHFTPを使用して転送されたコンテンツを暗号化するように保護されていることに注意してください。 vsftpd
実装にFTPSを使用します。