メシのタネ

めしのたねになるIT情報配信サイト


VSFTPDでFTPユーザーを追加する方法(初心者向け)

,

  1. OS
  2. Linux
  3. VSFTPDでFTPユーザーを追加する方法(初心者向け)

はじめに

Linux環境(CentOS・Ubuntuなど)で動作するFTPサーバーソフト「VSFTPD」のユーザー追加方法を初心者向けに分かりやすく解説します。FTPアカウントの作り方から特定フォルダへのアクセス制限、さらによく起こるトラブルの解決方法も含めて紹介します。

対象環境の前提と確認方法

  • VSFTPDがインストール済みで稼働していること。
  • 主にCentOSをベースにしていますが、Ubuntuでもほぼ同様です
cat /etc/os-release # OSの種類を確認

FTPユーザー追加の手順(基本編)

VSFTPDに新規ユーザーを追加するには、以下の手順を順番に実施します。

① OSのユーザーアカウント追加

まず、Linux OS側にユーザーを追加します。

# 新規ユーザーを追加
useradd 新規ユーザー名

# パスワードを設定
passwd 新規ユーザー名
# パスワードを2回入力します(短すぎると拒否されます)

パスワードの推奨文字数は8文字以上です。

② FTPアクセス権限の設定(ディレクトリ権限)

作成したユーザーのホームディレクトリの権限を設定します。

chmod 701 /home/新規ユーザー名
  • 701にすることで、他ユーザーが中身を閲覧するのを防ぎます。

③ vsftpdの設定(user_listファイル)

次に、FTPアクセスを許可するユーザーを登録します。

vim /etc/vsftpd/user_list

userlist_deny=NOの設定になっている場合、上記ファイルにユーザー名を追加します。

  • user_listの最終行に新規ユーザーを追記して保存します。

④ 設定の反映(VSFTPD再起動)

最後にvsftpdを再起動し、設定を有効化します。

# CentOS 7以降の場合
systemctl restart vsftpd

# CentOS 6以前
/etc/rc.d/init.d/vsftpd restart

特定ディレクトリのみをFTP公開したい場合(応用編)

特定のユーザーに対し、決まったディレクトリだけ見せる方法です。

# 既存の設定ファイルをコピーして、新しいユーザーの設定を作る
cp /etc/vsftpd/user_conf/既存ユーザー /etc/vsftpd/user_conf/新規ユーザー

# 新規ユーザー用の設定ファイルを編集
vim /etc/vsftpd/user_conf/新規ユーザー

設定例:

local_root=/home/新規ユーザー/公開したいフォルダ名

続いてディレクトリを作成:

mkdir -p /home/新規ユーザー/公開したいフォルダ名
chown 新規ユーザー名:新規ユーザー名 /home/新規ユーザー/公開したいフォルダ名
chmod 755 /home/新規ユーザー/公開したいフォルダ名

再度設定を反映:

systemctl restart vsftpd

よくあるトラブル対処法・Q&A

Q. FTPログインできない・拒否される

  • user_list にユーザーが登録されているか確認
  • Firewallでポート21が開いているか確認

Q. 接続はできるがディレクトリが見えない

  • ホームディレクトリまたは公開ディレクトリのパーミッションを確認(701や755)

まとめ

  • OSユーザーを作成 → パーミッション設定 → user_list に登録、の流れが基本
  • 特定フォルダだけ公開したい場合は user_conf 設定が便利
  • FTP設定は最初は複雑に見えるけど、手順に沿って進めれば意外とシンプル

本記事が環境構築の手助けになれば幸いです!


コメントを残す

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.

若い頃、「仕事中にハマったこと」や「誰かに共有したい技術的な気づき」をアウトプットしたくてブログを始めましたが、勢い任せでよく分からない記事を大量生産し、あえなく飽きて終了。

改めて今、キャリア15年分の経験や知識が、これからITエンジニアを目指す方や、同じような課題で悩んでいる現役エンジニアの「メシのタネ」になるような記事を残したいと思っています。
※過去の記事は見ると精神が崩壊するため、そっとしておいてください。

🛠 経歴という名の珍道中:
文系Fラン → 広告営業 → Web営業 → 通信営業 → Web進行 → 出版 → Web媒体運用 → ソフトウェアハウス → SES → フリーランス

専門教育も受けず、転職歴も多数。履歴書はまるで時系列の事故記録のようですが、試行錯誤を重ね、なんとかエンジニアとして食べています。

このブログでは、そんな「履歴書クラッシャー型エンジニア」が送る、
名古屋一敷居の低い、実務に役立つ技術ブログを目指します。

Laravel
Laravel 12、「コード 1 行も書き換えず未来へ」──静かな革命の手順書New!!
Laravel
LaravelのMiddlewareって意味あるの?仕組み・使いどころ・やらかしまで整理してみたNew!!
Laravel
ServiceProviderって何してるの?DIの背後で動いてるやつの正体New!!
Laravel
LaravelのサービスコンテナとDI、「書いてるだけで動く」コードの正体New!!
Laravel
Laravelのアーキテクチャ、実は誰もわかってない説New!!
ガジェット
【解説】Bluetoothヘッドホンでマイクが使えない理由と回避策まとめ(Mac対応)