zoukankan      html  css  js  c++  java
  • 踢出某正在访问的用户||永久禁止某IP访问

    转至:https://blog.csdn.net/weixin_34408717/article/details/85527305?utm_medium=distribute.pc_aggpage_search_result.none-task-blog-2~all~first_rank_v2~rank_v25-1-85527305.nonecase

    局域网或者服务器使用时候,可能会有未知IP也来访问。影响我们目前的工作,这时候不知道此IP是谁的,也就只能“痛下杀手”,踢掉他。方法如下:
    一.踢掉某正在连接IP的方法:
    1、运行 "who" 查看登录用户的IP和TTY
    2、运行 "pkill -KILL -t $TTY" ,$TTY为上面所查到的结果。

    操作之后对应的IP就会被踢出。

    有人可能会问,有没有方法让这个IP永远都别访问,答案是有的,看下面:

    二.永久禁止某IP访问此服务器:

    iptables -A OUTPUT -d 被禁止的域名 -j DROP

    禁止某IP用户登录:
    iptables -I INPUT -s 192.168.×.× -j DROP 
    禁止:iptables -I INPUT -s 192.168.×.× -j DROP
    禁止:iptables -A OUTPUT -d 192.168.×.× -j DROP
    放开某IP访问:
    iptables -I INPUT -s 192.168.×.× -j ACCEPT
    放开:iptables -A OUTPUT -d 192.168.×.× -j ACCEPT
    放开:iptables -I INPUT -s 192.168.×.× -j ACCEPT

    放开访问限制之后最好重启防火墙:
    service iptables restart

    三、 三步完成踢人参考:

    1、先列出当前系统已经登录的用户,记下想要KILL掉的用户名及登录时间
    [lifeccp@iZ251vwb73cZ ~]$ w
    10:07:45 up 296 days, 9:06, 4 users, load average: 0.36, 0.34, 0.35
    USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
    lifeccp pts/0 113.134.38.112 09:06 2:25 0.02s 0.01s ssh -p 10014 lifeccp@localhost
    root pts/1 114:S.0 09Jun16 181days 0.03s 0.03s /bin/bash
    lifeccp pts/3 113.134.38.112 08:59 1:41 0.01s 0.00s ssh -p 10014 lifeccp@localhost
    lifeccp pts/4 113.134.38.112 09:55 0.00s 0.03s 0.00s w


    2、找到要KILL掉的用户进程
    [lifeccp@iZ251vwb73cZ ~]$ ps aux |grep @pts
    lifeccp 2606 0.0 0.0 103332 840 pts/4 S+ 10:11 0:00 grep @pts
    lifeccp 29676 0.0 0.0 100008 1832 ? S 08:58 0:00 sshd: lifeccp@pts/0,pts/3,pts/4

    3、kill用户进程
    kill 29676

    四.关于远程连接踢人以及pts与tty1的解释补充

    可参考命令:

    踢人:
    fuser -k /dev/pts/1

    fuser -k /dev/tty1

    另外,补充一下关于tty以及pts方面的说明:

    如果说ttyx代表的是不同的控制台,那么我的进程中由tty1--------tyy6,怎么会6个控制台啊,重启之后远程连接后也是这样。还有pts/0,pts/1,pts/2是什么含义呢?
    如果用w命令发现有外来ip联入进来,我该如何将其会话注销掉呢?

    pts/0,pts/1,pts/2 是指你从远程登录的终端号 (不信你可以远程登录后用w 看看) 而tty1到tyy6是在linux机器上的终端号

    补充:TTY默认为6个,最多可支持23个。

    tty1到tyy6是在linux机器上的终端号??请问是机器上什么的终端号啊??谢谢

    tty0-6是linux本地要终端,可能有一些应用程序需要用到,pts/0-2是远程登陆需要的终端,比如某人要telnet到你的机子,就需要你的系统有pts/x。

    ps auxw|grep pst/x kill -9 PID号

    atl+F(1-6)切换

    是alt,呵呵写错了

    tty[1-6]就是用ctr+alt+f[1-6]所看到的那个终端了. 虚拟控制台.

    tty[1-6]就是用ctr+alt+f[1-6]所看到的那个终端了, 其他的是外部终端和网络终端。 pts/0,1,2是标准输入,标准输出,标准出错

    ------------

    linux系统root用户可强制踢制其它登录用户,首先可用$w命令查看登录用户信息,显示信息如下:

    强制踢人命令格式:pkill -kill -t tty

    解释:
    pkill -kill -t  踢人命令
    tty 所踢用户的TTY
    如上踢出liu用户的命令为: pkill -kill -t pts/1
    只有root用户才能踢人,至少我测试的是这样的。如果同时有二个人用root用户登录,任何其中一个可以 踢掉另一个。任何用户都可以踢掉自己-_-
    如何踢掉用终端登陆的用户,如:

    root pts/1 114:S.0 09Jun16 181days 0.03s 0.03s /bin/bash

    首先用命令查看pts/0的进程号,命令如下:

    [lifeccp@iZ251vwb73cZ ~]$ ps -ef | grep pts/0
    lifeccp 1013 30234 0 09:45 pts/0 00:00:00 ssh -p 10014 lifeccp@localhost
    lifeccp 2469 1585 0 10:09 pts/4 00:00:00 grep pts/0
    lifeccp 29676 29674 0 08:58 ? 00:00:00 sshd: lifeccp@pts/0,pts/3,pts/4
    lifeccp 30234 29676 0 09:06 pts/0 00:00:00 -bash

    踢掉用户的命令:

    kill -9 30234 

  • 相关阅读:
    linux系统如何发送邮件
    zabbix监测图形界面显示方框乱码解决方法
    Eclipse C++的配置问题launch failed binary not found
    Cpu表现出正弦曲线
    让cpu跑到100%的bat文件
    进程僵死
    华为一些笔试题~~~~零散总结
    数据库~~~投影与除操作
    C++连接Mysql数据库操作
    微软面试题目及答案
  • 原文地址:https://www.cnblogs.com/my-first-blog-lgz/p/13385808.html
Copyright © 2011-2022 走看看