在CentOS上安全使用SFTP涉及多个步骤,包括安装和配置OpenSSH服务、创建专用的SFTP用户、设置目录权限以及修改SSH配置文件。以下是详细的步骤:
更新和安装OpenSSH软件包:
sudo yum update
sudo yum install openssh-server
配置sshd_config文件:
/etc/ssh/sshd_config
文件,确保以下配置已启用:Subsystem sftp /usr/libexec/openssh/sftp-server
Match Group sftp_users
ChrootDirectory /home/%u
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
PasswordAuthentication yes
禁用root用户登录:
PermitRootLogin no
重启SSH服务:
sudo systemctl restart sshd
创建SFTP用户组:
sudo groupadd sftp_users
创建SFTP用户:
sudo useradd -m -G sftp_users -s /sbin/nologin sftpuser
sudo passwd sftpuser
设置SFTP用户目录权限:
更改用户主目录权限:
sudo chown root:sftp_users /home/sftpuser
sudo chmod 755 /home/sftpuser
创建用户可写入的目录:
sudo mkdir /home/sftpuser/upload
sudo chown sftpuser:sftp_users /home/sftpuser/upload
sudo chmod 755 /home/sftpuser/upload
sftp://sftpuser@your_server_ip/
的格式连接到CentOS服务器。禁用不必要的端口转发:
AllowTcpForwarding no
和 X11Forwarding no
,可以防止用户通过SFTP进行端口转发和X11图形界面转发,从而减少安全风险。日志记录:
SELinux配置:
sudo setenforce 0
/etc/selinux/config
文件将SELinux设置为disabled,然后重启系统。通过以上步骤,您可以在CentOS系统上安全地配置和使用SFTP,确保文件传输的安全性和可靠性。