GNU/Linux >> Linux の 問題 >  >> Ubuntu

Debian/Ubuntuにpure-ftpdをインストールする

FTPサーバーとファイアウォールの難しさ:
FTPサーバーを実行するホストにファイアウォールを構成する場合、FTPサーバーがFTPクライアントにデータを送信するために使用するポートがわからないため、通常はポート1024〜65365の範囲を開いたままにする必要があります。この状況は、インターネットに接続する必要のある1024を超える機密ポートを持つホストがある場合に非常に重要です。もちろん、各ポートを選択してファイアウォールで閉じることもできますが、インターネットからのアクセスが必要なポートのみをすべて閉じて開くファイアウォール方式を使用することを強くお勧めします。ここがpure-ftpd 救助に来てください。このFTPサーバーには、FTPクライアントへのデータ転送に使用されるポートの範囲を選択する機能があります。これにより、ファイアウォールの構成がはるかに簡単になります。

次の例では、pure-ftpの構成は次のとおりです。
– FTPおよびFTPSにjailされたユーザーを提供します(ユーザーはホームディレクトリに限定されます)。
–匿名クライアントなし
–IPバージョン4つのみ
–データ転送用のポートは20000〜20099の範囲に制限されています

手順:
apt-get install pure-ftpd
echo '20000 20099' > /etc/pure-ftpd/conf/PassivePortRange
echo "yes" > /etc/pure-ftpd/conf/NoAnonymous
echo "yes" > /etc/pure-ftpd/conf/ChrootEveryone
echo "yes" > /etc/pure-ftpd/conf/IPV4Only
echo "1" > /etc/pure-ftpd/conf/TLS

クライアントにFTP接続にのみTLSを使用するように強制する場合は、コマンド
echo "3" > /etc/pure-ftpd/conf/TLSを使用します。

chrootの例外
一部の信頼できるユーザーを除くすべてのユーザーをホームディレクトリに限定する場合は、次のことを行う必要があります。
–信頼できるユーザーを追加する新しいシステムグループを作成する
–を使用する代わりに、上記のコマンド'echo“ yes”> / etc / pure-ftpd / conf / ChrootEveryone'
信頼できるグループのGIDをファイル/etc/ pure-ftpd / conf/TrustedGIDに挿入します。
例: 「martin」と「jannine」を除くすべてのユーザーにchrootが必要です。つまり、martinとjannineは、ホームディレクトリ以外のシステムの他の部分をナビゲートできますが、他のすべてのユーザーはホームディレクトリに限定されます。
groupadd ftptrusted
usermod -G ftptrusted martin
usermod -G ftptrusted jannine
GID=$(grep ftptrusted /etc/group | cut -d: -f3)
echo "$GID" > /etc/pure-ftpd/conf/TrustedGID
rm /etc/pure-ftpd/conf/ChrootEveryone

注: pure-ftpdの適切な権限署名付き証明書ファイルを作成するには、ファイル /etc/ssl/private/pure-ftpd.pemに次の両方のコンポーネントがあることを確認してください。 :
–秘密鍵(PEM形式)
–証明書(PEM形式)

代わりに、自己署名証明書を使用して実行する場合は、次のコマンドを実行します。
mkdir -p /etc/ssl/private/
openssl req -x509 -nodes -days 97300 -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem
chmod 600 /etc/ssl/private/pure-ftpd.pem

pure-ftpdを再起動して、新しい構成と証明書を登録します。
service pure-ftpd restart


Ubuntu
  1. Debian –64ビットのDebian/ ubuntuで32ビットのプログラムを実行する方法は?

  2. うつぶ?

  3. Ubuntu16へのCuda8のインストール:パッケージCudaが見つかりませんか?

  1. Ubuntu12.10へのVirtualBox4.2のインストール

  2. Lua5.2対のインストール。 Ubuntu 16.10のLua5.3?

  3. UbuntuとDebianへのDockerのインストールと使用

  1. Debian10へのPHP8のインストール

  2. Ubuntu18.04へのSNMPのインストール

  3. Debian/Ubuntuに新しいバージョンのgitをインストールする