centos

CentOS SFTP如何实现远程登录

小樊
41
2025-12-11 14:54:21
栏目: 智能运维

在CentOS上实现SFTP远程登录,你需要按照以下步骤操作:

  1. 安装OpenSSH服务器: CentOS系统通常已经预装了OpenSSH服务器。如果没有安装,可以使用以下命令进行安装:

    sudo yum install openssh-server
    
  2. 启动并启用SSH服务: 安装完成后,启动SSH服务并设置为开机自启:

    sudo systemctl start sshd
    sudo systemctl enable sshd
    
  3. 配置SSH服务: 编辑SSH配置文件/etc/ssh/sshd_config,确保以下配置项存在且未被注释:

    Port 22
    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
    UsePrivilegeSeparation sandbox
    KeyRegenerationInterval 3600
    ServerKeyBits 1024
    SyslogFacility AUTH
    LogLevel INFO
    LoginGraceTime 120
    PermitRootLogin no
    StrictModes yes
    RSAAuthentication yes
    PubkeyAuthentication yes
    IgnoreRhosts yes
    RhostsRSAAuthentication no
    HostbasedAuthentication no
    PermitEmptyPasswords no
    ChallengeResponseAuthentication no
    PasswordAuthentication yes
    X11Forwarding yes
    X11DisplayOffset 10
    PrintMotd no
    PrintLastLog yes
    TCPKeepAlive yes
    AcceptEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES
    AcceptEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT LC_IDENTIFICATION
    AcceptEnv LC_ALL LANGUAGE
    Subsystem sftp /usr/libexec/openssh/sftp-server
    

    确保Subsystem sftp指向正确的SFTP服务器路径。

  4. 重启SSH服务: 修改配置文件后,重启SSH服务以应用更改:

    sudo systemctl restart sshd
    
  5. 创建SFTP用户: 创建一个专门用于SFTP的用户,并设置密码:

    sudo adduser sftpuser
    sudo passwd sftpuser
    
  6. 配置SFTP用户权限: 编辑/etc/ssh/sshd_config文件,添加或修改以下配置项,以限制SFTP用户的访问权限:

    Match User sftpuser
        ChrootDirectory %h
        ForceCommand internal-sftp
        AllowTcpForwarding no
        X11Forwarding no
    

    这将把sftpuser用户的根目录限制在其主目录下,并强制使用内部SFTP服务器。

  7. 重启SSH服务: 再次重启SSH服务以应用更改:

    sudo systemctl restart sshd
    
  8. 测试SFTP连接: 使用SFTP客户端连接到服务器,测试是否可以成功登录:

    sftp sftpuser@your_server_ip
    

    输入密码后,如果一切配置正确,你应该能够成功登录并进行文件传输。

通过以上步骤,你可以在CentOS系统上实现SFTP远程登录,并确保安全性。

0
看了该问题的人还看了