FTPd(FTPサーバー)


Last Update: 2004/06/19
14797 th Visitor

FTPd

FreeBSDと他のPC間でファイルをやりとりをしたい場合に、できなくて困るということが結構あります。
PC間のファイル転送と言えばネットワーク共有やFTPが基本ですが、FreeBSDは標準でFTPサーバー(FTPd)がインストールされていますのでこれを使うのが楽だと思います。

FTPdを有効にする

FreeBSDにはOS標準でFTPdがインストールされていますので、設定を有効にするだけでFTPdが立ち上がります。
FTPdはinetdというデーモン上で動作させるのがお手軽ですので、inetdが動いてない環境では最初にinetdが動くように設定します。

> su
# /stand/sysinstall

でsysinstall menuを起動します。
起動できたら[Configure]-[Networking]へ進み、[inetd]のチェックボックスを有効にします。
すると「inetdを有効にするとシステムがネットワークに晒されることになるからリスクが生じますよ」というメッセージが表示されますので「Yes」を選択して承諾してください。

すると次の画面で「/etc/inetd.confを設定しますか?」とメッセージが表示されます。
inetd上ではTelnetdやFTPdなどを動かすことが可能ですが、その設定ファイルが/etc/inetd.confになります。
今回はFTPdを動かしたいので/etc/inetd.confを編集する必要がありますので「Yes」を選択し編集します。

# vi /etc/inetd.conf

#ftp stream tcp nowait root /usr/libexec/ftpd ftpd -l
#ftp stream tcp6 nowait root /usr/libexec/ftpd ftpd -l

ftp straam tcpと書いてある部分のコメントを外す。tcp6の方はIPv6版

ftp stream tcp nowait root /usr/libexec/ftpd ftpd -l
#ftp stream tcp6 nowait root /usr/libexec/ftpd ftpd -l

ftpdのコメントアウトを外し/etc/inetd.confを保存したらsysinstallに戻りますのでExitで終了させてください。
PCを再起動すればinetdが起動し、その中でftpdが起動するようになります。
再起動後に正常に起動しているかを確かめるには、

> ps ax | grep inetd
529 ?? Is 0:00.00 /usr/sbin/inetd -wW -C 60

としてinetdが表示されればまずは成功です。
さらに、

> ftp localhost

と入力して、ユーザー名を求められたらftpdが正常稼働していますので、他のPCからFTPクライアントを使ってアクセスすればファイル転送が可能になります。

sysinstallを使わずにftpdを有効にする

/stand/sysinstallは便利ですが、直接設定ファイルを編集すればより簡単にftpdを有効にできます。
まずinetdを起動させるには/etc/rc.confに以下を記述します。

inetd_enable="YES"

記述できたらinetdの設定ファイル/etc/inetd.confを編集します。
これはsysinstall使用時と同じで、

# vi /etc/inetd.conf

#ftp stream tcp nowait root /usr/libexec/ftpd ftpd -l
#ftp stream tcp6 nowait root /usr/libexec/ftpd ftpd -l

ftp straam tcpと書いてある部分のコメントを外す。tcp6の方はIPv6版

ftp stream tcp nowait root /usr/libexec/ftpd ftpd -l
#ftp stream tcp6 nowait root /usr/libexec/ftpd ftpd -l

とすれば完了です。
PCを再起動すればftpdが使用可能になります。



もどるにゅ

トップにもどるにゅ