Vine Mac   - Vine Linux PPC on iBook で始めるリナックス -


■ Proftpd で FTP サーバー■


Linux で動く FTP サーバープログラムは何種類かありますが、
今回は、Vine Linux 3.1 に標準で入っている Proftpd-1.2 を使ってみます。

以下は、Proftpd を使って各ユーザーのホームディレクトリに FTP でアクセスする設定方法です。

使用環境:vine linxu ppc 3.1, proftpd-1.2.10-0vl1.1, 02/08/2006


● Proftpd のインストール

FTP などの基本的なサーバーは、大抵OSのインストール時に既に組み込まれています。
まだインストールしていない場合でも、apt 経由で簡単にインストールできます。

まず、既にインストールされているか確認します。

$ rpm -qa | grep proftpd

proftpd-1.2.10-0vl1.1

$

上記の結果では Proftpd-1.2 がインストール済みであることが分かります。

何も表示されなければ、apt-get でインストールします。

# apt-get install proftpd

パッケージリストを読みこんでいます... 完了
依存情報ツリーを作成しています... 完了
   ・
   ・
   ・

#

管理者権限で行ってください。

動作させます。

# /etc/init.d/proftpd start

ProFTPdを起動中:                           [ OK ]

#

これで Proftpd による FTP サーバーが立ち上がりました。

エクスプローラーのアドレス欄などに "ftp://[サーバーのIPアドレス]/" と入れて接続し、
ユーザー名とパスワードを入力することで、そのユーザーのホームディレクトリにアクセス出来ます。



サーバー 192.168.1.3 に、ユーザー hoge でログインした際の画面です。



● セキュリティの強化

初期のままでは、セキュリティ面に少し危ない部分があるので、若干編集します。

デフォルトの設定では、FTP に接続したユーザーは、
Linux 上のルートディレクトリ "/" までさかのぼることが出来てしまいます。
これは少し危険ですので、FTP 上のルートディレクトリを各ユーザーのホームディレクトリに指定して、
それ以上さかのぼってアクセスできないように設定します。

Proftpd の設定ファイルは /etc/proftpd.conf です。
管理者権限で開きます。

# vi /etc/proftpd.conf

FTP 上のルートディレクトリを各ユーザーのホームディレクトリに設定するには、
ファイルの末端に以下の行を追加します。

DefaultRoot ~/

これで、各ユーザーは自分のホームディレクトリより上にはアクセスできなくなりました。

また、anonymous (匿名) 接続を不許可にするため、以下の行を無効化(コメント化)します。

## A basic anonymous configuration, no upload directories.
#<Anonymous ~ftp>
#
#
User ftp
#Group ftp
#
#
# We want clients to be able to login with "anonymous" as well as "ftp"
#UserAlias anonymous ftp
#
#
# Limit the maximum number of anonymous logins
#MaxClients 10
#
#
# do not require shells listed in /etc/shells (user ftp do not have
## shell...)
#RequireValidShell no
#
#
# We want 'welcome.msg' displayed at login, and '.message' displayed
## in each newly chdired directory.
#DisplayLogin welcome.msg
#DisplayFirstChdir .message
#
#
# Limit WRITE everywhere in the anonymous chroot
#<Limit WRITE>
#DenyAll
#</Limit>
#
#
</Anonymous>

これで、FTP に接続するには必ずアカウント名とパスワードが必要になりました。

設定を反映するため、Proftpd を再起動させます。

# /etc/init.d/proftpd restart

ProFTPdを停止中:                           [ OK ]
ProFTPdを起動中:                           [ OK ]

#


以上で編集終了です。



ウェブサイトファイルの転送やバックアップファイルの保存など、FTP の使用方法は様々です。
というより、もはや必須サーバーのひとつと言えるでしょう。