~]# useradd dayi123
~]# echo dayi123 | passwd --stdin dayi123
2、設定sftp的賬戶許可權
設定sftp的賬號許可權需要通過修改ssh配置檔案 /etc/ssh/sshd_config,ssh配置檔案修改內容如下:
# subsystem sftp /usr/libexec/openssh/sftp-server #注釋掉此行並新增一下行
subsystem sftp internal-sftp
match user dayi123 #此處設定控制的使用者,也可以設定為組
chrootdirectory /home/dayi123 #允許使用者訪問的目錄,此處我們設定為使用者家目錄
x11forwarding no
allowtcpforwarding no
forcecommand internal-sftp
配置完成後需要重啟服務:
[root@server2 ~]# /etc/init.d/sshd restart
此處配置完我們用另一台機器測試登入,會出現錯誤,使用win系統sftp客戶端同樣也不能正常登陸
[root@server2 ~]# sftp [email protected]
connecting to 10.0.0.13...
[email protected]'s password:
write failed: broken pipe
couldn't read packet: connection reset by peer
這是由於沒有配置目錄的正確許可權,我們需要設定使用者訪問的目錄的許可權
3、設定允許使用者訪問目錄的許可權
sftp使用者訪問目錄需要設定所有者和所屬組的許可權均為root,並設定目錄的許可權為755,但此目錄下的檔案及目錄的許可權我們可根據自己的需求任意設定。
~]# chown root:root /home/dayi123/
~]# chmod 755 /home/dayi123/
~]# ll /home/
total 4
drwxr-xr-x 2 root root 4096 sep 8 17:54 dayi123
~]# usermod dayi123 -s /sbin/nologin #設定該sftp賬號不允許登入
~]# /etc/init.d/sshd reload
至此,我們的sftp配置已經完成,
4、測試sftp
使用linux測試:
~]# sftp [email protected]
connecting to 10.0.0.13...
[email protected]'s password:
sftp> pwd
remote working directory: /
sftp> cd ../
sftp> pwd
remote working directory: /
使用windows客戶端winscp測試:
登入後的目錄定位到了指定的目錄」/home/dayi123」目錄,不能瀏覽系統的其他目錄,也不能切換目錄。
5、設定使用者上傳檔案許可權
下面的情況可能跟使用者安裝的作業系統有關係,如果每月啟用selinux,可以把目錄設定的使用者和群 設定為 dayi123即可,不用進行如下的操作。
Linux建立使用者,SFTP只允許訪問指定目錄
首先建立使用者 useradd lus1 passwd lus1 我這裡配置lus1這個使用者目錄,為sftp指向目錄,即 home lus1 vim etc ssh sshd config 這個記得要在原有的配置檔案注釋掉 subsystem sftp usr libexec openssh sf...
只允許指定使用者登入SSH
為安全需要,可以指定某使用者才能登入ssh 軟體環境 ssh v openssh 5.3p1,openssl 1.0.0 fips 29 mar 2010 1 在 etc ssh sshd config檔案中新增如下語句 允許admin可以在任何地方登入 allowusers admin 或設定成其...
iptables只允許指定ip訪問本機的指定埠
首先,清除所有預設定 iptables f 其次,設定只允許指定ip位址訪問指定埠 1 在tcp協議中,禁止所有的ip訪問本機的1521埠。iptables i input p tcp dport 1521 j drop 2 允許192.168.1.123訪問本機的1521埠 iptables i ...