管理用SSH远程登录Linux服务器的用户的权限

  发布时间:2015-07-03 16:50:25   作者:佚名   我要评论
这篇文章主要介绍了管理用SSH远程登录Linux服务器的用户的权限,包括维护安全时禁止登录等方法,需要的朋友可以参考下

为了满足“break qiang”的需要,在国外的Linux主机上(比如 DreamHost )上建个可 ssh登录的用户,使用 ssh 的 Tunnel 来作代理是十分常见的方法。

但是主人往往又想最小化用户权限,以避免对系统造成影响。最简单的办法就是,禁止用户登录。

其实 ssh 可以连接到 sshd 但是不执行远程命令(默认是启动用户设定的 shell ),使用 -N 参数即可。

在服务器上建一个 username :
添加用户:useradd -s /bin/false username,将用户的shell设置成/bin/false。这样用户就无法与系统进行交互。
设置密码:passwd username

当然对已有的用户也可以更改用户权限为只能tcp转发:

复制代码
代码如下:
usermod -s /bin/false USERNAME

也可以使用 /usr/bin/passwd 作为用户的 shell ,这样用户就可以通过登录而来自主修改密码。需要注意的是,需要将 /usr/bin/passwd 这一行写进 /etc/shells文件。
sshd 认证通后之后,会检查设定的 shell 是否登记在 /etc/shells 文件中,若已经登记,则fork自己,然后fork出来的子进程再exec 设定的 shell 。而 ssh 的 -N 参数,则是告诉 sshd 不需要执行 shell。

建立Tunnel:


复制代码
代码如下:
ssh -D 1080 -qfnN username@hostname

输入密码即可使用(也可以用key认证)。

Windows的话,可以使用plink.exe或者MyEnTunnel(MyEnTunnel 本质上也是使用plink.exe来建立Tunnel)。

此时账号username 可以通过sshd的认证使用 TcpForwarding ,但是不能运行 shell,不能与系统交互。刚好可以用来为朋友提供国外的代理break qiang。

参数详解:
-D 1080 建立动态Tunnel,监听在本地1080端口。
-q 安静模式。
-f ssh在后台运行,即认证之后,ssh退居后台。
-n 将 stdio 重定向到 /dev/null,与-f配合使用。
-N 不运行远程程序。即通知 sshd 不运行设定的 shell。

相关文章

  • LINUX怎么利用远程管理命令进行关机和重启?

    LINUX怎么利用远程管理命令进行关机和重启?LINUX系统想要关机重启,方法很多,今天我们就来看看远程管理命令进行关机重启的教程,需要的朋友可以参考下
    2018-11-19
  • Linux中rsh远程shell命令的使用技巧解析

    这篇文章主要介绍了Linux中rsh远程shell命令的使用技巧解析,包括一些rsh由于进程和连接数等方面问题造成的操作失败的解决方法,需要的朋友可以参考下
    2016-03-11
  • 详解Linux下常用远程登陆命令telnet和rlogin的用法

    这篇文章主要介绍了详解Linux下常用远程登陆命令telnet和rlogin的用法,是Linux工作环境与生产环境连接使用中的基础,需要的朋友可以参考下
    2016-01-19
  • linux文件夹怎么与远程系统同步?

    linux文件夹怎么与远程系统同步?linux系统中的文件夹想要与远程的系统进行同步,该怎么操作额?下面我们就来看看详细的教程,需要的朋友可以参考下
    2019-03-14
  • deepin20终端远程管理服务器的方法

    deepin20终端怎么远程管理服务?deepin20终端界面提供ssh远程管理服务器的功能,该怎么使用呢?下面我们就来看看详细的教程,需要的朋友可以参考下
    2021-01-15
  • Linux远程管理及权限命令详解

    这篇文章主要为大家介绍了Linux远程管理及权限的命令详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2021-11-12

最新评论