逗比根据地以后将不再提供免翻镜像域名,有能力的请访问主域名:[doub.io],主域名永不更换。
投稿文章 | 广告投放 | Telegram 群组 / 公告频道 / 使用教程

Shadowsocks查看服务器上面的 用户连接数 方法

Shadowsocks Toyo 12评论
本文最后更新于 2017年7月26日 12:14 可能会因为没有更新而失效。如已失效或需要修正,请留言!

一些人在分享自己的Shadowsocks账号后可能想要看一下链接自己的Shadowsocks账号的有多少人,我就简单说一下方法。


本方法仅适用于 Debian/Ubuntu 系统(部分代码支持CentOS),ShadowsocksR 服务端和Shadowsocks Python 服务端!

首先,我们是使用netstat命令来查询当前服务器(VPS)的连接数据。

以下方法适用于 ShadowsocksR(Python) 的服务端,因为ShadowsocksR服务端由 Python 编写,并且默认开启ipv6,所以很容易过滤出一些信息。

显示出由Python建立完成的TCP链接列表或连接数

# 显示所有进出链接
netstat -anp |grep 'ESTABLISHED' |grep 'python'
# 仅显示链接服务器的用户连接
netstat -anp |grep 'ESTABLISHED' |grep 'python' |grep 'tcp6'
# 仅显示链接服务器的用户连接数量
netstat -anp |grep 'ESTABLISHED' |grep 'python' |grep 'tcp6' |wc -l
# 仅显示链接服务器的用户连接并写入到文件
netstat -anp |grep 'ESTABLISHED' |grep 'python' |grep 'tcp6'>>/root/log.txt

# 如果你是多用户版(多个端口)的服务端,那么你可以用这个命令
# 显示当前链接服务器的用户的SS端口
netstat -anp |grep 'ESTABLISHED' |grep 'python' |grep 'tcp6' |awk '{print $4}' |sort -u
# CentOS6系统用这个,CentOS7用上面那个。
netstat -anp |grep 'ESTABLISHED' |grep 'python' |grep 'tcp' | grep '::ffff:' |awk '{print $4}' |sort -u
# 显示当前链接服务器的用户的SS端口数量
netstat -anp |grep 'ESTABLISHED' |grep 'python' |grep 'tcp6' |awk '{print $4}' |sort -u |wc -l
# CentOS6系统用这个,CentOS7用上面那个。
netstat -anp |grep 'ESTABLISHED' |grep 'python' |grep 'tcp' | grep '::ffff:' |awk '{print $4}' |sort -u |wc -l

# 显示当前所有链接SS的用户IP
netstat -anp |grep 'ESTABLISHED' |grep 'python' |grep 'tcp6' |awk '{print $5}' |awk -F ":" '{print $1}' |sort -u
# 显示当前所有链接SS的用户IP数量
netstat -anp |grep 'ESTABLISHED' |grep 'python' |grep 'tcp6' |awk '{print $5}' |awk -F ":" '{print $1}' |sort -u |wc -l

第一条 命令是 把所有的进出链接都列出来,Shadowsocks客户端在链接服务器后 本地的IP和端口“进” 的,服务器在接收到Shadowsocks客户端的数据后会去访问指定的网站或IP,而这是 “出”的。这一条命令就是把这 一进一出 的信息都列出来,可以知道 客户端用户连接的是哪个 SS端口,还有客户 自身的IP和端口

第二条 命令是 仅显示链接服务器的用户的链接,也就是上面一段话中说的 “进”,这个命令不会吧服务器在访问的网站或IP给列出来,纯粹用来看 Shadowsocks用户的链接信息。

第三条 命令是 仅显示链接服务器的用户连接数量,有时候链接 当前服务器的 Shadowsocks用户很多,你只想知道有几个人链接,那就用这一条命令(这个链接数量不是准确的,具体看下面的注意说明)。

第四条 命令是 仅显示链接服务器的用户连接并写入到文件,有时候在ssh上面查看大量文本不是一个好主意,所以保存到某个目录,然后自己去用sftp下载下来看信息是个不错的选择。

第五条 命令是 显示当前链接服务器的用户的SS端口,这个命令会去除重复的,最后显示的只有 正在链接SS服务器的用户的SS端口。

第六条 命令是 显示当前链接服务器的用户的SS端口数量,这个就是显示 数量。

第七条 命令是 显示当前所有链接SS的用户IP,这个命令会去除重复的,最后显示的只有 正在链接SS服务器的用户的IP。

第八条 命令是 显示当前所有链接SS的用户IP数量,这个就是显示 数量。

注意:你经常会看到 用户IP一样但后面的端口不一样(1.1.1.1:2333、1.1.1.1:6666),那是因为他的SS客户端开了好几条TCP链接,所以一般情况下还是一个人在使用,但是也不排除路由器局域网情况下多个人同时使用,这时候也是这样显示的。

如果你想单独查看一个SS端口的链接数,那你可以看看下面几条命令。

netstat -anp |grep 'ESTABLISHED' |grep 'python' |grep 'tcp6' |grep VPS_IP:SS_Port
# 示例 netstat -anp |grep 'ESTABLISHED' |grep 'python' |grep 'tcp6' |grep 233.233.233.233:10000

netstat -anp |grep 'ESTABLISHED' |grep 'python' |grep 'tcp6' |grep VPS_IP:SS_Port |wc -l
# 示例 netstat -anp |grep 'ESTABLISHED' |grep 'python' |grep 'tcp6' |grep 233.233.233.233:10000 |wc -l

第一条是 列出 当前SS端口连接的链接数。比如:服务器IP是 233.233.233.233 ,然后你想要知道链接数的端口是 10000 ,那命令就是第二行的示例。

第二条是 显示 当前SS端口连接的链接数,这个只是显示有几个链接数。示例如上。

转载请超链接注明:逗比根据地 » Shadowsocks查看服务器上面的 用户连接数 方法
责任声明:本站一切资源仅用作交流学习,请勿用作商业或违法行为!如造成任何后果,本站概不负责!

赞 (42)or打赏
发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
(12)个小伙伴在吐槽
  1. 大佬, 有个问题没弄明白。 tcp6不是应该(只)显示ipv6么, 怎么ipv4也显示在tcp6里面。而且我发现tcp显示的source是服务器出战端口(访问youtbe啥的), tcp6显示的source才是(真正)入站端口, 也就是用户发起的到服务器连接。 这个咋回事?
    火神2018-02-28 10:40 回复
    • Linux 当一个程序监听ipv4+ipv6时,netstat 上面只会看到 tcp6 监听信息,而如果只监听 ipv4 则只会显示 tcp。
      其实目前我也没有深入搜索了解过为什么这样,只是用的时间长了知道会这样显示。。。。
      关于出站显示 tcp 可能是因为出站是通过 ipv4 访问的。
      Toyo2018-02-28 21:22 回复
  2. 您好,请问您给的代码怎么用在我的vps上呢?我是小白,也不知道该搜索什么,遂向您请教。
    MrZuker2017-11-21 23:34 回复
    • 使用SSH软件链接VPS,然后复制代码,粘贴进SSH软件,回车执行,文字描述我只能说这么多,再多的我也不清楚如何给你描述。另外,小白不是借口,不要左一句我是小白,右一句我是小白。
      Toyo2017-11-22 13:20 回复
  3. 一个用户只会有1个端口还是多个端口
    Chikage2016-11-18 17:05 回复
    • 文章里写的有
      注意:你经常会看到 IP一样但后面的端口不一样(1.1.1.1:2333、1.1.1.1:6666),那是因为他的SS客户端开了好几条TCP链接,所以一般情况下还是一个人在使用,但是也不排除路由器局域网情况下多个人同时使用,这时候也是这样显示的。
      Toyo2016-11-18 23:44 回复
  4. 请问怎样可以限制多个端口的连接数呢?
    lokext2016-08-18 00:21 回复
  5. 菜鸟正在学习,站在巨人肩膀能够快速成长
    cheapjr2016-08-03 20:57 回复
  6. 站长,如何限制 一个用户同时连接的设备数量?
    evi2016-07-14 09:48 回复
  7. 逗比能不能出个Linux教程?
    Matrix422016-07-13 16:42 回复
    • 这不是就linux教程?
      Toyo2016-07-13 18:47 回复