RHEL6编译安装SFTP

    SFTP全称Secret File Transfer Protocol,即安全文件传输协议。随着越来越多的企业对安全意识的提高,一般每年也会内部开展数次安全检查整改工作,其中使用密文传输的SFTP替代明文传输的FTP便是常见的整改项之一。

    实验环境

    操作系统:RHEL 6.10

    OpenSSH:8.4p1

    服务端篇

    第一步 安装OpenSSH

    OpenSSH 4.8p1之后的版本自带SFTP功能模块,建议使用最新版本的OpenSSH,参考教程:RHEL6编译安装OpenSSH

    第二步 创建用户组和用户

    1. # groupadd sftp  
    2. # useradd wanghualang -g sftp -s /sbin/nologin -M  
    3. # echo wanghualang:123456 | chpasswd  

    第三步 创建父目录并赋权

    1. # mkdir /sftp  
    2. # chown root:root /sftp  
    3. # chmod 755 /sftp  

    第四步 创建子目录并赋权

    1. # mkdir /sftp/wanghualang  
    2. # chown wanghualang:sftp /sftp/wanghualang  
    3. # chmod 755 /sftp/wanghualang  

    第五步 修改SSH配置文件

    1. # vim /etc/ssh/sshd_config  

    1. #在配置文件末尾插入以下内容  
    2. Subsystem sftp internal-sftp -l INFO -f AUTHPRIV    
    3. #ForceCommand internal-sftp    
    4. Match Group sftp    
    5. ChrootDirectory /sftp/    
    6. X11Forwarding no    
    7. AllowTcpForwarding no    

    完整配置参考展开隐藏

    1. #Port 22  
    2. AddressFamily inet  
    3. #ListenAddress 0.0.0.0  
    4. #ListenAddress ::  
    5. #HostKey /etc/ssh/ssh_host_rsa_key  
    6. #HostKey /etc/ssh/ssh_host_ecdsa_key  
    7. #HostKey /etc/ssh/ssh_host_ed25519_key  
    8. #RekeyLimit default none  
    9. #SyslogFacility AUTH  
    10. SyslogFacility AUTHPRIV  
    11. #LogLevel INFO  
    12. #LoginGraceTime 2m  
    13. PermitRootLogin yes  
    14. #StrictModes yes  
    15. #MaxAuthTries 6  
    16. #MaxSessions 10  
    17. #PubkeyAuthentication yes  
    18. AuthorizedKeysFile  .ssh/authorized_keys  
    19. #AuthorizedPrincipalsFile none  
    20. #AuthorizedKeysCommand none  
    21. #AuthorizedKeysCommandUser nobody  
    22. #HostbasedAuthentication no  
    23. #IgnoreUserKnownHosts no  
    24. #IgnoreRhosts yes  
    25. #PasswordAuthentication yes  
    26. #PermitEmptyPasswords no  
    27. ChallengeResponseAuthentication no  
    28. #KerberosAuthentication no  
    29. #KerberosOrLocalPasswd yes  
    30. #KerberosTicketCleanup yes  
    31. #KerberosGetAFSToken no  
    32. #GSSAPIAuthentication no  
    33. #GSSAPICleanupCredentials yes  
    34. #UsePAM yes  
    35. #AllowAgentForwarding yes  
    36. #AllowTcpForwarding yes  
    37. #GatewayPorts no  
    38. X11Forwarding yes  
    39. #X11DisplayOffset 10  
    40. #X11UseLocalhost yes  
    41. #PermitTTY yes  
    42. PrintMotd no  
    43. PrintLastLog no  
    44. #TCPKeepAlive yes  
    45. #PermitUserEnvironment no  
    46. #Compression delayed  
    47. #ClientAliveInterval 10  
    48. #ClientAliveCountMax 3  
    49. UseDNS no  
    50. #PidFile /var/run/sshd.pid  
    51. #MaxStartups 10:30:100  
    52. #PermitTunnel no  
    53. #ChrootDirectory none  
    54. #VersionAddendum none  
    55. #Banner none  
    56. Subsystem sftp internal-sftp -l INFO -f AUTHPRIV  
    57. #ForceCommand internal-sftp  
    58. Match Group sftp  
    59. ChrootDirectory /sftp/  
    60. X11Forwarding no  
    61. AllowTcpForwarding no  

    第六步 重启服务

    1. # service sshd restart  

    第七步 登陆测试

    1. # sftp wanghualang@127.0.0.1  
    2. wanghualang@127.0.0.1's password: 123456  
    3. Connected to wanghualang@127.0.0.1.  
    4. sftp>   
    匿名

    发表评论

    匿名网友 填写信息