㈠ centos7 中使用sftp窗口的get命令下載文件到Windows,請問下載到了Windows的哪個目錄
應該是 c:\users\your_user_name
和你的 用戶名有關系的那個
去 看看
㈡ linux下如何使用sftp命令
回車提示輸入密碼。進入提示符sftp如果登陸遠程機器不是為了上傳下載文件,而是要修改遠程主機上的某些文件。可以 ssh [email protected] (其實sftp就是ssh 的一個程式。) sftp get /var/www/fuyatao/index.php /home/fuyatao/ 這條語句將從遠程主機的 /var/www/fuyatao/目錄下將 index.php 下載到本地 /home/fuyatao/目錄下。 sftp put /home/fuyatao/downloads/Linuxgl.pdf /var/www/fuyatao/ 這條語句將把本地 /home/fuyatao/downloads/目錄下的 linuxgl.pdf文件上傳至遠程主機/var/www/fuyatao/ 目錄下。 改變路徑可以用cd ,改變本機路徑可以用 lcd; ls rm rmdir mkdir 這些命令都可以使用。同理調用本機都是加 l , 即 lls lrm. 要離開sftp,用exit 或quit、 bye 均可。詳細情況可以查閱 man sftp. 如果覺得在命令行模式下不太方便,可以 sudo apt-get install gftp。在圖形界面下操作就簡便多了。
㈢ sftp創建新賬戶並指定目錄
首先 你的openssh-server版本至少得是4.8p1,因為配置許可權需要版本添加的新配置項ChrootDirectory來完成。 如何查看自己伺服器上的ssh版本?大家可以嘗試以下命令: # ssh -V 步驟: 1. 我們需要創建一個用戶組,專門用於sftp用戶 # groupadd sftpusers ps我里的用戶組是sftpusers 2. 我們創建一個用戶user # useradd -s /bin/false -G sftpusers user ps注意這里我們將user用戶的shell設置為/bin/false使他沒有登陸shell的許可權 # passwd user ps設置user用戶密碼 3. 編輯/etc/ssh/sshd_config 找到Subsystem這個配置項,將其修改為 Subsystem sftp internal-sftp 然後再到文件最尾處增加配置設定屬於用戶組sftpusers的用戶都只能訪問自己的文件夾 Match Group sftpusers X11Forwarding no AllowTcpForwarding no ForceCommand internal-sftp ChrootDirectory /data/sftp/%u #需在 /data/sftp/ 創建user文件夾,該文件夾就是登錄的sftp用戶目錄 保存並關閉 4. 修改user用戶所在文件夾的許可權,讓其屬於root用戶 # chown root /data/sftp/user 5. 重啟sshd服務 # service sshd restart 6. 測試用戶賬號 # ssh user@localhost ps連接會被拒絕,證明該用戶沒有ssh shell登錄的許可權 # sftp user@localhost 登陸後你會發現你的賬號無法切換到除自己本身目錄之外的地方;ps或者登錄失敗,看下面可能出現的問題; 問題: 1,如果在鏈接伺服器的時候出現下面的提示: Write failed: Broken pipe Couldn't read packet: Connection reset by peer 這個問題的原因是ChrootDirectory的許可權問題,你設定的目錄必須是root用戶所有,否則就會出現問題。所以請確保sftp用戶根目錄的所有人是root,許可權是750 或者755。 解決:設置user目錄為root許可權,# chown root:user /data/sftp/user #chmod 750 /data/sftp/user 2,Sftp用戶登錄後不能在本目錄操作: 是因為登錄後的目錄是root許可權,需將sftp賬號賦予root許可權,操作方法將 /etc/passwd 文件中對應的sftp的用戶ID修改為0,這樣就可以有許可權操作登錄後的目錄了(還有其他賦予許可權方法,ps另行查找)。Eg:user:x:503:505::/home/darops:/bin/false 將503改為0