22 June 2009

ProFTPD設定 (TLS無し) on Ubuntu 8.1

ProFTPDのインストール


root@localhost:~# apt-get install proftpd

inetd経由か、standaloneか選択肢が表示されたので、今回はstandaloneを選択。(セキュリティを考えて、利用するときのみ /etc/init.d/proftpd コマンドを用いて手動でサービスを立ち上げるため)

次に、アクセス制限の設定を行う。

特定アドレスからのみアクセスを許可、許可グループのユーザのみアクセス許可。同時に、chmodを利用可能に設定しておく。

/etc/proftpd.conf

<Global>
AllowOverwrite yes
<Limit ALL SITE_CHMOD>
AllowAll
</Limit>

<Limit LOGIN>
Order deny, allow
Allow from 127.0.0.1 192.168.1.0/24
DenyGroup !ftp-group ← NOT演算子を用いる
</Limit>
</Global>


ftp専用のグループの作成し、ユーザを所属させる。 (なお、-G に続くグループ名は、既に所属済みのグループ名を含め全て設定する必要がある。所属済みのグループは id コマンドで表示できる)


[root@localhost ~]# /usr/sbin/groupadd ftp-group

[root@localhost ~]# /usr/sbin/usermod -G ftp-group login_user

その他のFTPDの設定

/etc/proftpd.conf

# Set off to disable IPv6 support which is annoying on IPv4 only boxes.
# UseIPv6 on
UseIPv6 off ← IPv6は使わないので変更

# ServerName "Debian"
ServerName "ftp server" ← 無難な文字列に変更

# DefaultRoot ~
DefaultRoot ~ ← 全ユーザをhomeディレクトリ以上に遡れなくする

TimesGMT off ← ローカル時間を用いる

# RequireValidShell off
RequireValidShell off ← ログオンできないユーザでも利用可

その他の設定に関する説明は、公式ページに掲載されている。 また、Fedoraの場合の説明は「ProFTPD設定 (TLS無し) on Fedora 8」を参照。