ProFTPD インストール · 1 min read · Dec 17, 2025
CentOS 7.0にProFTPDをインストールする方法
この文書では、CentOS 7.0サーバーにProFTPDをインストールおよび構成する方法について説明します。ProFTPDは、UnixおよびUnix系オペレーティングシステム用のFTPデーモンです。ProFTPDはGNU一般公衆ライセンス(GPL)の下で開発、リリース、配布されており、基本的にそれをフリーソフトウェアとして位置づけています。つまり、完全かつ完全なソースコードが任意のProFTPDパッケージに付随するか、事前にコンパイルされたバイナリを配布するすべてのサイトによって利用可能にされる限り、販売、ライセンス、その他の方法で操作することができます。このソフトウェアは、すべての派生作品もGNU一般公衆ライセンスの下でライセンスされる限り、誰でもいつでも変更できます。
1 前提条件
このチュートリアルはCentOS 7.0サーバーに基づいているため、このチュートリアルを続行する前に基本的なCentOS 7.0サーバーのインストールを設定する必要があります。システムには静的IPアドレスが必要です。このチュートリアルでは、IPアドレスとして192.168.0.100を使用し、ホスト名としてserver1.example.comを使用します。
2 ProFTPDのインストール
2.1 インストール:
これを有効にするために、EPELを次のように設定します:
rpm -ivh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-2.noarch.rpmまず、ProFTPDとOpenSSLを次のようにインストールします:
yum install -y proftpd openssl proftpd-utilsサービスを開始する必要があります
systemctl start proftpd.service
systemctl enable proftpd.serviceCentOS 7.0では、ftpサービスのためにFirewall-cmdを次のように構成する必要があります:
firewall-cmd --add-service=ftp --permanent
firewall-cmd --reloadProFTPDのバージョンを次のように確認できます:
proftpd -v[root@server1 ~]# proftpd -v
ProFTPDバージョン 1.3.5
[root@server1 ~]#
2.2 ProFTPDユーザーの作成
これのために、ftpgroupというグループと、ProFTPD用のユーザーsrijanを作成します。ユーザーsrijanのホームディレクトリを/ftpshareに制限します。
groupadd ftpgroup次に、ftpgroupにユーザーsrijanを追加します:
useradd -G ftpgroup srijan -s /sbin/nologin -d /ftpshare
passwd srijan[root@server1 ~]# passwd srijan
ユーザーsrijanのパスワードを変更しています。
新しいパスワード: <--ftppassword
新しいパスワードを再入力してください: <--ftppassword
passwd: すべての認証トークンが正常に更新されました。
[root@server1 ~]# 次に、ディレクトリの内容を他のユーザーが削除したり名前を変更したりできないように保護する必要がありますので、ディレクトリの権限を次のように変更します:
chmod -R 1777 /ftpshare/これでProFTPD接続の準備が整いました
ユーザーsrijanとパスワードでftp://192.168.0.100にログインできます。
3 ProFTPDでのTLSの有効化
ProFTPDでTLSを有効にするには、/etc/proftpd/proftpd.confを開きます。ファイルを編集する前に、元のファイルのバックアップを作成してから、以下のようにファイルを編集するのが良いでしょう:
cp /etc/proftpd.conf /etc/proftpd.conf.bak
nano /etc/proftpd.conf
以下のようにエントリを追加します
[...]
DefaultRoot ~ !adm
PassivePorts 6000 6100
[...]
#
TLSEngine on
TLSRequired on
TLSRSACertificateFile /etc/pki/tls/certs/proftpd.pem
TLSRSACertificateKeyFile /etc/pki/tls/certs/proftpd.pem
TLSCipherSuite ALL:!ADH:!DES
TLSOptions NoCertRequest
TLSVerifyClient off
TLSRenegotiate ctrl 3600 data 512000 required off timeout 300
TLSLog /var/log/proftpd/tls.log
#
# TLSSessionCache shm:/file=/var/run/proftpd/sesscache
#
#
[...] 6000および6100ポートを追加してFTPのパッシブモードを許可し、同様にCentOSのfirewalldサービスを通じてパッシブモードを許可します:
firewall-cmd --add-port=6000-6100/tcp --permanent
firewall-cmd --reloadポートの状態を次のように確認できます:
firewall-cmd --list-ports[root@server1 ~]# firewall-cmd --list-ports
6000-6100/tcp
[root@server1 ~]#さらに、SELINUXにファイルの読み取り/書き込みを許可するように指示する必要があります。
setsebool -P allow_ftpd_full_access=1TLSを使用するには、SSL証明書を作成する必要があります。/etc/pki/tls/certsに作成します。SSL証明書は次のように生成できます:
openssl req -x509 -nodes -newkey rsa:1024 -keyout /etc/pki/tls/certs/proftpd.pem -out /etc/pki/tls/certs/proftpd.pem[root@server1 certs]# openssl req -x509 -nodes -newkey rsa:1024 -keyout /etc/pki/tls/certs/proftpd.pem -out /etc/pki/tls/certs/proftpd.pem
1024ビットRSAプライベートキーを生成しています
……………………………..++++++
………++++++
新しいプライベートキーを’/etc/pki/tls/certs/proftpd.pem’に書き込んでいます
証明書要求に組み込まれる情報を入力するように求められます。
入力する内容は、識別名またはDNと呼ばれるものです。
いくつかのフィールドがありますが、いくつかは空白のままにしておくことができます。
いくつかのフィールドにはデフォルト値があります。
‘.’を入力すると、そのフィールドは空白のままになります。
国名(2文字コード) [XX]:
<–DE
州または県名(フルネーム) []:
<– ハンブルク
地方名(例:都市) [デフォルトの都市]:
<– ルーネブルク
組織名(例:会社) [デフォルトの会社名]:
<– ISPConfig
組織単位名(例:セクション) []:
<– 開発
共通名(例:あなたの名前またはサーバーのホスト名) []:
<–
server1.example.com
メールアドレス []:
**<– [email protected]
[root@server1 certs]#
上記の赤い値をお好みに応じて入力してください。私は単なる例を示しました。
セキュリティ目的のため、証明書を次のように読み取り専用にします:
chmod 0440 /etc/pki/tls/certs/proftpd.pem最後に、ProFTPDサービスを次のように再起動します:
systemctl restart proftpd.serviceFilezillaソフトウェアを使用してProFTPDサーバーに接続できます。クライアントにFilezillaをインストールしておく必要があります。Filezillaを開き、次のように詳細を入力します:
詳細は次のとおりです。
ホスト = 192.168.0.100
プロトコル = FTP
ユーザー = srijan
ポート = 21以外のポートをカスタマイズしていない場合は空白にできます
パスワード = ftppassword(上で作成したばかり)
注意: 上記のステップで接続を暗号化したため、TLSを介した明示的なFTPを要求する暗号化を使用します。
TLSを構成していない場合は、プレーンFTPを使用できます。
証明書を信頼するように求められたら、OKを押してください
FTP共有ディレクトリにTLS接続で接続されます。
4 ProFTPDでの匿名ftpアクセス
ProFTPDで匿名ftpアカウントを作成できます。ProFTPD構成ファイルに次のエントリを追加します:
nano /etc/proftpd.confそして、ファイルの最後に次のエントリを追加します。
[...]
###匿名共有#####
User ftp
Group ftp
UserAlias anonymous ftp
DirFakeUser on ftp
DirFakeGroup on ftp
MaxClients 10
DenyAll
サービスを再起動する必要があります:
systemctl restart proftpd.service次のようにFilezillaを通じて接続します:

注意: 上記のステップで接続を暗号化したため、TLSを介した明示的なFTPを要求する暗号化を使用します。
TLSを構成していない場合は、プレーンFTPを使用できます。
接続を押してください:

証明書を信頼するように求められたら、OKを押してください

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