前提・実現したいこと
WinSCP(ClientPC) ---> Nginx(Proxy-SV) ---> OpenSSH(SFTP-SV)
上記のような流れで、WinSCP側では秘密鍵を使用せずに、Nginx側で保持している秘密鍵を使用して鍵認証でSFTP通信を実現したいと考えおります。
そもそもになってしまうのですが、以上のような動作を実現することは可能なのでしょうか?
また、可能な場合、不足している設定や情報をご教授いただけますと助かります。
よろしくお願いいたします。
発生している問題・エラーメッセージ
Nginxに秘密鍵を持たせ、WinSCPには持たせずに通信を行うと、
WinSCP側では「接続が拒否されました」、
OpenSSHの /var/log/secure では以下のようなエラーが出ております。
Bad protocol version identification '\026\003\001\001\034\001' from xxx.xxx.xxx.xxx port xxxxx
該当のソースコード
nginx.conf
worker_processes auto; error_log /var/log/nginx/error.log info; events { worker_connections 1024; } stream { # access_logはSFTPでは使用できないのでerror_logを使用 error_log /var/log/nginx/stream.log info; upstream sftpsv { server 192.168.1.1:22; } server { listen 7777; proxy_pass sftpsv; # proxy_ssl_server_name on; # proxy_pass 192.168.1.1:22; #proxy_protocol on; #proxy_ssl_session_reuse off; proxy_ssl on; #proxy_ssl_server_name on; #proxy_ssl_name 202.214.75.21; proxy_ssl_protocols SSLv2 SSLv3 TLSv1 TLSv1.1 TLSv1.2 TLSv1.3; proxy_ssl_ciphers HIGH:!aNULL:!MD5; #proxy_ssl_certificate /root/keys/server.crt; proxy_ssl_certificate_key /root/keys/id_rsa; proxy_ssl_password_file /root/keys/secret; } }
OpenSSH側のsshd.conf(コメント行は省いております)
HostKey /etc/ssh/ssh_host_rsa_key HostKey /etc/ssh/ssh_host_ecdsa_key HostKey /etc/ssh/ssh_host_ed25519_key SyslogFacility AUTHPRIV LogLevel DEBUG # Authentication: PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys ChallengeResponseAuthentication no UsePAM yes X11Forwarding yes # Accept locale-related environment variables AcceptEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES AcceptEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT AcceptEnv LC_IDENTIFICATION LC_ALL LANGUAGE AcceptEnv XMODIFIERS # override default of no subsystems Subsystem sftp /usr/libexec/openssh/sftp-server Port 22 PermitRootLogin yes PasswordAuthentication no UseDNS no
試したこと
-
現状、WinSCP側に秘密鍵を持たせてProxy-SVに対してSFTP通信を行うと、SFTP-SVに通信できるのは確認できております。
-
nginx.confのstream{ server{ } }内にて以下を追加
proxy_ssl on; proxy_ssl_protocols SSLv2 SSLv3 TLSv1 TLSv1.1 TLSv1.2 TLSv1.3; proxy_ssl_ciphers HIGH:!aNULL:!MD5; proxy_ssl_certificate_key /root/keys/id_rsa; proxy_ssl_password_file /root/keys/secret;
補足情報(FW/ツールのバージョンなど)
クライアント:Windows10
プロキシサーバ:CentOS 7、nginx 1.15
SFTPサーバ:CentOS 7,OpenSSH 7.4

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/08/21 01:03
2019/08/21 01:12
2019/08/21 04:55