要限制CentOS上的SFTP訪問,您可以使用以下方法:
Chroot Jail是一種將用戶限制在其主目錄中的技術。要為SFTP用戶設置Chroot Jail,請按照以下步驟操作:
a. 安裝必要的軟件包:
sudo yum install openssh-server
b. 創建一個新的用戶組(可選):
sudo groupadd sftp_users
c. 為新用戶創建一個系統用戶,并將其添加到新創建的用戶組(可選):
sudo useradd -m -G sftp_users -s /sbin/nologin your_username
d. 設置用戶的密碼:
sudo passwd your_username
e. 編輯/etc/ssh/sshd_config文件:
sudo vi /etc/ssh/sshd_config
f. 在文件末尾添加以下內容:
Match Group sftp_users
ChrootDirectory %h
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
這將限制sftp_users組的成員只能訪問其主目錄。
g. 重啟SSH服務以應用更改:
sudo systemctl restart sshd
現在,SFTP用戶將被限制在其主目錄中。
您還可以使用防火墻(如firewalld或iptables)來限制允許訪問SFTP服務的IP地址。
例如,使用firewalld限制IP地址:
a. 安裝firewalld(如果尚未安裝):
sudo yum install firewalld
b. 啟動firewalld服務并設置為開機啟動:
sudo systemctl start firewalld
sudo systemctl enable firewalld
c. 允許SFTP連接(默認端口22):
sudo firewall-cmd --permanent --add-service=sftp
d. 重新加載防火墻配置:
sudo firewall-cmd --reload
e. 限制允許訪問SFTP的IP地址:
sudo firewall-cmd --permanent --zone=trusted --add-source=your_ip_address
將your_ip_address替換為您要允許訪問SFTP服務器的IP地址。
f. 重新加載防火墻配置:
sudo firewall-cmd --reload
現在,只有指定的IP地址可以訪問SFTP服務。