在Ubuntu上使用SFTP(SSH File Transfer Protocol)时,可能会遇到一些兼容性问题。以下是一些常见的解决方案:
useradd -s /bin/false sftpuser
passwd sftpuser
sudo vi /etc/sysconfig/selinux
# 将 SELINUX=enforcing 修改为 SELINUX=disabled
/etc/ssh/sshd_config
文件:sudo vi /etc/ssh/sshd_config
# 修改端口
Port 9222
# 禁用密码认证,启用公钥认证
PasswordAuthentication no
PubkeyAuthentication yes
# 指定SFTP用户的工作目录
Match user sftpuser
ChrootDirectory /data/sftp
ForceCommand internal-sftp
sudo systemctl restart sshd
sudo mkdir -p /data/sftp/upload
sudo mkdir -p /data/sftp/download
sudo chown -R sftpuser:sftpuser /data/sftp/upload
sudo chmod -R 755 /data/sftp/upload
sudo chown -R root:root /data/sftp/download
sudo chmod -R 755 /data/sftp/download
sudo chown -R sftpuser:sftpuser /data/sftp
通过以上步骤,可以有效解决Ubuntu SFTP的兼容性问题,确保文件传输的安全和稳定。