CentOS 7  FTPサーバー(vsftpd)のインストールと設定(CentOS 7.5)

2018年6月27日CentOS 7, Linux

CentOS 7 にvsftpdをインストールしてFTPサーバーを構築します。
FTPサーバーでの通信は内容が暗号化されていないので、セキュリティには十分に注意をしてください。

 

vsftpdインストールと設定

vsftpdのインストール

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

 # yum -y install vsftpd

 

vsftpd設定

設定ファイルを編集します。

# vi /etc/fsftpd/fsftpd.conf

変更する箇所のみ表示します。

anonymous_enable=NO                匿名ユーザーはログイン禁止

xferlog_enable=YES         ログファイル有効化
xferlog_file=/var/log/xferlog
xferlog_std_format=YES

ascii_upload_enable=YES      アスキーモードでのアップロード、ダウンロード許可
ascii_download_enable=YES        

chroot_local_user=YES        ホームディレクトリより上へのアクセス不可
chroot_list_enable=YES          アクセス許可するユーザーリスト有効化
chroot_list_file=/etc/vsftpd/chroot_list   アクセス許可するユーザーリスト

listen=YES              IPv4をリッスンする
listen_ipv6=NO           不要ならIPv6はリッスンしない

userlist_deny=NO        アクセス拒否するユーザーリストファイルを使用しない
pasv_promiscuous=YES     パッシブモードを利用する
pasv_min_port=50001      パッシブモード使用時のポートの範囲
pasv_max_port=50005

 

FTP接続ユーザー設定

「chroot_list」を作成します。

# vi  /etc/vsftpd/chroot_list

ホームディレクトリより上へ行くのを禁止するユーザー名を記入します。
例: user

「user_list」にFTP接続させないユーザー名を記入します。

# vi /etc/vsftpd/user_list

例: root
noboby

※「userlist_enable」、「userlist_deny」の関係

user_list
ユーザ名あり
user_list
ユーザ名なし
userlist_enable=YES userlist_deny=YES 接続不可 接続可
userlist_deny=NO 接続可 接続不可
userlist_enable=NO 接続可

 

FTP接続できるクライアントの制限

「tcp_wrappers」の設定をします。
# vi /etc/hosts.allow

# vi /etc/hosts.allow

許可するIPアドレスを記入します。
vsftpd : 127.0.0.1 192.168.100. 105.xxx.xxx.xxx

# vi /etc/hosts.deny

拒否するIPアドレスを記入します。
vsftpd : ALL

許可したIPアドレス以外はすべて拒否する設定をしました。

ポートを開けます。
今回はパッシブモードでの設定なので、上記で設定した 50001~50005番と21番を開放します。

# firewall-cmd –add-service=ftp –zone=public –permanent
# firewall-cmd –add-port=50001-50005/tcp –zone=public –permanent

firewalldを再起動します。

# systemctl restart firewalld

 

vsftpd起動と自動起動設定

vsptpdを起動します。

# systemctl vsftpd start

自動起動設定をします。

# systemctl enable vsftpd

自動起動設定を確認します。

# systemctl is-enabled vsftpd
enabled

 

以上で、vsftpdのインストールと設定は完了です。

2018年6月27日CentOS 7, Linux

Posted by さなころ