GNU/Linux >> Linux の 問題 >  >> OpenSuse

OpenSUSELeap42.1にTLSと仮想ユーザーを使用してPure-FTPdをインストールする方法

Pure-FTPdは、Troll-FTPdに基づく無料で軽量のFTPサーバーであり、開発は2001年に開始され、Linux、* BSD、Solaris、HP-UXなどの多くのUnixライクなOSで実行されます。 Pure-FTPdには、仮想ドメイン、chrootホームディレクトリ、仮想ユーザー、TLS / SSLサポート、仮想クォータなどの多くの機能があります。

このチュートリアルでは、OpenSUSELeap42.1にpure-ftpdをインストールして設定する方法を紹介します。 TLS / SSLを使用してpure-ftpdを設定し、次に仮想ユーザーを設定する方法を説明します。

前提条件

  • OpenSUSE Leap 42.1
  • root権限
  • OpenSUSE、Zypperナレッジ

ステップ1-SuSEfirewall2をインストールして構成する

SuSEfirewall2は、ファイル'/ etc / sysconfig/SuSEfirewall2'にファイアウォール構成を生成するためのスクリプトです。 SuSEfirewall2をインストールしてから、SSHとFTPサービスのポートを開きます。

zypperを使用してSuSEfirewall2をインストールします:

zypper in SuSEfirewall2

次に、設定ファイル'/ etc / sysconfig / SuSEfirewall2'をvimで編集します:

vim /etc/sysconfig/SuSEfirewall2

新しいサービスsshとFTPを253行目に追加します。

FW_SERVICES_EXT_TCP="ssh ftp"

保存して終了します。

次に、systemctlコマンドを使用してSuSEfirewall2を起動します。

systemctl start SuSEfirewall2

ステップ2-Pure-FTPdをインストールして構成する

このステップでは、TLS / SSL構成用にOpenSSLを使用してpure-ftpdをインストールし、pure-ftpdユーザーとグループを構成します。

以下に示すように、zypperを使用してアプリケーションをインストールします。

zypper in pure-ftpd openssl

次に、新しいグループ' ftpgroupを追加します 'およびマスター'FTPユーザー'の新しいユーザー'ftpuser 'グループに。

groupadd ftpgroup
useradd -g ftpgroup -d /dev/null -s /etc ftpuser

pure-ftpdディレクトリに移動し、vimエディターで構成ファイル「pure-ftpd.conf」を編集します。

cd /etc/pure-ftpd/
vim pure-ftpd.conf

匿名ユーザーを無効にするには、81行目の値を「yes」に変更します。

NoAnonymous                 yes

行131のコメントを解除して、バックエンドを構成します。 Pure-ftpdはバックエンドとしてMySQL、PostgreSQL、およびLDAPをサポートしていますが、このチュートリアルでは、バックエンドに「PureDB」を使用します。

PureDB                        /etc/pure-ftpd/pureftpd.pdb

PureDBを認証ソースとして使用するため、PAMAuthentication行をコメントアウトして141行目のPAM認証を無効にします。

#PAMAuthentication             yes

保存して終了します。

ステップ3-Pure-FTPd用にTLS/SSLを構成する

opensslコマンドを使用して、「/ etc / ssl/private」ディレクトリに新しい自己署名証明書ファイルを生成します。

openssl req -x509 -nodes -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem -days 365

証明書ファイルのアクセス許可を0600に変更します:

chmod 600 /etc/ssl/private/pure-ftpd.pem

次に、pure-ftpdディレクトリに戻り、構成ファイルを編集して、クライアント接続のTLS/SSLサポートを有効にします。

cd /etc/pure-ftpd/
vim pure-ftpd.conf

行439のコメントを解除して、TLSを有効にします。

TLS                      1

行449のコメントを解除し、新しいオプションを追加して、より安全にします。

TLSCipherSuite           HIGH:MEDIUM:+TLSv1:!SSLv2:!SSLv3

行445のコメントを解除して、証明書ファイルを定義します。

CertFile                 /etc/ssl/private/pure-ftpd.pem

保存して終了します。

次に、systemctlコマンドを使用してpure-ftpdを起動します。

systemctl start pure-ftpd

ステップ4-仮想ユーザーの構成

Pure-FTPdは、実際のシステム(Linux)ユーザーの代わりに仮想ユーザーを作成して使用する機能を提供します。 Pure-FTPdはいくつかの認証バックエンドを提供し、仮想ユーザー構成はサーバーによって使用されるバックエンドに依存します。手順2では、「PureDB」をバックエンドとして設定しました。

pure-ftpdが提供する「pure-pw」コマンドを使用して、新しい仮想ユーザーを作成できます。このステップでは、ftpホームディレクトリとしてディレクトリ「/ srv / ftp / shiro」を使用して「shiro」という名前の新しい仮想ユーザーを作成します。ユーザーはそのディレクトリにchrootされ、他のシステムディレクトリにアクセスできなくなります。

pure-pwを使用して新しい仮想ユーザーを作成します:

pure-pw useradd shiro -u ftpuser -d /srv/ftp/shiro

仮想ユーザーのディレクトリを作成し、そのディレクトリの所有者をマスターの「FTPユーザー」に変更します。

mkdir -p /srv/ftp/shiro
chown -R ftpuser.ftpgroup /srv/ftp/shiro

次に、以下のコマンドで変更を保存する必要があります:

pure-pw mkdb

これで、ユーザーshiroを使用する準備が整いました。コマンドラインからFTPpを使用するか、GUIインターフェース用のFileZillaを使用してサーバーに接続できます。

注:

pure-pwにはより多くのコマンドオプションがあり、'pure-pwヘルプを使用できます 'すべての便利なコマンドを表示します。

ステップ5-テスト

テストには、ターミナルでFTPコマンドを使用します。ターミナルを開き、「ftp」と入力します:

ftp

次に、pure-ftpd server ipを入力します:

open 192.168.43.69

ユーザー「shiro」とパスワードでログインし、「Enter」を押します。

'put'コマンドでファイルをアップロードしてみてください:

put picture.png mypict.png

これで、以下のlsコマンドを使用してサーバー上にファイルmypict.pngが表示されます。

ls


OpenSuse
  1. OpenSUSELeap42.1にPostgreSQLとphpPgAdminをインストールする方法

  2. openSUSELeap42.1にNginxを使用してSeafileをインストールする方法

  3. OpenSuse13.2にTLSを使用してProFTPdをインストールする方法

  1. openSUSE12.1にPHP-FPMとMySQLを使用してNginxをインストールする方法

  2. OpenSUSELeap15.3でPodmanをインストールして使用する方法

  3. OpenSUSELeap15.3にJava17をインストールする方法

  1. openSUSE12.1にPHP5FastCGIとMySQLを使用してlighttpdをインストールする方法

  2. OpenSUSELeap15.3にMongodb5をインストールする方法

  3. Nginxをプロキシとしてインストールおよび設定する方法OpenSUSELeap15.3