Linux踢出其他正在SSH登陆用户

 
 

在一些生产平台或者做安全审计的时候往往看到一大堆的用户SSH连接到同一台服务器,或者连接后没有正常关闭进程还驻留在系统内。限制SSH连接数与手动断开空闲连接也有必要之举,这里写出手动剔出其他用户的过程。

1、查看系统在线用户

[root@apache ~]# w 
14:15:41 up 42 days, 56 min,  2 users,  load average: 0.07, 0.02, 0.00 
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT 
root     pts/0    116.204.64.165   14:15    0.00s  0.06s  0.04s w 
root     pts/1    116.204.64.165   14:15    2.00s  0.02s  0.02s –bash

2、查看当前自己占用终端,别把自己干掉了

[root@apache ~]# who am i 
root     pts/0        2013-01-16 14:15 (116.204.64.165)

3、用pkill 命令剔除对方

[root@apache ~]# pkill -kill -t pts/1

4、用w命令在看看干掉没。

[root@apache ~]# w 
14:19:47 up 42 days,  1:00,  1 user,  load average: 0.00, 0.00, 0.00 
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT 
root     pts/0    116.204.64.165   14:15    0.00s  0.03s  0.00s w

 

后记:

如果最后查看还是没有干掉,建议加上-9 强制杀死。

[root@apache ~]# pkill -9 -t pts/1

#

###

  Linux 是个多用户系统,一旦连接到网络中,它可以同时为多个登录用户提供服务。系统管理员可以随时了解系统中有那些用户,用户都在进行什么操作。 

查看用户的操作 

  系统管理员若想知道某一时刻用户的行为,只需要输入命令W 即可,在SHELL终端中输入如下命令: 



可以看到执行W命令及显示结果。 

命令信息含义 

上述显示的信息分别表示如下: 
第一行显示系统的汇总信息,字段分别表示系统当前时间、系统运行时间、登陆哟内用户总数及系统平均负载信息。对于上述中的几个显示数据意义为: 

15:59:27 表示执行W的时间。 
up 1:01 表示系统运行时间。 
4 USERS 表示当前系统登陆用户总数。 
LOAD AVERAGE 与后面的数字一起表示系统在过去1,5,10分钟内的负载程度,数值越小,系统负载越轻。 

从第二行开始构成一个表格,共有8个栏目,分别显示各个用户正在做的事情及该用户所占用的系统资料。 

USER:显示登陆用户帐号名。用户重复登陆,该帐号也会重复出现。 
TTY:用户登陆所用的终端。 
FROM:显示用户在何处登陆系统。 
LOGIN@:是LOGIN AT的意思,表示登陆进入系统的时间。 
IDLE:用户空闲时间,从用户上一次任务结束后,开会记时。 
JCPU:一终端代号来区分,表示在摸段时间内,所有与该终端相关的进程任务所耗费的CPU时间。 
PCPU:指WHAT域的任务执行后耗费的CPU时间。 
WHAT:表示当前执行的任务。 

查看某用户 

  当登陆系统用户很多的时候,可以在W后面加上某个用户名,则会查看该用户执行任务的情况。 

 

  默认情况下,系统会显示上述所有的信息,如果只关心某一方面,可以只使用相关的选项。 

查看登陆用户 

  同样,系统管理员若想知道某一时刻登陆的用户,可以使用系统提供的who命令,该命令可以查看当前登陆到系统的用户及其他信息: 

 

  可以看出上述信息与 W 命令非常相似。如果想让列表更详细一些,可以加上选项-HIT等,就可以得到该用户是否愿意接受其他用户信息(-T)还可以显示空闲时间(-I)及标题栏(-H)。如果某各用户愿意接受信息,会在MESG栏中显示一个“+”,这是还可以使用命令MESG给用户发从信息。 

查看登陆用户历史 

  系统管理员若想知道系统中用户登陆的历史行为,还可以察看用户曾经登陆到系统。使用LAST 命令可以查询曾经登陆用户的信息: 



  使用LAST 命令时,列出的文件内容会非常多,根本看不清楚。此时可以使用前面介绍的管理方式来观看,例如/LAST/ LESS,则可以查看前后内容。同查看用户情况一样,想查看那某个用户的登陆情况,也可以在LAST命令后加上用户名,则系统只会显示该用户登陆系统情况。 

  执行last命令其实是显示/var/log/目录下的wtmp文件内容。Wtmp文件是以二进制格式进行存储的,如果直接使用文本编辑器查看,查看的会是一堆乱码。 

【转载】Linux踢出其他正在SSH登陆用户的更多相关文章

  1. Linux踢出其他正在SSH登陆用户

    1.查看系统在线用户 [root@testdb ~]#w 2.查看哪个属于此时自己的终端(我开了两个连接) [root@testdb ~]# who am i 3.pkill掉自己不适用的终端 [ro ...

  2. linux 踢出用户方法

    linux系统root用户可强制踢制其它登录用户, 首先以root登录以便查看全部的在线用户信息,可用w命令查看登录用户信息 强制踢人命令格式:pkill -kill -t tty 解释: pkill ...

  3. Linux踢出已登录用户

    1.使用w命令可以查看当前登录系统的所有用户 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root tty1 - 08:05 4:29 0.09s 0.09s - ...

  4. 踢出某正在访问的用户||永久禁止某IP访问

    转至:https://blog.csdn.net/weixin_34408717/article/details/85527305?utm_medium=distribute.pc_aggpage_s ...

  5. Linux踢出登陆用户的正确姿势

    首先who(或w)查看需要杀死的终端名,然后执行: pkill -9 -t pts/? pkill相当于ps和kill的结合,用法和killall类似,根据进程名来杀死一类进程(kill是杀死单个) ...

  6. Linux上强制踢出其他正在登录的用户

    一.查看当前在线用户有几个 w命令 [root@pa1 nginx]#w 13:36:00 up 79 days, 23:50, 3 users, load average: 0.10, 0.07, ...

  7. Linux系统下查看已经登录用户并踢出的方法

    LINUX是个多用户系统,一旦连接到网络中,它可以同时为多个登录用户提供服务. 查看用户的操作 查看当前用户: [ROOT@LOCALHOST ROOT] # W                    ...

  8. Windows SubSystem for Linux(WSL)设置默认和设置默认登陆用户

    使用wslconfig命令进行管理 1.  设置默认运行的linux系统 wslconfig /setdefault <DistributionName> 正如上面所说,如果执行wslco ...

  9. Linux下管理员强行踢出用户的命令使用方法

    Linux强制踢出用户命令: 一.输入w命令查看已登录用户信息 [root@KW_S01_192.168.1.106_A ~]# w 19:22:31 up  2:11,  3 users,  loa ...

随机推荐

  1. ClickHouse性能优化?试试物化视图

    一.前言 ClickHouse是一个用于联机分析(OLAP)的列式数据库管理系统(DBMS):目前我们使用CH作为实时数仓用于统计分析,在做性能优化的时候使用了 物化视图 这一特性作为优化手段,本文主 ...

  2. 学习笔记-ionic3 环境配置搭建到打包

    折腾了两周总算理清楚了,参考的链接如下: https://blog.csdn.net/zeternityyt/article/details/79655150  环境配置 https://segmen ...

  3. [Fundamental of Power Electronics]-PART I-6.变换器电路-6.3 变压器隔离

    6.3 变压器隔离 在许多应用场合中,期望将变压器结合到开关变换器中,从而在变换器的输入输出之间形成直流隔离.例如,在离线(off-line)应用中(变换器输入连接到交流公用系统),根据监管部门要求, ...

  4. 带你全面认识CMMI V2.0(五)——改进

    改进(Improving)涉及开发.管理和改进过程及其相关资产,其主要重点是提高组织绩效.保持习惯和持久性可确保过程在整个组织中是持久.习惯性地执行和维持,并有助于有效地实现业务绩效目标.治理(GOV ...

  5. 【源码解析】- ArrayList源码解析,绝对详细

    ArrayList源码解析 简介 ArrayList是Java集合框架中非常常用的一种数据结构.继承自AbstractList,实现了List接口.底层基于数组来实现动态容量大小的控制,允许null值 ...

  6. Java 线程和操作系统的线程有啥区别?

    尽人事,听天命.博主东南大学硕士在读,携程 Java 后台开发暑期实习生,热爱健身和篮球,乐于分享技术相关的所见所得,关注公众号 @ 飞天小牛肉,第一时间获取文章更新,成长的路上我们一起进步 本文已收 ...

  7. 【Azure 环境】在Windows系统中 使用Terraform创建中国区Azure资源步骤(入门级)

    Terraform(全称:Hashicorp Terraform )是一种开源工具,用于预配和管理云基础结构. 它将基础结构编入描述云资源拓扑的配置文件中. 这些资源包括虚拟机.存储帐户和网络接口等. ...

  8. Kubernetes查看可用的apiVersion版本

    命令: kubectl api-versions

  9. 统计学习方法——实现AdaBoost

    Adaboost 适用问题:二分类问题 模型:加法模型 \[f(x)=\sum_{m=1}^{M} \alpha_{m} G_{m}(x) \] 策略:损失函数为指数函数 \[L(y,f(x))=ex ...

  10. matlab函数句柄

    matlab函数句柄 直接调用函数:  被调用函数只能被其M文件同名的主函数或在M文件中的其他函数调用,一个文件只有一个主函数. 间接调用函数:  避免只能使用直接调用函数的情况,个人理解就是为一个函 ...