FTPサーバー設定

概 要

FTPサーバーの設定を行います。クライアント側からFTPを使って、ファイルを自動アップロードするプログラムを作ったことはありますが、今回はサーバー側の設定を確認してみます。

FTPサーバー設定

VSFTPDをインストールします。

yum install vsftpd

設定ファイル(“vsftpd.conf” )を編集用で開きます。

cp /etc/vsftpd/vsftpd.conf/etc/vsftpd/vsftpd.conf.org
vim /etc/vsftpd/vsftpd.conf

今回私の環境での “vsftpd.conf” ファイル設定・変更内容は以下の通りです。

anonymous_enable=NO 匿名ユーザーログイン禁止
ascii_upload_enable=YES ASCII送信許可
ascii_download_enable=YES
tcp_wrappers=NO ローカル環境の為、不要
use_localtime=YES ローカル時間使用(?)
userlist_enable=YES vsftpd.user_list記載ユーザーのみFTP接続許可
userlist_deny=NO
listen=YES IPv4リッスン
listen_ipv6=NO IPv6リッスンしない
chroot_local_user=YES chroot_list記載ユーザーを除き、ログインディレクトリ上位接続不可
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
xferlog_file=/var/log/vsftpd.log 接続履歴出力ファイル設定

次にFTP接続を許可する “vsftpd.user_list” を編集用で開きます。

vim /etc/vsftpd/user_list

ファイル(“vsftpd.user_list” )内に既に書かれている関係のないユーザーを消去し、対象ユーザーを記載・保存します。
下記はコメント部のみ残し、“user1” を新たに追加した状況です。

# vsftpd userlist
# If userlist_deny=NO, only allow users in this file
# If userlist_deny=YES (default), never allow users in this file, and
# do not even prompt for a password.
# Note that the default vsftpd pam config also checks /etc/vsftpd/ftpusers
# for users that are denied.
user1

次に上位ディレクトリ接続許可設定ファイルを編集します。

vim /etc/vsftpd/chroot_list

初回はファイル(“chroot_list” )が新たに作成されますので、“user1” に接続許可する場合、記載・保存します。

user1

rootユーザー以外の “chroot_list” への接続を禁止します。

chmod 600 /etc/vsftpd/chroot_list
ls -l /etc/vsftpd/chroot_list       ※設定内容確認

vsftpdを起動します。

systemctl start vsftpd.service

サーバー再起動時の自動起動設定します。

systemctl enable vsftpd.service

ファイアウォール解除設定します。

firewall-cmd –zone=public –add-service=ftp –permanent
firewall-cmd –reload

 

以上です。

自宅のローカル環境ですが、フリーソフトにホスト名(IPアドレス)、ユーザー、パスワードを設定し、接続可能であることを確認しました。
尚、接続履歴出力ファイルを設置しましたが、FTP接続のファイル転送履歴が、下記の通りログファイルに接続時間・ユーザー・転送ファイル等記録されています。

まとめ

HTTPサーバー等も設定し、なんとなく出来た様な気になっていますが、本当にいろいろな機能(HTTP通信とか・・・)が動くのか不安もあります。少しづつでも確認していきたいと思います。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です