限制sftp用户只能在自己文件夹下活动,不可进行ssh链接和使用22端口

功能需求:

新增用户,限制用户只能通过sftp访问

新建用户,限制用户不能使用ssh登陆

 

SSH设置

首先要升级OpenSSH的版本。只有4.8p1及以上版本才支持Chroot。

CentOS 5.4的源中的最新版本是4.3,因此需要升级OpenSSH。

指定新的源:

vim /etc/yum.repos.d/test.repo

#输入如下内容

[centalt]

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限制用户的根目录。

 

一、新建用户禁止ssh登陆

 

useradd –m –d /home/sftp/新建用户名 –s /sbin/nologin 新建用户名

设置用户名密码:

Passwd 新建用户名

 

二、在sshd_config文件中添加用户内容限制用户只能在自己更目录下使用

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目录为只读权限,可以用来下载。

 

例如创建user用户,限制该用户只能使用sftp,不可以使用ssh连接

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添加或者删除用户和用户组时常用的一些命令和参数。

1、建用户:

adduser phpq                             //新建phpq用户

passwd phpq                               //给phpq用户设置密码

 

2、建工作组

groupadd test                          //新建test工作组

 

3、新建用户同时增加工作组

useradd -g test phpq                      //新建phpq用户并增加到test工作组

 

注::-g 所属组 -d 家目录 -s 所用的SHELL

 

 

4、给已有的用户增加工作组

usermod -G groupname username

 

或者:gpasswd -a user group

 

5、临时关闭:在/etc/shadow文件中属于该用户的行的第二个字段(密码)前面加上*就可以了。想恢复该用户,去掉*即可。

 

或者使用如下命令关闭用户账号:

passwd peter –l

 

重新释放:

passwd peter –u

 

6、永久性删除用户账号

userdel peter

 

groupdel peter

 

usermod –G peter peter   (强制删除该用户的主目录和主目录下的所有文件和子目录)

 

7、从组中删除用户

编辑/etc/group 找到GROUP1那一行,删除 A

或者用命令

gpasswd -d A GROUP

 

8、显示用户信息

id user

cat /etc/passwd

转载于:https://my.oschina.net/gywbest/blog/781381

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值