All Projects → Elder-Wu → SSServerDeviceLimit

Elder-Wu / SSServerDeviceLimit

Licence: other
可以让Shadowsocks服务器限制某个端口的设备连接数,防止有人恶意分享ss账号

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to SSServerDeviceLimit

ssr dockerfile
dockerfile for ssr.
Stars: ✭ 13 (-27.78%)
Mutual labels:  shadowsocks, shadowsocksr, shadowsocks-server
Shadowsocks install
Auto Install Shadowsocks Server for CentOS/Debian/Ubuntu
Stars: ✭ 7,516 (+41655.56%)
Mutual labels:  shadowsocks, shadowsocksr, shadowsocks-server
R2S
基于 RubikWrt 的 NanoPi R2S 固件,每日自动更新插件和内核
Stars: ✭ 96 (+433.33%)
Mutual labels:  shadowsocks, shadowsocksr
ssr-decode
一个解析Shadowsocks/ShadowsocksR/V2Ray订阅链接(http/ss/ssr/vmess)并生成json配置文件的百行shell小脚本
Stars: ✭ 53 (+194.44%)
Mutual labels:  shadowsocks, shadowsocksr
SS-Rule-Snippet
搜集、整理、维护 Surge / Quantumult (X) / Shadowrocket / Surfboard / clash (Premium) 实用规则。
Stars: ✭ 8,975 (+49761.11%)
Mutual labels:  shadowsocks, shadowsocksr
Freedom
一个小白对于科学上网的一些切身感受的整理,自己捋思路,同时也为方便他人。发现错误的地方欢迎斧正。顺便也会不断整理一些实用资源及工具。
Stars: ✭ 236 (+1211.11%)
Mutual labels:  shadowsocks, shadowsocksr
Shadowsocksr
ShadowsocksR(SSR) for Go library
Stars: ✭ 246 (+1266.67%)
Mutual labels:  shadowsocks, shadowsocksr
ssrrmu
ShadowsocksRR (shadowsocksr/ssr) multi-user and single-user install scripts
Stars: ✭ 56 (+211.11%)
Mutual labels:  shadowsocks, shadowsocksr
Ssssrv2rayclashtrojan
科学上网,ss, ssr, v2ray, trojan, clash, clashr,翻墙机场推荐
Stars: ✭ 186 (+933.33%)
Mutual labels:  shadowsocks, shadowsocksr
ssr2ss subscribe
转换机场提供的 SSR 订阅到 SS 订阅(目前 Quantumult 和 Shadowrocket 均支持 SS 订阅)
Stars: ✭ 23 (+27.78%)
Mutual labels:  shadowsocks, shadowsocksr
Free-Node-Merge
合并网络上的免费节点 | Merge Free ss, ssr, v2ray nodes
Stars: ✭ 154 (+755.56%)
Mutual labels:  shadowsocks, shadowsocksr
Get Free Ss
【停止维护】Node爬虫学习:自动爬取网络上公开的免费 SS\SSR 账号密码,并替换掉软件中旧的账号。
Stars: ✭ 224 (+1144.44%)
Mutual labels:  shadowsocks, shadowsocksr
Proxysu
Xray,V2ray,Trojan,NaiveProxy, Trojan-Go, ShadowsocksR(SSR),Shadowsocks-libev及相关插件,MTProto+TLS 一键安装工具,windows下用(一键科学上网)
Stars: ✭ 3,309 (+18283.33%)
Mutual labels:  shadowsocks, shadowsocksr
SubCrawler
节点爬取,筛选, google ping,支持Clash,base64订阅解析,生成可用的ss, ssr, v2ray, trojan,vless节点. (若不进行二次开发,请不要fork)
Stars: ✭ 686 (+3711.11%)
Mutual labels:  shadowsocks, shadowsocksr
Awesome Vpn
Free VPN/proxy,server,account,link list.,实时更新免费的代理,科学上网,翻墙,梯子,服务器,客户端,账号
Stars: ✭ 2,691 (+14850%)
Mutual labels:  shadowsocks, shadowsocksr
v2ray.vpn
V2free for android, a V2ray and Shadowsocks client with many builtin free servers.
Stars: ✭ 277 (+1438.89%)
Mutual labels:  shadowsocks, shadowsocks-server
tcp-multiplexer
A TCP service multiplexer in Python
Stars: ✭ 32 (+77.78%)
Mutual labels:  shadowsocks, shadowsocksr
Stairspeedtest Reborn
Proxy performance batch tester based on Shadowsocks(R) and V2Ray
Stars: ✭ 2,501 (+13794.44%)
Mutual labels:  shadowsocks, shadowsocksr
Shadowsocksr Native
翻墙 从容穿越党国敏感日 ShadowsocksR (SSR) native implementation for all platforms, GFW terminator
Stars: ✭ 2,328 (+12833.33%)
Mutual labels:  shadowsocks, shadowsocksr
mian-fan-qiang
各大机场免翻墙地址搜集,不定期更新。欢迎收藏,转发。
Stars: ✭ 361 (+1905.56%)
Mutual labels:  shadowsocks, shadowsocksr

SSServerDeviceLimit

This tool only used for ss-server not ssr-server.
可以让你的SS服务器限制某个端口的设备连接数,防止有人恶意分享账号,亲测有效,不是SSR服务器!

原理:Linux中通过iptables进行端口和IP的过滤,俗称防火墙

iptables简明教程

iptables规则

运行截图

未使用状态 正常使用 设备连接数量达到极限 端口异常

使用方法

使用前提:你的Linux服务器已经安装了SS server端,还需要安装iptables

1.配置Shadowsocks服务

在/etc目录下创建文件shadowsocks.json,文件内容如下:

{
  "server":"0.0.0.0",
  "local_address": "127.0.0.1",
  "local_port":1080,
  "port_password":{
    "1111": "sfaewgsav",
    "2222": "sgervthss",
    "3333": "htehsdhst",
    "端口号": "密码",
    "端口号": "密码",
    "端口号": "密码",
    "端口号": "密码",
    "端口号": "密码"
  },
  "timeout":300,
  "method":"aes-256-cfb",
  "fast_open": false,
  "device_limit":{
    "1111":5,
    "端口号":限制的设备数量
  }
}

在port_password中配置多个端口号和对应的密码,端口号最好不要选用特殊端口,比如22(ssh),80(http),记住,这里的端口号一旦分配,就不要轻易删除。否则就要自己通过iptables来删除掉无用的规则

device_limit中填写需要限制的端口号和设备数量,上面写的意思就是1111端口号最多只能有5个设备同时登录,可以不写,默认就是1

需要注意的是,device_limit中填写的端口号必须出现在port_password中

2.重启Shadowsocks服务

配置开机启动,在/etc/rc.local中加入下面的内容
ssserver -c /etc/shadowsocks.json --user nobody -d restart

-c ss配置文件的路径,本例的路径是/etc/shadowsocks.json

--user 使用非root用户运行ss服务,可以确保服务器安全。这里是nobody用户

-d daemon运行模式,这里是restart命令,常用的还有start,stop等命令

3.配置Linux的crontab任务列表

先将本项目中的ssdevicelimit.py拷贝到本地,放到/etc目录下,与shadowsocks.json在同一个目录

编辑Linux中的crontab任务
crontab -e
输入如下内容
#解决crontab报错:service: commond not found,是因为环境变量的问题
PATH=/sbin:/bin:/usr/sbin:/usr/bin

#每天0点清空root用户的mail邮件
0 0 * * * rm -f /var/mail/root

#每分钟都更新一下ss的端口限制
* * * * * cd /etc/; python3.6 ssdevicelimit.py

必须使用python3.x版本,因为我的服务器上python3的环境变量是python3.6,所以上面我写成了python3.6,请根据你自己的python环境变量名来改

最后保存,然后你就等着那些恶意分享SS账号的人抱怨吧:

为什么账号不能用了,之前不是好好的吗,FUCK!!!

后续

  1. 以上操作都确保无误的话,想限制某个端口的设备数量,只要修改shadowsocks.json中的内容就可以了,然后重启ss服务就可以生效
  2. 通过 tail -n 100 /var/mail/root 查看当前各端口的使用情况,以及使用端口的设备IP
  3. 有其他问题请提issue
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].