CentOS8 に FTP をインストールして利用できる

環境

# cat/etc/redhat-release
CentOS Stream release 8

操作方法
1.インストール前のポートの確認
OS に FTP サーバをインストールする前に、FTP で利用されるポートが空いているか下記のコマンドで確認します

# ss -atn

2. FTP 用のユーザを OS に作成します

# useradd ftpuser
# passwd ftpuser
ユーザー ftpuser のパスワードを変更。
新しいパスワード:
新しいパスワードを再入力してください:
passwd: すべての認証トークンが正しく更新できました。

3.FTP 用のディレクトリを作成します

# mkdir -p /var/www/ftpdir

権限を付与します

# chown ftpuser /var/www/ftpdir
# chmod 755 /var/www/ftpdir

確認

# ls -la /var/www/

4.ftpサーバをインストールします

# yum -y install vsftpd

5.vsftpd の初期設定を行います

# vi /etc/vsftpd/vsftpd.conf

下記を追加します

# userlist_file で指定したユーザを接続許可
userlist_enable=YES
# アクセスファイル(/etc/hosts.allow, /etc/hosts.deny)をアクセス制御に利用
tcp_wrappers=NO

下記のファイルに OS に作成した FTP 用ユーザを記載します

# vi /etc/vsftpd/chroot_list
ftp-user → 追記

FTP サーバを再起動します

# systemctl restart vsftpd

6.インストール後のポートの確認
FTP サーバをインストールして起動した後に FTP で利用される 21 番ポートが空いているか確認します。

# ss -atn
State         Recv-Q        Send-Q                   Local Address:Port                  Peer Address:Port         Process
LISTEN        0             128                            0.0.0.0:111                        0.0.0.0:*
LISTEN        0             128                            0.0.0.0:22                         0.0.0.0:*
ESTAB         0             96                     192.168.229.141:22                   192.168.229.1:61572
LISTEN        0             128                               [::]:111                           [::]:*
LISTEN        0             32                                   *:21                               *:*
LISTEN        0             128                               [::]:22                            [::]:*

7.FTP の接続確認
Windows のコマンドプロンプトでも FTP 通信することができるため、コマンドプロンプトを起動して次の手順でアクセスし、「230 Login successful.」が表示されれば FTP 接続に成功したことを確認できます。

C:\Users\arkuser>ftp 192.168.229.141
192.168.229.141 に接続しました。
220 (vsFTPd 3.0.3)
200 Always in UTF8 mode.
ユーザー (192.168.229.141:(none)): ftpuser
331 Please specify the password.
パスワード:
230 Login successful.