在CentOS上啟用SFTP(SSH File Transfer Protocol)通常涉及幾個步驟,包括安裝必要的軟件包、配置SSH服務器以及設置SFTP用戶權限。以下是在CentOS 7或CentOS 8上啟用SFTP的基本步驟:
安裝OpenSSH服務器: 如果尚未安裝OpenSSH服務器,請使用以下命令安裝它:
sudo yum install openssh-server
或者,如果您使用的是CentOS 8:
sudo dnf install openssh-server
啟動并啟用SSH服務: 安裝完成后,啟動SSH服務并設置為開機自啟:
sudo systemctl start sshd
sudo systemctl enable sshd
配置SSH以允許SFTP:
編輯SSH配置文件 /etc/ssh/sshd_config
:
sudo vi /etc/ssh/sshd_config
在文件中找到以下行(如果存在)并確保它們沒有被注釋掉(沒有#
在行首):
Subsystem sftp /usr/libexec/openssh/sftp-server
如果這一行被注釋掉了,請取消注釋。
您還可以添加或修改以下配置來限制SFTP用戶的訪問:
Match Group sftpusers
ChrootDirectory %h
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
這里,sftpusers
是一個您稍后將創建的用于SFTP訪問的用戶組。
創建SFTP用戶組和用戶: 創建一個新的用戶組(如果尚未存在)并添加一個新用戶到該組:
sudo groupadd sftpusers
sudo useradd -m -G sftpusers your_username
將 your_username
替換為您想要為其設置SFTP訪問的用戶名。
設置用戶的密碼:
sudo passwd your_username
設置用戶主目錄權限: 確保SFTP用戶的主目錄權限設置正確,以便SSH可以訪問:
sudo chown root:root /home/your_username
sudo chmod 755 /home/your_username
重啟SSH服務: 應用更改并重啟SSH服務:
sudo systemctl restart sshd
現在,您應該能夠使用SFTP連接到您的CentOS服務器。使用SFTP客戶端(如FileZilla或其他支持SFTP的FTP客戶端)連接到服務器時,請使用您剛剛創建的用戶名和密碼。
請注意,根據您的具體需求和安全策略,您可能需要進一步調整配置文件中的設置。始終確保遵循最佳安全實踐,特別是在處理遠程訪問和文件傳輸時。