温馨提示×

如何安全配置centos sftp

小樊
51
2025-10-09 01:54:35
栏目: 智能运维

要安全地配置CentOS上的SFTP(SSH文件传输协议),请按照以下步骤操作:

  1. 更新系统: 首先,确保您的CentOS系统已更新到最新版本。运行以下命令来更新系统:
sudo yum update
  1. 安装OpenSSH服务器: 如果尚未安装OpenSSH服务器,请运行以下命令来安装:
sudo yum install openssh-server
  1. 配置SSH: 编辑SSH配置文件/etc/ssh/sshd_config
sudo vi /etc/ssh/sshd_config

找到以下行并进行相应的更改:

  • #Port 22更改为自定义端口(可选)。
  • 取消注释PermitRootLogin no以禁止root登录。
  • 取消注释PasswordAuthentication no以禁用密码身份验证(建议使用密钥对进行身份验证)。
  • 添加或取消注释以下行以启用基于公钥的身份验证:
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
  1. 创建SFTP用户: 创建一个新用户(或使用现有用户)并为其设置密码:
sudo adduser your_username
sudo passwd your_username
  1. 配置SFTP子系统: 编辑/etc/ssh/sshd_config文件,确保以下行未被注释:
Subsystem sftp /usr/libexec/openssh/sftp-server
  1. 限制用户访问: 要限制SFTP用户访问特定目录,请编辑/etc/ssh/sshd_config文件并添加以下内容:
Match User your_username
    ChrootDirectory /home/your_username
    ForceCommand internal-sftp
    AllowTcpForwarding no
    X11Forwarding no

your_username替换为您要限制的用户的用户名。这将限制用户访问其主目录。

  1. 重启SSH服务: 保存更改并重启SSH服务以应用新配置:
sudo systemctl restart sshd
  1. 测试SFTP连接: 使用SFTP客户端(如FileZilla)尝试连接到您的CentOS服务器。使用新创建的用户凭据进行身份验证,并确保您可以正常传输文件。

遵循以上步骤,您应该已经成功地为CentOS系统配置了一个安全的SFTP服务器。

0