功能需求:php
新增用戶,限制用戶只能經過sftp訪問vim
新建用戶,限制用戶不能使用ssh登錄centos
SSH設置ssh
首先要升級OpenSSH的版本。只有4.8p1及以上版本才支持Chroot。url
CentOS 5.4的源中的最新版本是4.3,所以須要升級OpenSSH。spa
指定新的源:rest
vim /etc/yum.repos.d/test.repoip
#輸入以下內容ssl
[centalt]openssl
name=CentALT Packages for Enterprise Linux 5 - $basearch
baseurl=http://centos.alt.ru/repository/centos/5/$basearch/
enabled=0
gpgcheck=0
# wq保存
執行升級:
yum --enablerepo=centalt update -y openssh* openssl*
# 重啓服務
service sshd restart
# 重看版本
ssh -V
# OpenSSH_5.8p1, OpenSSL 0.9.8e-fips-rhel5 01 Jul 2008
升級成功後,設置sshd_config。經過Chroot限制用戶的根目錄。
useradd –m –d /home/sftp/新建用戶名 –s /sbin/nologin 新建用戶名
設置用戶名密碼:
Passwd 新建用戶名
vim /etc/ssh/sshd_config
Match User 新建用戶名
ChrootDirectory /home/sftp/新建用戶名
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp
注:必須用root帳戶進行賦權,不用root用戶賦權sftp登錄不上
chown root.root /home/sftp /home/sftp/新建用戶名
chmod 755 /home/sftp /home/sftp/新建用戶名
cd /home/sftp/新建用戶名
mkdir {upload,pub}
chmod a+w upload -R upload
其中,upload目錄爲可讀寫權限,能夠用來上傳,pub目錄爲只讀權限,能夠用來下載。
useradd –m –d /home/sftp/user –s /sbin/nologin user
Passwd user
vim /etc/ssh/sshd_config
Match User user
ChrootDirectory /home/sftp/user
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp
chown root.root /home/sftp /home/sftp/user
chmod 755 /home/sftp /home/sftp/user
用戶登錄方式:
sftp user@須要登錄的ip地址
Linux添加或者刪除用戶和用戶組時經常使用的一些命令和參數。
一、建用戶:
adduser phpq //新建phpq用戶
passwd phpq //給phpq用戶設置密碼
二、建工做組
groupadd test //新建test工做組
三、新建用戶同時增長工做組
useradd -g test phpq //新建phpq用戶並增長到test工做組
注::-g 所屬組 -d 家目錄 -s 所用的SHELL
四、給已有的用戶增長工做組
usermod -G groupname username
或者:gpasswd -a user group
五、臨時關閉:在/etc/shadow文件中屬於該用戶的行的第二個字段(密碼)前面加上*就能夠了。想恢復該用戶,去掉*便可。
或者使用以下命令關閉用戶帳號:
passwd peter –l
從新釋放:
passwd peter –u
六、永久性刪除用戶帳號
userdel peter
groupdel peter
usermod –G peter peter (強制刪除該用戶的主目錄和主目錄下的全部文件和子目錄)
七、從組中刪除用戶
編輯/etc/group 找到GROUP1那一行,刪除 A
或者用命令
gpasswd -d A GROUP
八、顯示用戶信息
id user
cat /etc/passwd