linux 用SSH怎么查看哪些IP正在访问服务器

我记得有一次在一个朋友那里看他用命令看这,显示的结果就像top命令一样,不去动,他自己会变,显示目前哪些IP正在访问服务器,这个方法查看是不是攻击应该挺有效的吧

1、首先连接到Linux主机并进入命令行状态。

2、在命令行状态下,输入命令:netstat -ntu | awk'{print $ 5}'| cut -d:-f1 |排序| uniq -c | sort -n,按Enter键

3、打印出访问服务器的IP列表。

扩展资料

1、实现此的技术原理:在内网通过域名绑定服务器,外网SSH访问连接时,通过域名的访问,实现访问内网LINUX。

2、具体的实现过程如下:明确LINUX服务器内网访问地址端口,确保LINUX服务器正常开启SSH服务,在内网SSH可以正常访问连接。如图所示:

3、被访问端的Linux主机上使用nat123动态域名解析Linux版本。在被访问端的Linux服务器安装nat123客户端,并登录使用它。

4、登录网页,左侧用户中心,添加域名解析,选择动态域名解析并添加确认。选择动态域名解析记录,使用二级域名,或自己的域名。鼠标放在输入框有向导提示。如不理解负载均衡,不要勾选多点登录。

5、新添加动态解析后,等待几分钟生效。解析生效后,动态解析域名与本地公网IP是保持对应的。可以通过ping下域名核实,返回结果IP地址为本地公网IP地址时,表示动态解析生效正常。

6、路由器端口映射,路由映射SSH访问22端口。因为公网IP是在路由器上的,外网访问时,需要经过路由,需要在路由器上做端口映射,将内网LINUX服务器访问22端口打通。路由器端口映射位置:转发规则/虚拟服务器/添加允许外网访问端口和协议。我的LINUX服务器SSH服务端口是默认的22,我内网对应LINUX服务器主机的内网IP地址是192.168.1.29。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-06-18

需要准备的材料分别是:电脑、linux连接工具。

1、首先连接上linux主机,进入命令行状态。

2、在命令行状态下,输入指令:netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n,按回车。

3、此时会打印出正在访问该服务器的IP列表。

本回答被网友采纳
第2个回答  推荐于2016-05-04
w,显示目前登入系统的用户信息。

语法:w [-fhlsuV][用户名称]

linux w 命令补充说明:执行这项指令可得知目前登入系统的用户有那些人,以及他们正在执行的程序。单独执行linux w 命令会显示所有的用户,您也可指定用户名称,仅显示某位用户的相关信息。

linux w 命令参数:

-f  开启或关闭显示用户从何处登入系统。

-h  不显示各栏位的标题信息列。

-l  使用详细格式列表,此为预设值。

-s  使用简洁格式列表,不显示用户登入时间,终端机阶段作业和程序所耗费的CPU时间。

-u  忽略执行程序的名称,以及该程序耗费CPU时间的信息。

-V  显示版本信息。

http://linux.51yip.com/search/w
第3个回答  2018-02-27
22端口是SSH用到的端口,所以只需要查看哪些IP正连接到22端口即可。
netstat -anp | grep -w 22 | grep ESTABLISHED
第4个回答  2015-06-15
netstat -anp | grep ESTABLISHED
可以查看哪些IP正在访问服务器。
netstat -anp | grep ESTABLISHED | grep ssh
可以查看哪些ip通过ssh访问服务器。