sftp:ポート22を介してproftpdサーバーにアクセスできません。

sftp:ポート22を介してproftpdサーバーにアクセスできません。

以前のサーバーがインストール中に暗号化されてキーが失われたため、proftpサーバーを交換しようとしました。以前のサーバーは ftp:21 と sftp:22/322 で正常に動作していました。古いサーバーはubuntu 16.04.7にあり、新しいサーバーはubuntu 22.04.3にありました。新しいサーバーにproftpdをインストールし、Ubuntuのインストール中にopensshをインストールしました。

目標は、新しいサーバーを古いサーバーと同じにすることです。したがって、既存のサーバーではデフォルトのSSHポートが22から322に変更され、proftpdはポート21(デフォルト)とポート22(/etc/profptd/conf.d/sftp.confファイルで指定)で接続できます。 )。

新しいサーバーの/etc/profptd/conf.d/sftp.confにあるsftp.confファイルでproftpdのポート22を有効にします。

/etc/profptd/conf.d/のsftp.confファイル

したがって、ポート322を介して古いサーバーと新しいサーバーにSSHで接続し、ポート21を介して両方のサーバーにアクセスできます。

また、ftpクライアント(WinSCP)を使用してsftp:322を両方のサーバーに送信でき、ftp:21を使用して両方のサーバーに送信できます。

これで問題は、ftpクライアントを使用してポート22の新しいサーバーに接続できず、次のエラーが発生することです。 SFTP接続が拒否されました これは以前のサーバーで行うことができ、文書に記載されているのと同じsftp構成を持ちます。 profptd 文書の構成例

新しいサーバーでは、次の設定が有効になります。/etc/ssh/sshd_config.d *

Port 322
#Port 22
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_ecdsa_key
HostKey /etc/ssh/ssh_host_ed25519_key

PubKeyAuthentication yes
AuthorizedKeysFile %h/.ssh/authorized_keys
HostbasedAuthentication no
IgnoreUserKnownhosts no

PasswordAuthentication yes
KbdInterctiveAuthentication no

UsePAM yes
X11Forwarding yes
PrintMotd no
AcceptEnv LANG LC_*

Subsystem sftp /usr/lib/openssh/sftp-server

新しいサーバーで次の設定を有効にしました:/etc/proftpd/proftpd.conf

*

Include /etc/proftpd/modules.conf
UseIPv6 on

<IfModule mod_ident.c>
 IdentLookups off
</IfModule>

DefaultRoot ~

Port 21

AuthOrder mod_auth_pam.c* mod_auth_unix.c

<IfModule mod_quotab.c>
QuotaEngine off
</IfModule>

<IfModule mod_ratio.c>
Ratios off
</IfModule>

<IfModule mod_delay.c>
DelayEngine on
</IfModule>

<IfModule mod_ctrls.c>
...
</IfModule>

<IfModule mod_ctrls_admin.c>
AdminControlsEngine off
</IfModule>

RequireValidShell off

Include /etc/proftpd/conf.d/

http://www.proftpd.org/docs/contrib/mod_sftp.html#SFTPHostKey

ファイアウォール ufw でポート 21、22、322 をイネーブルにしました。

サーバーにssh:322を接続でき、sftp:322とftp:21もできますが、sftp:22もできますが、322と22でsftpを使用すると、以前のサーバーに完全にアクセスできます。

ベストアンサー1

このように整理されました。

解決策は、sftpモジュール(mod_sftp.c)がデフォルトで有効になっていないことです。これらのモジュールは /etc/proftpd/modules.conf にあります。 mod_sftpセクションのコメントを外してください。

SFTPモジュール

そのため、proftpd-mod-crypto、proftpd-mod-ldap、proftpd-mod-wrapをインストールしました。

おすすめ記事