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 つの方法の例と比較
序文:前の記事を読んだ後、binlog はデータベースで実行されたすべての DDL および DML ...
前回の記事では、Windows でタイムアウトを試してみました。この記事では、Linux で試してみ...
カメラを開くと通常はスキャンボックスが表示されますが、静的なQRコードではフォーカスを合わせたりスキ...
1. TEXTとBLOBの違いTEXT ファミリと BLOB ファミリの唯一の違いは、BLOB 型は...
少し前にSQLの独学を終え、MySQL 8.0.17をダウンロードしました。インストールして設定した...
目次ストレージエンジンのメモリ管理データ ページを LRU キューの先頭に置かないのはなぜですか?ダ...
MySQL 8.0をインストールする docker run -p 63306:3306 -e MYS...
1. インライン要素はコンテンツの幅のみを占めますが、ブロック要素はコンテンツの量に関係なく行全体を...
この記事では、指定された赤い封筒の順序と金額を実装するためのjsの具体的なコードを共有します。具体的...
目次FileReaderはローカルファイルまたはBLOBを読み取ります1. FileReaderの使...
問題の説明:最近、rsyncで毎回同期するデータ量が多いが、データベースのbakファイルを保持する必...
1. はじめにVagrant は、仮想マシン (VirtualBox) を構築および管理するためのツ...
同僚から助けを求められました。バックエンド システムへのログインは成功したものの、システムには正常に...
概要Nginx ロード バランシングは、アップストリーム サーバー (実際のビジネス ロジックによっ...
最初のステップは、Python のバージョン番号とインストール パスを確認することです。 上記のビュ...