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 を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: MySQL のインデックスにおける NULL の影響についての詳細な説明
>>: JS オブジェクト配列の重複排除のための 3 つの方法の例と比較
MySQL には次のログ ファイルがあります。 1: 再実行ログ2: ロールバックログ(元に戻すログ...
MySQL SQL ステートメントにコメントを追加できます。MySQL SQL ステートメントのコメ...
ビジネスシナリオ: 異なるデータベース内のテーブルをクエリするたとえば、関連付けられるテーブルは、マ...
フロントエンドの開発過程で、チェックボックスが必要な状況が発生しました。ユーザー操作の利便性を考慮し...
最近、WeChat アプレットを作成しているのですが、いくつか問題が発生しました。インターネットでい...
Zabbix 管理者ログイン パスワードのリセットに関する問題は次のとおりです。 1. 問題の説明:...
:= と = の違い=設定および更新の場合にのみ、:= と同じ効果、つまり代入効果があり、それ以外の...
インストールの提案: インストールには .exe を使用せず、圧縮パッケージを使用してください。これ...
目次1.同時アクセス制御2. 取引1. トランザクションは ACID 原則に従います。 2. トラン...
プロジェクトの要件は、日付と時刻を選択し、現在の時刻以降の時刻のみを選択し、最小レベルを分単位で無効...
前回の記事では、Docker Desktop をインストールし、Kubernetes を有効にしまし...
目次Nginx は 2 つの socket.io サーバーをプロキシします。 socket.ioの動...
.NET の世界に参入したい開発者であれば、何が可能なのかを知る必要があります。 .NET Fram...
このソリューションの利点はシンプルさと使いやすさですが、欠点はダウンタイムが長くなることです。 した...
多くの場合、bash スクリプト内またはスクリプト自体内で直接 sudo を使用してコマンドを実行す...