linux ssh r,Linux下限制Shell:Rssh和Scponly

本文介绍了如何通过安装和配置Scponly和RSSH来限制Linux用户仅能通过SCP复制文件,而无法登录到命令行,从而提高系统的安全性。Scponly是一个简单的受限Shell,而RSSH提供了更多的功能,允许限制用户使用特定的协议如SCP、SFTP等。配置RSSH可以在/etc/rssh.conf文件中完成,通过设置允许的协议和用户权限。这种方法可以有效防止未经授权的SSH活动,并保护系统不受攻击。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

限制Shell,正如Rsh和Scponly让系统管理员限制Linux用户可以做哪些操作,你可以创建用户,将被允许通过Scp复制文件,但不会被允许登录到系统的命令行。这是非常重要的安全功能,应考虑每个系统管理员用户,以防止未经授权的活动,例如通过SSH。

如果你有一些在线存储,用于上传超过Scp/ SSH或rsync从远程主机的备份数据,那么,强烈建议使用限制弹这些传入的连接,并确保即使攻击者得到了用户名/密码(或密钥),那么他(或她)将无法打入您的系统。

Scponly是极其简单的受限Shell,用户帐户具有Scponly的二进制的壳将无法做任何事情将数据从远程主机通过Scp协议或通过rsync/ Scp的除外。 RSSH提供多一点的功能:您可以限制用户使用选定的协议,如Scp,SFTP,rsync的,CVS或Rdist的Chroot环境或不。

安装:

我更喜欢使用yum或aptitude来安装这类软件像RSSH或Scponly的,最快的方法就是尝试以下其中一项命令,根据您的需要:

apt-get install rssh

apt-get install Scponly

yum install rssh

yum install Scponly

如果有问题,在你的Linux发行版的信息库中找到所需的受限Shell,然后你应该下载源代码,并做一些。/ configure时,和make install。这里是链接:latest rssh .tar.gz, latest Scponly .tgz.

配置:

Scponly的,不需要任何配置,开箱,所以你就应该将其设置为一个Shell的用户帐户。下面是一些例子。

用Scponly创建一个新的账号:

useradd -s /usr/sbin/Scponly user1

用该用户账号用rssh作为Shell:

usermod -s /usr/sbin/rssh user2

usermod -a -G rsshusers user1

usermod -a -G rsshusers user2

/usr/sbin/Scponly是Scponly的二进制可执行文件。

RSSH文本配置文件通常存储在/etc/rssh.conf中的。您可以设置每个用户的设置或配置全局限制使用RSSH所有账目。默认rssh.conf文件有很好的注释,所以不应该有任何问题,你需要配置RSSH。在同一时间,在这里有一些例子。

如果你想限制所有用户Scp和rsync的才应该取消注释在rssh.conf行,象下面这样:

allowScp

#allowsftp

#allowcvs

#allowrdist

allowrsync

现在来每个用户的例子。允许用户user1是仅使用Scp协议,对以下符合在rssh.conf将做到这一点:

user=user1:022:00001:

允许用户sbk只可以Scp和rsync:

user=sbk:022:10001:

正如你可以看到每个用户设置启用的协议指定为11000(Scp,SFTP),11111(Scp,SFTP,CVS,rdist的,rsync等)或00000(无协议启用)。在上面的例子中指定的umask022。

测试:

让我们假设你已经创建user1和只有Scp和rsync的使用RSSH启用。尝试访问user1的帐号下的SSH服务器通过将结束与下面的输出:

This account is restricted by rssh.

Allowed commands: Scp rsync

If you believe this is in error, please contact your system administrator.

Connection to 1.2.3.4 closed.

与此同时Scp过户工作没有问题:

artiomix$ Scp -P 23451 /etc/test.file [email protected]:/tmp

test.file       100%  983     1.0KB/s   00:00

进一步阅读:

Rssh支持Chroot环境对于Rsync、Rsync和其他的传输协议。这意味着你不仅可以限制用户通过命令他们也可以使用他们到达的文件系统。例如,User1可以可以chroot/chroot_user1,所以它不能被用来复制的东西从/etc目录的服务器或/var/ www下面。这里有一个Chroot在RSSH中是不错的手册。

219f5f834b6c460b74bc8c602ac1dcd4.gif

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值