在CentOS上配置SFTP(SSH文件傳輸協議)通常涉及編輯SSH服務器的配置文件,并設置適當的權限和用戶訪問控制。以下是一個基本的步驟指南:
如果尚未安裝OpenSSH服務器,請使用以下命令進行安裝:
sudo yum install openssh-server
啟動SSH服務并設置為開機自啟:
sudo systemctl start sshd
sudo systemctl enable sshd
編輯SSH服務器的配置文件 /etc/ssh/sshd_config
:
sudo vi /etc/ssh/sshd_config
在文件中找到并修改以下行:
# 默認情況下,SFTP子系統是啟用的
Subsystem sftp /usr/libexec/openssh/sftp-server
# 允許SFTP用戶登錄
Match Group sftpusers
ChrootDirectory %h
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
創建一個專門用于SFTP用戶的組:
sudo groupadd sftpusers
添加一個新用戶并將其添加到SFTP用戶組中。例如,添加用戶 sftpuser
:
sudo useradd -m -G sftpusers sftpuser
sudo passwd sftpuser
在提示時輸入并確認密碼。
確保SFTP用戶的主目錄權限設置正確,以便ChrootDirectory能夠正常工作:
sudo chown root:root /home/sftpuser
sudo chmod 755 /home/sftpuser
為SFTP用戶創建一個Chroot目錄,并設置適當的權限:
sudo mkdir /home/sftpuser/uploads
sudo chown sftpuser:sftpusers /home/sftpuser/uploads
應用配置更改并重啟SSH服務:
sudo systemctl restart sshd
使用SFTP客戶端連接到服務器,驗證配置是否正確:
sftp sftpuser@your_server_ip
通過以上步驟,你應該能夠在CentOS上成功配置SFTP服務。