サーバー構築

FTPやPPTPサーバーの構築

FTPサーバーの構築(Proftp)

次に取り掛かったのはFTPサーバーです。外部からWEBサーバーのページや内容ファイルを更新する為にはFTPサーバーを構築しなければ基本的にはできません。(ファイル共有などでできないことは無いですが、私は色々な場所で更新したいし、面倒だったので構築しました。)

PROFTPの起動

起動は意外と簡単です。Turbolinux10serverではProftpというFTPサーバーソフトを使っています。他にも色んなソフトがありますが、一番簡単に構築できたので採用しています。起動させればサーバーにアカウントを持たせればクライアントソフトを使用してログインできるようになります。

起動はコマンド画面で入力し、ENTERを押すとサービスは起動します。
# /etc/init.d/proftpd start

FTPサーバーの設定

最初の設定では、サーバーにログインしたユーザーは、自分専用のフォルダより上の階層のディレクトリへアクセスすることしかできない様になっています。しかし、サーバーにアップロードさせたいファイルなどがあるかと思います。そこでまた設定です。設定を行うにはWWW(WEB)サーバーの設定と同様にファイルの内容を変更し、サービスを再起動させることです。設定ファイルの場所は「/etc/proftpd/proftpd.conf」になります。最初は何を見てもわかりませんが、ポイントごとに設定していけば特に問題なく色々使えるようになります。

#DefaultRoot ~(#が付いていたら消します)

実は上の設定では「~」の指定により、ユーザーの初期位置が自分のホームディレクトリ(WindowsでいうMydocumentsフォルダみたいな感じ!?)に転送されます。もし、ユーザーのホームディレクトリにある「public_html」ディレクトリに転送したいのであれば、以下のように指定することもできます。通常、「~/public_html」は、ユーザーのホームページを公開するフォルダ(ディレクトリ)として使用されています。よって設定例は次の様になります。

(設定例)DefaultRoot ~/public_html

書き込みと読み込みについての設定です。個別に(フォルダーごとに)書き込みや読み込みに関する許可などの設定ができます。「AllowAll」とは許可の意味、「DenyAll」とは不可の意味をそれぞれ持っています。

<Directory foo[ディレクトリの位置]>
<Limit DIR READ>(読み込みについての記述)
AllowAll or DenyAll
</Limit>
<Limit WRITE>(書き込みについての記述)
AllowAll or DenyAll
</Limit>
</Directory>

設定を保存した後にサービスを再起動させます。
# /etc/init.d/proftpd restart

裏技???

上記の設定で若干不可解で理解できなかった事はユーザーごとに転送可能な異なるフォルダの設定はどのようにしたら良いのかさっぱりわかりませんでした。

例えば[アカウント1]の場合→[フォルダ1]、[アカウント2]の場合→[フォルダ2]のような場面です。設定を色々見てもいまいち理解ができません。
そこで思ったことはレンタルサーバーではなく、自分個人のサーバーなのでクライアントの設定はあまり気にしなくても大丈夫だろうという考えでした。(つま
りつながれば良いじゃんという考え)

そこでそれぞれ[フォルダ1]と[フォルダ2]を作成して試してみました。作成したフォルダを右クリックでプロパティを開き、許可情報の部分でユーザー名とグループの設定を変えてみました。そして、クライアントのFTPソフトの「ホストの初期フォルダ」の部分をその[フォルダ1]の場所にしたところ・・・なんと成功しちゃいました。しかし、設定を一歩間違えると「セキュリティーホール」になっちゃうかも知れないので注意です。

意外と簡単にできるFTPサーバー

サーバー構築で一番簡単だったのが実はFTPサーバーでした。他のサーバーに比べて設定も少なかった事もあるかと思います。

他にもFTPサーバーソフトはあります。

ProFTPの他にもVSFTPなどといったFTPサーバーソフトもあります。LINUXの種類によっては設定が違う場合もありますので、注意しましょ
う。