ProFTPD設定 · 2 min read · Dec 22, 2025
Debian WheezyおよびUbuntu 14.04にProFTPDをインストールおよび設定する方法
この文書では、Debian WheezyサーバーにProFTPDをインストールおよび設定する方法について説明します。これはUbuntu 14.04でも動作します。ProFTPDは、UnixおよびUnix系オペレーティングシステム用のFTPデーモンです。ProFTPDはGNU一般公衆ライセンス(GPL)の下で開発、リリース、配布されており、基本的にそれをフリーソフトウェアとして確立します。つまり、完全かつ完全なソースコードがProFTPDパッケージに付随するか、事前にコンパイルされたバイナリを配布するすべてのサイトによって提供される限り、販売、ライセンス付与、その他の方法で操作することができます。このソフトウェアは、すべての派生作品もGNU一般公衆ライセンスの下でライセンスされる限り、いつでも誰でも修正できます。
このガイドは、UbuntuとDebianサーバーの両方で機能します。
1 前提条件
このチュートリアルはDebian 7.6サーバーに基づいているため、このチュートリアルを続行する前に基本的なDebian 7.6サーバーのインストールを設定する必要があります。システムには静的IPアドレスが必要です。このチュートリアルでは、IPアドレスとして192.168.0.100を使用し、ホスト名としてserver1.example.comを使用します。
2 ProFTPDのインストール
2.1 インストール:
まず、次のようにProFTPDとOpenSSLをインストールします:
apt-get install proftpd opensslProFTPDに関するいくつかの質問が表示されるので、スタンドアロンを選択してOKを押します。

次のようにProFTPDのバージョンを確認できます:
proftpd -vroot@server1:~# proftpd -v
ProFTPD Version 1.3.4a
root@server1:~#
2.2 ProFTPDユーザーの作成
これには、ftpgroupというグループと、ProFTPD用のユーザーsrijanを作成します。ユーザーsrijanのホームディレクトリを/ftpshareに制限します。
addgroup ftpgroupadduser srijan -shell /bin/false -home /ftpshareroot@server1:~# adduser srijan -shell /bin/false -home /ftpshare
Adding user `srijan' ...
Adding new group `srijan' (1002) ...
Adding new user `srijan' (1001) with group `srijan' ...
Creating home directory `/ftpshare' ...
Copying files from `/etc/skel' ...
Enter new UNIX password: <--ftppassword
Retype new UNIX password: <--ftppassword
passwd: password updated successfully
Changing the user information for srijan
Enter the new value, or press ENTER for the default<--ENTER
Full Name []: <--ENTER
Room Number []: <--ENTER
Work Phone []: <--ENTER
Home Phone []: <--ENTER
Other []: <--ENTER
Is the information correct? [Y/n] <--Y
root@server1:~#次に、srijanユーザーをftpgroupに追加します:
adduser srijan ftpgroup次に、ディレクトリの内容を削除したり名前を変更したりできないように保護する必要があるため、次のようにディレクトリの権限を変更します:
chmod -R 1777 /ftpshare/次に、次のようにProFTPDを設定する必要があります:
nano /etc/proftpd/proftpd.conf以下のように変更します
[...]
UseIPv6 off
[...]
RootLogin off
RequireValidShell off
DefaultRoot ~
DenyGroup !ftpgroup
私はIPV6を使用していないので、上記でオフにしました。RootLogon offでProFTPDによるrootユーザーのログインを無効にしています。DefaultRootは、ユーザーが自分のホームフォルダにのみアクセスできるように制限するために追加されました。DenyGroupは、ftpgroupのユーザーのみがftpサーバーにアクセスできるようにし、他のすべての接続は拒否されます。
サービスを次のように再起動します:
service proftpd restartサービスを再起動するときに、次のようなエラーが表示されることがあります。
root@server1:~# service proftpd restart
[ ok ] Stopping ftp server: proftpd.
[….] Starting ftp server: proftpdserver1 proftpd[6052]: mod_tls_memcache/0.1: notice: unable to register ‘memcache’ SSL session cache: Memcache support not enabled
. ok
root@server1:~#
このエラーを解決するには、/etc/proftpd/modules.confファイルを編集し、次のように行をコメントアウトします:
nano /etc/proftpd/modules.conf[...]
#LoadModule mod_tls_memcache.c
[...] これでエラーが解決します。
次に、ユーザーsrijanとパスワードでftp://192.168.0.100にログインできます。

3 ProFTPDでのTLSの有効化
ProFTPDでTLSを有効にするには、/etc/proftpd/proftpd.confを開きます。
nano /etc/proftpd/proftpd.conf次のように変更し、行のコメントを外します:
[...]
Include /etc/proftpd/tls.conf
[...] 次に、元のファイルのバックアップを作成し、次のようにファイルを編集します:
cp /etc/proftpd/tls.conf /etc/proftpd/tls.conf_orig
cat /dev/null > /etc/proftpd/tls.conf
nano /etc/proftpd/tls.conf
以下のようにエントリを入力します:
TLSEngine on
TLSLog /var/log/proftpd/tls.log
TLSProtocol SSLv23
TLSOptions NoCertRequest
TLSRSACertificateFile /etc/proftpd/ssl/proftpd.cert.pem
TLSRSACertificateKeyFile /etc/proftpd/ssl/proftpd.key.pem
TLSVerifyClient off
TLSRequired on
TLSを使用するには、SSL証明書を作成する必要があります。私は/etc/proftpd/sslに作成しますので、まずそのディレクトリを作成します:
mkdir /etc/proftpd/ssl
その後、次のようにSSL証明書を生成できます:
openssl req -new -x509 -days 365 -nodes -out /etc/proftpd/ssl/proftpd.cert.pem -keyout /etc/proftpd/ssl/proftpd.key.pem国名(2文字のコード)[AU]: <– 国名を入力します(例: “DE”)。
州または県名(正式名称)[Some-State]: <– 州または県名を入力します。
市名(例: city)[]: <– 市名を入力します。
組織名(例: company)[Internet Widgits Pty Ltd]: <– 組織名を入力します(例: 会社名)。
組織単位名(例: section)[]: <– 組織単位名を入力します(例: “IT部門“)。
共通名(例: あなたの名前)[]: <– システムの完全修飾ドメイン名を入力します(例: “server1.example.com”)。
メールアドレス[]: <– メールアドレスを入力します。
セキュリティ上の理由から、証明書を次のように読み取り専用にします:
chmod 0440 /etc/proftpd/ssl/proftpd.key.pem最後に、次のようにProFTPDサービスを再起動します:
service proftpd restartFileZillaソフトウェアを使用してProFTPDサーバーに接続できます。サーバーに接続するには、クライアントにFileZillaがインストールされている必要があります。FileZillaを開き、次のように詳細を入力します:

詳細は次のとおりです
ホスト = 192.168.0.100
プロトコル = FTP
ユーザー = srijan
ポート = 21以外のポートにカスタマイズしていない場合は空白にできます
パスワード = ftppassword(上記で作成したばかり)
注意: 上記の手順で接続を暗号化したため、Require explicit FTP over TLSで暗号化を使用します。
TLSを構成していない場合は、Use Plain FTPを使用できます。
証明書を信頼するように求められたら、OKを押します。
FTP共有ディレクトリに接続されます。
4 ProFTPDでの匿名FTPアクセス
ProFTPDで匿名FTPアカウントを作成できます。ProFTPD設定ファイルに次のエントリを追加します:
nano /etc/proftpd/proftpd.confファイルの最後に次のエントリを追加します。
[...]
###匿名共有#####
User ftp
Group nogroup
AllowAll
# クライアントが「anonymous」と「ftp」の両方でログインできるようにしたい
UserAlias anonymous ftp
# 見た目の変更、すべてのファイルはftpユーザーに属します
DirFakeUser on ftp
DirFakeGroup on ftp
RequireValidShell off
# 匿名ログインの最大数を制限
MaxClients 10
# 匿名chroot内のすべての場所でWRITEを制限
DenyAll
~ 次に、FileZillaを通じて接続します:

注意: 上記の手順で接続を暗号化したため、Require explicit FTP over TLSで暗号化を使用します。
TLSを構成していない場合は、Use Plain FTPを使用できます。
接続を押します:

証明書を信頼するように求められたら、OKを押します。

匿名ユーザーでサーバーに正常に接続しました。
おめでとうございます!これでDebian WheezyにProFTPDサーバー環境を正常に構成しました :)
5 リンク
Debian : https://www.debian.org/
Ubuntu : http://www.ubuntu.com/
ProFTPD : http://www.proftpd.org/
新しい投稿を受信箱で受け取る
スパムはありません。いつでも購読を解除できます。