在Debian系統中,要設置SFTP自動登錄,你需要編輯SSH配置文件并創建一個特定的用戶組。以下是詳細步驟:
打開終端。
使用文本編輯器(如nano或vim)打開SSH配置文件。在這個例子中,我們將使用nano編輯器:
sudo nano /etc/ssh/sshd_config
#Subsystem sftp /usr/lib/openssh/sftp-server
取消注釋(刪除行首的#符號),以便啟用SFTP子系統:
Subsystem sftp /usr/lib/openssh/sftp-server
Match Group sftpusers
ChrootDirectory %h
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
這將限制名為"sftpusers"的用戶組的成員只能使用SFTP,并將他們的根目錄更改為他們自己的主目錄。
保存并關閉配置文件。
創建一個名為"sftpusers"的新用戶組:
sudo groupadd sftpusers
sudo usermod -aG sftpusers your_username
將your_username替換為實際的用戶名。
sudo chown root:root /home/your_username
sudo chmod 755 /home/your_username
將your_username替換為實際的用戶名。
sudo systemctl restart ssh
現在,當用戶使用SFTP連接到服務器時,他們將自動登錄到他們的主目錄,無需再次輸入密碼。請注意,這種方法仍然需要用戶在連接時提供密碼,但無需在每次連接時手動輸入。如果你想要完全無需密碼的自動登錄,你需要設置SSH密鑰認證,但這超出了本問題的范圍。