VSFTPDを使用してCentOS8でFTPサーバーをセットアップする方法

FTPとは何ですか?

FTP(File Transfer Protocol)は、ユーザーがリモートコンピュータとの間でファイルを交換できるようにするクライアントサーバネットワークプロトコルです。

FTPはプレーンテキストを使用してデータを転送し、データにアクセスします。 Linuxオペレーティングシステムのプラットフォームで利用可能ないくつかの異なるオープンソースのFTPサーバがあります。 最も一般的に使用されるFTPサーバーは、VSFTPD、ProFTPD、およびPureFTPDです。 FTPプロトコルは、接続にポート番号21を使用し、データ転送にポート20を使用します。 パッシブモードでは、追加のポートが使用されます。

このチュートリアルでは、VSFTPDの設定と設定の方法を学びます。 これは非常に安全で安定しており、CentOS8パッケージリポジトリで利用できます。CentOS8にVSFTPDパッケージをインストールするには、ターミナルを開くか、ROOTユーザーとしてSSHでサーバーに接続し、次のコマンドを入力します:

# dnf install –y vsftpdInstalling VSFTPD

パッケージがインストールされたら、次のコマンドを使用してVSFTPDサービスを起動して有効にします:

# systemctl enable vsftpd# systemctl start vsftpdEnable FTP service

FTPサービスを開始

元の設定ファイル/etc/vsftpd/vsftpdのコピーを取ります。次のコマンドを入力してconfを実行します:

# cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bk

元の設定ファイル

のバックアップコピーを作成し、次のコマンドを使用して設定ファイルを編集します:

# vim /etc/vsftpd/vsftpd.conf

vimで設定ファイルを編集する

以下のディレクティブを見つけて設定します:

anonymous_enable=NO # disable anonymous users(Unknown users)local_enable=YES # allow local userswrite_enable=YES # allow ftp write commandslocal_umask=022 # set default umaskdirmessage_enable=YES # enable messages on change directoryxferlog_enable=YES # enable logging of uploads and downloadsconnect_from_port_20=YES # ensure PORT transfer connections from port 20 xferlog_std_format=YES # keep standard log formatlisten=NO # prevent vsftpd run in stand-alone modelisten_ipv6=YES # allow vsftpd to listen on IPv6 socketpam_service_name=vsftpd # set PAM Service name to vsftpd

デフォルトでは、/etc/vsftpd/user_listにあるuser_listファイルにあるすべてのユーザーがFTPサービスの使用を許可されています。

chroot環境でユーザーを制限するには、次のディレクティブを使用します:Advertisement

chroot_local_user=YES # Create chrooted environment for usersallow_writeable_chroot=YES # Allow write permission to a user on chroot jail directory

ユーザーがホームディレクトリにrestrictを保持するには、次のディレクティブを使用します:

userlist_enable=YES # enable vsftpd to load usernamesuserlist_deny=NO # allow access to users in the user list

システムへの全体的なアクセスを提供したい場合は、このディレクティブを設定ファイルに追加します:

chroot_list_enable=YESchroot_list_file=/etc/vsftpd/chroot_list #users in this file list have an overall access

設定ファイルを保存して閉じます。

次に、次のコマンドを使用して、/etc/vsftpd/ディレクトリの下にchroot_listを作成します:

# touch /etc/vsftpd/chroot_list

Chroot FTPユーザー

システム上の全体的なアクセス権を提供したいユーザーのみをそのリストに追加します。

FTPサービスにアクセスするためのユーザーの作成

FTPサービスを使用するためのユーザーを作成するには、次のコマンドを使用します:

# useradd user1# passwd user1

user_listファイルにそのユーザーを追加して、ユーザーをホームディレクトリに制限するには、次のコマンドを使用します:

# vim /etc/vsftpd/user_list

図に示すように、insertに”i”と入力し、そのユーザー名を入力します:

FTPユーザーの作成

ESCキーを押して、次のように入力します。 ファイルを保存します。

特定のユーザーにシステムへの全体的なアクセス権を提供したい場合は、そのユーザーを/etc/vsftpd/chroot_listに追加します。

VSFTPDサービスを再起動します。:

# systemctl restart vsftpd

設定変更の適用

次のコマンドを使用してFTPサービスの状態を確認します:

# systemctl status vsftpd

Ftpサービスの状態を確認する

FTPのファイアウォールを設定する

ファイアウォールを介してFTPサービスを許可するには、次のコマンドを使用します:

# firewall-cmd - - add-service = ftp - - permanent# firewall-cmd - - reload

FTP用のfirewalldの構成

ファイアウォール設定の変更を適用する

WindowsマシンからFTPサーバーをテストする

FTPサーバーに接続するには、クライアントソフトウェアが必要です。 FTPで最も一般的に使用されるソフトウェアはFileZilla、WINSCPなどです。 接続にFileZillaを使用しています。

FTPクライアントソフトウェアを開き、接続するには次の詳細を入力します。

ホスト—>IPアドレスまたはホスト名。

ユーザー名:FTPユーザー名(私の場合はuser1です)

パスワード

ポート: 21

FTP接続のテスト

正常に接続した後、必要に応じてファイルをアップロード/ダウンロードできます。

FTP接続が正常にテストされました

結論

このチュートリアルでは、Centos8でFTPサーバーをセットアップする方法、ユーザーをホームディレクトリに制限する方法、 また、特定のユーザーにシステムへの一般的なアクセス権を与える方法についても説明しました。

VSFTPDを使用してCentOS8にFTPサーバーをセットアップする方法

You might also like

コメントを残す

メールアドレスが公開されることはありません。