在debian系统中开启SFTP的ssl加密功能,可以按照以下步骤操作:
第一步:安装 Openssh 服务器
首先确认 OpenSSH 服务器已安装。若未安装,可运行以下命令完成安装:
sudo apt update sudo apt install openssh-server
第二步:创建 SSL 证书与密钥
利用 openssl 工具生成自签名的 SSL 证书及密钥。具体命令如下:
sudo mkdir /etc/ssl/private sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/sftp.key -out /etc/ssl/private/sftp.crt
执行此命令时需要填写相关信息如国家、组织名等。生成的证书和密钥会分别存储于 /etc/ssl/private/sftp.crt 和 /etc/ssl/private/sftp.key 文件里。
第三步:调整 SSH 服务器设置
打开 SSH 服务器配置文件 /etc/ssh/sshd_config 并进行必要的修改:
sudo nano /etc/ssh/sshd_config
在此文件中寻找或添加如下配置:
# 开启 SFTP 子系统 Subsystem sftp /usr/lib/openssh/sftp-server <h1>使用 SSL/TLS</h1><p>Protocol 2 HostKey /etc/ssh/ssh_host_rsa_key HostKey /etc/ssh/ssh_host_dsa_key HostKey /etc/ssh/ssh_host_ecdsa_key HostKey /etc/ssh/ssh_host_ed25519_key</p><h1>强制采用 SSL/TLS</h1><p>Ciphers aes128-ctr,aes192-ctr,aes256-ctr MACs hmac-sha2-256,hmac-sha2-512 KexAlgorithms diffie-hellman-group-exchange-sha256</p><h1>启用公钥认证</h1><p>PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys
第四步:为 SFTP 用户配置权限
保证 SFTP 用户具备适当的权限和设定。编辑用户的 ~/.ssh/authorized_keys 文件,加入公钥:
nano ~/.ssh/authorized_keys
将您的公钥复制粘贴至该文件内,并确保每行以 ssh-rsa 或 ssh-ed25519 开头。
第五步:重启 SSH 服务
保存并关闭配置文件之后,重启 SSH 服务以使更改生效:
sudo systemctl restart sshd
第六步:测试 SSL 连接
可运用 sftp 命令来检查 SSL 连接是否正常运作:
sftp -o Port=22 username@your_server_ip
若所有配置无误,则应该能经由 SSL 成功连接至 SFTP 服务器。
特别提示
- 在实际使用环境中,自签名证书可能不会被客户端信任,推荐使用由可信证书颁发机构(CA)签发的证书。
- 确认防火墙允许 SSH 端口(默认为 22)的数据传输。
按照上述步骤,您应当能够在 Debian 系统上顺利实现 SFTP 的 SSL 加密功能。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END