CentOS 7でFTPサーバを構築する手順について。
LinuxでFTPサーバを構築する場合、一般的に「vsftpd」というパッケージを用いる。
今回は、このパッケージを用いてCentOS7でFTPサーバを構築する。

1.インストール

まずはインストールから。以下のコマンドを実行する。

yum install vsftpd ftp -y

次に、「vsftpd」の設定ファイルである「/etc/vsftpd/vsftpd.conf」を編集する。

vi /etc/vsftpd/vsftpd.conf

編集内容は、環境にもよるが以下の5項目を編集する。
※「ftpd_banner」は任意

anonymous_enable=NO
ascii_upload_enable=YES
ascii_download_enable=YES
ftpd_banner=Welcome to FTP service.
use_localtime=YES

サービスを有効化し、FTPサーバを起動させる。

systemctl enable vsftpd
systemctl start vsftpd

2.ファイアウォールとSELinuxの設定変更

インストールと初期設定は終わったが、ファイアウォールとSELinuxでの設定変更を行わないとFTPサーバにアクセス出来ない。
そこで、以下のコマンドを実行する。

ファイアウォールで21番ポートを通すように設定し、再起動する。

firewall-cmd --permanent --add-port=21/tcp
firewall-cmd --reload

SELinuxでftp_home_dirを有効にし、ファイルの作成許可を行う。

setsebool -P ftp_home_dir on

これで、FTPサーバに対してアクセス出来るようになった。