はじめに
AWS EC2(Amazon Linux 2023)上にvsftpdをインストールして、IPv4とIPv6を共存する方法をまとめます。
第3回では、Amazon Linux 2上でxinetdを使用してIPv4とIPv6を共存しました。
あれから月日は流れ、Amazon Linux 2のサポートは2026年6月30日に迫り、Amazon Linux 2023に移行する必要がありました。
Amazon Linux 2023を使用して同じようにIPv4とIPv6を共存と考えていたら、Amazon Linux 2023ではxinetdが削除されていたため、別の手段で、共存する方法をまとめます。
なお、FTPはパッシブモードを使用します。FTPがパッシブモードでなければIPv4とIPv6の共存は何もしなくてもできたように思いますので、前回同様パッシブモードにします。
今回実施する内容
AWS EC2 (Amazon Linux 2023)にvsftpdをインストールし、IPv4とIPv6を並列に2つ起動する設定を行います。
FTPはパッシブモードを使用します。
環境
EC2 AMI: Amazon Linux 2023 kernel-6.1 AMI
参考
なし
用語
なし
vsftpdのインストールと起動
vsftpdのインストールと起動は以下で実施できます。
※sudoは付与していませんが、この後の操作全般的に権限が適切なユーザーを使うかsudoを付与などで対応が必要です。
dnf install vsftpd -y
vsftpdは、/etc/vsftpdにインストールされます。
vsftpdの開始と起動は以下で実施できます。
systemctl start vsftpd
systemctl enable vsftpd
IPv6用の設定
デフォルトのvsftpdの設定(/etc/vsftpd/vsftpd.conf)では、listenは次のようになっており、IPv6で待ち受けるようになっています。
listen=NO
listen_IPV6=YES
なので、これはこのまま利用します。
IPv4の設定
デフォルトのvsftpdの設定(/etc/vsftpd/vsftpd.conf)をコピーして、IPv4用の設定ファイルを作成します。
cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpdipv4.conf
このファイルをIPv4用にするために、IPv4でのlisten設定、および、パッシブモードの設定をします。
listen=YES
#listen_IPV6=YES #listen}_IPv6をコメントアウトし、listenを有効にする
...
pasv_enable=YES
pasv_address=xxx.xxx.xxx.xxx #IPv4アドレス
pasv_min_port=yyyy #パッシブモードで使用する最小のポート番号
pasv_max_port=zzzz #パッシブモードで使用する最大のポート番号
...
IPv4のvsftpdデーモンの起動
IPv4のvsftpdデーモンを起動するために以下のコマンドを実行します。
@マーク以降の文字列は、上記で作成した設定ファイル名と同じ(拡張子除く)にする必要があります。
systemctl enable vsftpd@vsftpdipv4
これで、/etc/systemd/system/vsftpd.targets.wantsの中に、vsftpd@vsftpdipv4.serviceというファイルが作成されます。
これだけです。
まとめ
今回は、Amazon Linux 2023条にvsftpdをインストールし、IPv4とIPv6をパッシブモードで両方を待ち受けることができる設定を行いました。
以前に比べるとずいぶん楽になって、systemdが動作すれば、複数の設定であらゆるサービスが起動できます。
とっても便利ですね。