tencent cloud

Cloud Virtual Machine

最新情報とお知らせ
製品情報
パブリックイメージの更新情報
OSの公式サポート終了計画
製品に関するお知らせ
製品概要
CVM概要
製品の強み
基本概念
リージョンとゾーン
初心者ガイド
Service Regions and Service Providers
製品の課金
課金概要
課金モデル
課金項目
課金モデルの変更
購入インスタンス
仕様変更の料金説明
料金未払いに関する説明
クイックスタート
カスタム設定によるLinuxインスタンスの購入
カスタム設定によるWindowsインスタンスの購入
ユーザーガイド
操作ガイド一覧
ご利用制限一覧
インスタンス
スポットインスタンス
リザーブドインスタンス
イメージ
ストレージ
バックアップと復元
ネットワーク
セキュリティ
パスワード/キー
監視とアラート
運用管理
便利な機能
サーバー移行
オンライン移行
オフライン移行
移行に関するご相談
トラブルシューティング
CVMインスタンスにログインできない原因や対処法
Windowsインスタンスのログインに関する障害
Linuxインスタンスのログインに関する障害
その他のインスタンスログインに関する障害
インスタンス実行時の障害
Linuxインスタンスのメモリに関する障害
ネットワーク障害
実践チュートリアル
CVMの選定ガイド
環境構築
ウェブサイトの構築
アプリケーションの構築
可視化ページの構築
ローカルファイルをCVMへアップロード
ネットワークパフォーマンステスト
その他の実践チュートリアル
API リファレンス
History
Introduction
API Category
Making API Requests
Region APIs
Instance APIs
Cloud Hosting Cluster APIs
Image APIs
Instance Launch Template APIs
Placement Group APIs
Key APIs
Security Group APIs
Network APIs
Data Types
Error Codes
セキュリティとコンプライアンス
Cloud Access Management(CAM)
ネットワーク
よくあるご質問
リージョンとアベイラビリティゾーンに関するご質問
課金クラス
インスタンスに関するご質問
ストレージに関するご質問
イメージに関するご質問
サーバー移行について
ネットワークに関するご質問
セキュリティに関するご質問
OSに関するご質問
運用と監視に関するご質問
CAMに関するご質問
NTPサービスに関するご質問
適用シナリオに関するご質問
Agreements
CVM Service Level Agreements
Red Hat Enterprise Linux Image Service Agreement
Public IP Service Level Agreement
用語集

LinuxインスタンスでのFTPサービスの構築

PDF
フォーカスモード
フォントサイズ
最終更新日: 2025-11-21 15:37:37

概要

Vsftpd(very secure FTP daemon)は、多数のLinuxディストリビューションのデフォルトのFTPサーバーです。本節では、CentOS 7.6 64ビットOSのTencent Cloud Server(CVM)を例に、vsftpdを使用してLinux CVMのFTPサービスを構築します。

ソフトウェアのバージョン

本文では、作成したFTPサービスのコンポーネントバージョンは次のとおりです:
Linux OS :本節では、公開イメージCentOS 7.6を例に説明します。
Vsftpd:本節では、vsftpd 3.0.2を例に説明します。

操作手順

ステップ1:CVMにログインする

標準的な方法を使用してLinuxインスタンスにログインする(推奨)。実際の操作方法に応じて、他のログイン方法を選択することもできます:

手順2:vsftpdのインストール

1. 次のコマンドを実行し、vsftpdをインストールします。
yum install -y vsftpd
2. 次のコマンドを実行し、vsftpdをスタートアップ時に自動起動に設定します。
systemctl enable vsftpd
3. 次のコマンドを実行し、FTPサービスを起動します。
systemctl start vsftpd
4. 次のコマンドを実行し、サービスが起動されているかどうかを確認します。
netstat -antup | grep ftp
次の結果が表示され、FTPサービスが正常に開始されたことを示します。

このとき、vsftpdはデフォルトで匿名アクセスモードを有効化しており、ユーザー名およびパスワードを必要とすることなくFTPサーバーにログインできます。この方法でFTPサーバーにログインするユーザーには、ファイルを変更またはアップロードする権限がありません。

手順3:vsftpdの設定

1. 次のコマンドを実行して、FTPサービス用のLinuxユーザーを作成します。本節では、ftpuserを例に説明します。
useradd ftpuser
2. 次のコマンドを実行して、ftpuserユーザーのパスワードを設定します。
passwd ftpuser
パスワードを入力したら、** Enter **キーを押して確認します。デフォルトではパスワードは表示されません。本節では「tf7295TFY」を例にしています。
3. 次のコマンドを実行して、FTPサービスが使用するファイルディレクトリを作成します。本節では、「/var/ftp/test」を例にしています。
mkdir /var/ftp/test
4. 次のコマンドを実行して、ディレクトリの権限を変更します。
chown -R ftpuser:ftpuser /var/ftp/test
5. 次のコマンドを実行し、「vsftpd.conf」ファイルを開きます。
vim /etc/vsftpd/vsftpd.conf
6. iを押して編集モードに切り替え、必要に応じてFTPモードを選択し、設定ファイルvsftpd.confを変更します
ご注意:
FTPは、アクティブモードとパッシブモードでクライアント端末に接続してデータを転送できます。ほとんどのクライアント端末のファイアウォール設定および実際のIPアドレスを取得できないため、パッシブモードを選択してFTPサービスを構築することをお勧めします。次の変更では、パッシブモードの設定を例として説明します。アクティブモードを選択したい場合は、FTPアクティブモードの設定に進んでください。
6.1 以下の構成パラメータを変更し、匿名ユーザーとローカルユーザーのログイン権限を設定して、指定された例外ユーザーリストファイルのパスを設定し、IPv4 socketsのリスニングを有効にします。
anonymous_enable=NO
local_enable=YES
write_enable=YES
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
listen=YES
6.2 行の先頭に#を付けて、listen_ipv6=YES構成パラメータに注釈を付け、IPv6 socketsのリスニングを無効にします。
#listen_ipv6=YES
6.3 以下の構成パラメ
ータを追加し、パッシブモードを有
効にし、ローカルユーザーがログインした後のディレクトリ、およびCVMがデータ転送を確立するために使用できるポート範囲の値を設定します。
local_root=/var/ftp/test
allow_writeable_chroot=YES
pasv_enable=YES
pasv_address=xxx.xx.xxx.xx #ご利用のLinux CVMパブリックIPに変更してください
pasv_min_port=40000
pasv_max_port=45000
7. Escを押して、:wqと入力し、保存して終了します。
8. 次のコマンドを実行して、chroot_listファイルを作成して編集します。
vim /etc/vsftpd/chroot_list
9. iを押して編集モードに入り、ユーザー名を入力します。1つのユーザー名が1行に収まり、設定が完了すると、Escを押し、**:wqを入力して保存して終了します。 設定するユーザーの権限はルートディレクトリに限定されていません。例外ユーザーを設定する必要がない場合は、この手順をスキップでき、:wq**を入力してファイルを終了します。
10. 次のコマンドを実行し、sshサービスを再起動します。
systemctl restart vsftpd

手順4:セキュリティグループの設定

FTPサービスを構築した後、実際に使用するFTPモードに従って、Linux CVMにインバウンドルールをインターネットにオープンする必要があります。詳細については、セキュリティグループルールの追加 をご参照ください。 ほとんどのクライアント端末はLANにあり、IPアドレスが変換されたものです。FTPのアクティブモードを選択した場合は、クライアントマシンが真のIPアドレスを取得したことを確認してください。取得していない場合、クライアントがFTPサーバーにログインできない場合があります。
アクティブモードの場合:ポート21を開きます。
パッシブモードの場合:ポート21と、および 設定ファイルの変更 で設定されているpasv_min_port からpasv_max_portまでのすべてのポートを開きます。(本節では、ポート40000~45000を開きます)。

手順5:FTPサービスの検証

FTPクライアントソフトウェア、ブラウザ、またはファイルエクスプローラなどのツールを使用してFTPサービスを検証できます。本節では、クライアントのファイルエクスプローラを例に説明します。
1. クライアントのInternet Explorerを開き、ツール>インターネットオプション>詳細設定を選択し、選択したFTPモードに応じて変更します:
アクティブモードの場合:「パッシブFTPを使用する」のチェックを外します。
パッシブモードの場合:「パッシブFTPを使用する」のチェックを入れます。
2. 次の図に示すように、クライアントでWindowsエクスプローラーを開き、アドレスボックスに次のアドレスを入力して、Enterキーを押します:
ftp://云服务器公网IP:21



3. ポップアップされた「ログインID」画面に vsftpdを設定する で設定されたユーザー名とパスワードを入力します。 本節で使用するユーザー名が「ftpuser」、パスワードが「tf7295TFY」です。
4. ログインが成功したら、ファイルをアップロード及びダウンロードできます。

付録

FTPのアクティブモードの設定

アクティブモードで変更が必要な設定は次のとおりであり、それ以外の設定項目はデフォルトのままにします:
anonymous_enable=NO #匿名ユーザーのログインを禁止する
local_enable=YES #ローカルユーザーのログインを許可する
chroot_local_user=YES #すべてのユーザーがルートディレクトリのみにアクセスするように制限する
chroot_list_enable=YES #例外ユーザーリストを有効にする
chroot_list_file=/etc/vsftpd/chroot_list #ユーザーリストファイルを指定します。このリストのユーザーの権限はルートディレクトリに限定されていません
listen=YES #IPv4 socketsをリスニングする
#行の先頭に#を付けて、次のパラメータをコメントアウトします
#listen_ipv6=YES #IPv6 socketsのリスニングをオフにする
#次のパラメータを追加する
allow_writeable_chroot=YES
local_root=/var/ftp/test #ローカルユーザーがログインした後の常駐するディレクトリを設定する
Esc を押して:wqを入力し、保存して終了します。手順8 に進み、vsftpdの設定を完了します。

FTPクライアントからのファイルアップロード処理がエラー

問題の説明

Linuxシステム環境では、vsftp経由でファイルをアップロードする時に、下記のようなエラー情報が表示されます。
553 Could not create file

ソリューション

1. 次のコマンドを実行し、サーバーのディスク領域の使用率を確認します。
df -h
ディスクに十分な空き容量がない場合、ファイルをアップロードできないため、ディスク上の大容量のファイルを削除することをお勧めします。
ディスク容量が十分な場合は、次のステップを実行してください。
2. 次のコマンドを実行し、FTP ディレクトリへの書き込み権限があるかどうかを確認します。
ls -l /home/test
# /home/testはFTP ディレクトリです。実際のFTPディレクトリに変更してください。
戻された結果に「w」がない場合は、当該ユーザーに書き込み権限がないことを示し、次のステップを実行してください。
返された結果の中にwがあれば、チケットを提出 してフィードバックしてください。
3. 次のコマンドを実行し、FTPディレクトリへの書き込み権限を付与します。
chmod +w /home/test
# /home/testはFTP ディレクトリです。実際のFTPディレクトリに変更してください。
4. 次のコマンドを実行し、書き込み権限が正常に設定されたかどうかを再度確認します。
ls -l /home/test
# /home/testはFTP ディレクトリです。実際のFTPディレクトリに変更してください。


ヘルプとサポート

この記事はお役に立ちましたか?

フィードバック