Ubuntu 18.04 に vsftpd をインストールするための実装コード

Ubuntu 18.04 に vsftpd をインストールするための実装コード

vsftpdをインストールする

$ sudo apt-get install vsftpd -y

vsftpdサービスを起動し、起動時に開始するように設定します。

$ sudo systemctl で vsftpd を起動します
$ sudo systemctl を有効にする vsftpd

FTPディレクトリ構造を設定する

ユーザーを作成する

$ sudo adduser testuser1

ディレクトリを作成し、所有権を設定する

$ sudo mkdir /home/testuser1/ftp
$ sudo chown nobody:nogroup /home/testuser1/ftp
$ sudo chmod aw /home/testuser1/ftp

ファイルをアップロードして所有権を設定できるディレクトリを作成します

$ sudo mkdir /home/testuser1/ftp/test
$ sudo chown testuser1:testuser1 /home/testuser1/ftp/test

vsftpdの設定

vsftpdの元の設定ファイルをバックアップする

$ sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.bak

vsftpd.confファイルを開いて編集する

$ sudo vi /etc/vsftpd.conf

ファイルに以下を追加します

聞く=いいえ
listen_ipv6=はい
匿名を有効にする=いいえ
ローカル有効=はい
書き込み有効=はい
ローカル_umask=022
dirmessage_enable=はい
ローカルタイムを使用する=はい
xferlog_enable=はい
ポート20からの接続=はい
chroot_local_user=はい
secure_chroot_dir=/var/run/vsftpd/空
pam_service_name=vsftpd
pasv_enable=はい
pasv_min_port=10000
pasv_max_port=11000
user_sub_token=$USER
ローカルルート=/home/$USER/ftp
ユーザーリストを有効にする=はい
ユーザーリストファイル=/etc/vsftpduserlist.conf
ユーザーリスト拒否=いいえ

4. 設定ファイルを保存して閉じる

:wq

5. 作成したtestuser1ユーザーをvsftpdユーザーリストファイルに追加します。

$ sudo vi /etc/vsftpduserlist.conf

6. これらの変更を適用するには、vsftpdサービスを再起動します。

$ sudo systemctl vsftpdを再起動します

SSL/TLSの使用

セキュリティ証明書の作成

$ sudo mkdir /etc/certs

$ sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 \
-keyout /etc/certs/vsftpd.pem \
-/etc/certs/vsftpd.pem から

vsftpd.confファイルを開く

$ sudo vi /etc/vsftpd.conf

ファイルに以下を追加します

rsa_cert_file=/etc/certs/vsftpd.pem
rsa_private_key_file=/etc/certs/vsftpd.pem
SSL_enable=はい
allow_anon_ssl=いいえ
ローカルデータSSLを強制する=はい
強制ローカルログインSSL=はい
ssl_tlsv1=はい
ssl_sslv2=いいえ
ssl_sslv3=いいえ
必要SSL再利用=いいえ
ssl_ciphers=高

ファイルを保存し、vsftpdを再起動します。

$ sudo systemctl vsftpdを再起動します

SFTPプロトコルを使用して、FTPクライアントに追加されたユーザーにログインします。

ファイアウォールの設定

$ sudo ufw OpenSSHを許可する
$ sudo ufw 20/tcp を許可する
$ sudo ufw 21/tcp を許可する
$ sudo ufw 許可 40000:50000/tcp
$ sudo ufw 990/tcp を許可する

$ sudo ufwを有効にする
$ sudo ufwステータス

参照: DevAnswers.co、hostadvice.com

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • UbuntuにFTPサーバーをインストールして設定する
  • Ubuntuにvsftpd FTPをインストールする詳細な手順
  • Ubuntu 14.04 に FTP サーバーをインストールするための実装手順

<<:  MySQL のインデックスにおける NULL の影響についての詳細な説明

>>:  JS オブジェクト配列の重複排除のための 3 つの方法の例と比較

推薦する

js 正確な計算

var numA = 0.1; var numB = 0.2; アラート(numA + numB)...

知らないかもしれないLinuxのファイル権限管理方法

なぜ権限管理が必要なのでしょうか? 1. コンピュータ リソースは限られているため、コンピュータ リ...

HTML でフレームセット タグを使用するチュートリアル

フレームセット ページは通常の Web ページとは多少異なります。依然として <HTML>...

dockerコンテナにviコマンドをインストールする簡単な操作

docker コンテナを使用する場合、vim がインストールされていないことがあり、vim コマンド...

Linuxのwhichコマンドの具体的な使い方

Linux でファイルを見つけたいのに、その場所がわからないことがよくあります。次のコマンドを使用し...

CSS における zoom:1 属性の定義と機能

今日、CSS の zoom 属性は何のために使用されるのかと尋ねられました。この属性は、フローティン...

MySQLログシステムの使い方に関する簡単なチュートリアル

目次序文1. エラーログ2. バイナリログ1. バイナリログを有効にする2. バイナリログ形式3. ...

Docker Swarmを使用してWordPressを構築する方法

原因かつて私は Vultr に WordPress を設定しましたが、よく知られている理由により、こ...

CentOS 6.x のインストール時に発生するエラー「ディスク sda に BIOS RAID メタデータが含まれています」の解決方法

今日、CentOS6.2 をインストールしていたところ、ハード ドライブの検出段階を通過できませんで...

シンプルなウェブページレイアウトの構造と表現原理の共有

構造とパフォーマンスの紹介HTML 構造、CSS 表現、JavaScript 動作。Web ページの...

Ubuntuで顔認識ログインを実装するための完全な手順

1. Howdyをインストール: howdyプロジェクトアドレス sudo add-apt-repo...

JavaScript でオブジェクトをトラバースする 5 つの方法 サンプルコード

目次準備する5つの武器…のためにオブジェクト.キーオブジェクト.getOwnPropertyName...

MySQL トリガー: トリガーの作成と使用

この記事では、例を使用して MySQL トリガーの作成と使用について説明します。ご参考までに、詳細は...

Vue3 における親コンポーネントと子コンポーネント間の値の転送の詳細な説明

vue3 が誕生してからかなり時間が経ち、筆者も最近になって vue3 を学び始めました。 vue2...