在Linux系统中,要为SFTP配置SSL,您需要遵循以下步骤:
对于基于Debian的系统(如Ubuntu):
sudo apt-get update
sudo apt-get install openssl
对于基于RPM的系统(如CentOS、Fedora):
sudo yum update
sudo yum install openssl
生成私钥:
sudo openssl genrsa -b 2048 -f /etc/ssl/private/sftp-key.pem
生成CSR:
sudo openssl req -new -key /etc/ssl/private/sftp-key.pem -out /etc/ssl/certs/sftp-csr.pem -subj "/C=US/ST=YourState/L=YourCity/O=YourOrganization/OU=YourUnit/CN=yourdomain.com"
生成自签名证书:
sudo openssl x509 -req -days 365 -in /etc/ssl/certs/sftp-csr.pem -signkey /etc/ssl/private/sftp-key.pem -out /etc/ssl/certs/sftp-cert.pem
/etc/ssh/sshd_config),并添加或修改以下行:Subsystem sftp /usr/lib/openssh/sftp-server -l INFO
ssh-keygen -t rsa -b 2048
~/.ssh/id_rsa.pub)添加到SFTP用户的~/.ssh/authorized_keys文件中。cat ~/.ssh/id_rsa.pub | ssh sftpuser@yourserver.com "cat >> ~/.ssh/authorized_keys"
对于基于Debian的系统(如Ubuntu):
sudo systemctl restart ssh
对于基于RPM的系统(如CentOS、Fedora):
sudo systemctl restart sshd
现在,您的SFTP服务器已配置为使用SSL。SFTP用户可以使用以下命令连接到服务器:
sftp -oPort=22 -oIdentityFile=~/.ssh/id_rsa sftpuser@yourserver.com
请注意,这些步骤仅适用于自签名证书。对于生产环境,您应该使用由受信任的证书颁发机构(CA)签发的证书。