首页
同乐工具集
文章打赏记录
关于
更多
友情链接
Search
1
【教程】百度网盘高速下载方法 可用 最新测试
19,660 阅读
2
免流混淆收集 免流大全
12,277 阅读
3
v2ray V2免流混淆 SSR 酸酸乳免流混淆
12,131 阅读
4
网页中显示CloudFlare(CF)节点信息
11,208 阅读
5
【停更公告】
10,878 阅读
小白
网站源码
软件收集
技术教程
WAW
资源分享
登录
Search
标签搜索
活动
教程
收集
源码
宝塔
bt
资源
Linux
php
WAW
广告
脚本
免费
公告
闲谈
分享
技术
免流
mysql
破解
网小白
累计撰写
214
篇文章
累计收到
59
条评论
首页
栏目
小白
网站源码
软件收集
技术教程
WAW
资源分享
页面
同乐工具集
文章打赏记录
关于
友情链接
搜索到
5
篇与
Linux
的结果
2019-05-23
LNMP环境开启pathinfo函数
默认情况下LNMP一键安装包中是没有启动pathinfo的,我们需要手工设置CONF文件才可以启动。具体的内容如下: 第一步、我们需要找到当前网站所在的conf文件(/usr/local/nginx/conf/vhost/对应的域名文件) ``` location ~ .*\.(php|php5)$ { try_files $uri =404; fastcgi_pass unix:/tmp/php-cgi.sock; fastcgi_index index.php; include fcgi.conf; } ``` 找到上面的文件 第二步、替换成下面的内容 ``` if (!-e $request_filename) { rewrite ^\/([^\.]*)$ /index.php/$1 last; break; } location ~ \.php { try_files $uri =404; fastcgi_pass unix:/tmp/php-cgi.sock; fastcgi_index index.php; include fcgi.conf; set $path_info ""; set $real_script_name $fastcgi_script_name; if ($fastcgi_script_name ~ "^(.+\.php)(/.+)$") { set $real_script_name $1; set $path_info $2; } fastcgi_param SCRIPT_FILENAME $document_root$real_script_name; fastcgi_param SCRIPT_NAME $real_script_name; fastcgi_param PATH_INFO $path_info; } ``` 这样2步就可以解决LNMP环境开启pathinfo模式支持特定的网站环境。
2019年05月23日
857 阅读
0 评论
0 点赞
2019-05-13
linux使用iptables 防御 SYN洪水攻击策略!
SYN Flood (SYN洪水) 是种典型的DoS (Denial of Service,拒绝服务) 攻击,属于DDos攻击的一种。遭受攻击后服务器TCP连接资源耗尽,最后停止响应正常的TCP连接请求。尽管这种攻击已经出现了十多年,但它的变种至今仍能看到。虽然能有效对抗SYN洪泛的技术已经存在,但是没有对于TCP实现的一个标准的补救方法出现。今天小编将详述这种攻击原理以及对抗SYN洪水的方法~ ![24b5349fb341d4a2085a4d9423cad44d.jpg][1] 攻击原理 正常的三次握手: 先发起一个 SYN=1 的包,并且带一个序列号( Seq ); 服务器收到这个包以后,将这个数据放入到一个队列中,这个队列叫 syn_table 。并且发送一个返回包,作为响应,这个返回包有自己的序列号( Seq ),以及一个 Ack , Ack 的值就是客户端发来的 Seq 值加一; 客户端收到返回信息以后,将服务器的 Seq 加一作为 Ack 又发给服务器; 服务器收到这第三个包,验证没问题以后,就将这个连接放入到 request_sock_queue,三次握手完成。 SYN Flood 主要是利用了TCP协议的三次握手的缺陷,在这个攻击中,Flood带有一系列的syn数据包,每个数据包都会导致服务端发送SYN-ACK响应,然后服务器等待SYN+ACK之后的第三次握手ACK,由于客户端是软件生成的虚拟IP,永远不会再发送ACK响应服务端,服务端会利用从传机制直到超时后删除,整个系统资源也会被队列积压消耗,导致服务器无法对正常的请求进行服务。 如何判断自己是否遭受 SYN 攻击? 检测SYN攻击非常的简单,当你在服务器上看到大量的半连接状态时,特别是源IP地址是随机的,基本上可以断定这是一次SYN攻击。我们使用系统自带的netstat 工具来检测SYN攻击: ``` # netstat -n -p TCP ``` 反馈如图 ![df4bcb329152c1936683ecebb27a9319.jpg][2] 防御 SYN Flood攻击 配置iptables规则 Iptables防火墙我们可以理解为Linux系统下的访问控制功能,我们可以利用Iptables来配置一些规则来防御这种攻击。强制SYN数据包检查,保证传入的tcp链接是SYN数据包,如果不是就丢弃。 ``` #iptables -A INPUT -p tcp --syn -m state --state NEW -j DROP ``` 强制检查碎片包,把带有传入片段的数据包丢弃。 ``` #iptables -A INPUT -f -j DROP ``` 丢弃格式错误的XMAS数据包。 ``` #iptables -A INPUT -p tcp --tcp-flags ALL ALL -j DROP ``` 丢弃格式错误的NULL数据包。 ``` #iptables -A INPUT -p tcp --tcp-flags ALL NONE -j DROP ``` 当Iptables配置完成后我们可以使用nmap命令对其验证 ``` # nmap -v -f FIREWALL IP # nmap -v -sX FIREWALL IP # nmap -v -sN FIREWALL IP ``` 例如: ![24e680389ee7aea976685b43a01514a2.jpg][3] 其他防御方式: 除此之外针对SYN攻击的几个环节,我们还可以使用以下处理方法: 方式1:减少SYN-ACK数据包的重发次数(默认是5次) ``` sysctl -w net.ipv4.tcp_synack_retries=3 sysctl -w net.ipv4.tcp_syn_retries=3 ``` 方式2:使用SYN Cookie技术 ``` sysctl -w net.ipv4.tcp_syncookies=1 ``` 方式3:增加backlog队列(默认是1024): ``` sysctl -w net.ipv4.tcp_max_syn_backlog=2048 ``` 方式4:限制SYN并发数: ``` iptables -A INPUT -p tcp --syn -m limit --limit 1/s -j ACCEPT --limit 1/s ``` [1]: https://amwxb.cn/usr/uploads/2019/05/1108055860.jpg [2]: https://amwxb.cn/usr/uploads/2019/05/517402761.jpg [3]: https://amwxb.cn/usr/uploads/2019/05/1385931249.jpg
2019年05月13日
916 阅读
0 评论
0 点赞
2019-05-01
V2Ray 一键安装脚本
要求:Ubuntu 16+ / Debian 8+ / CentOS 7+ 系统 推荐使用 Debian 9 系统,脚本会自动启用 BBR 优化。 备注:不推荐使用 Debian 8 系统,因为 Caddy 申请证书可能会出现一些莫名其妙的问题 使用 root 用户输入下面命令安装或卸载: bash <(curl -s -L https://git.io/v2ray.sh) 如果提示 curl: command not found ,那是因为你的 VPS 没装 Curl ubuntu/debian 系统安装 Curl 方法: apt-get update -y apt-get install curl -y centos 系统安装 Curl 方法: yum update -y yum install curl -y 安装完成后可用快捷命令来管理: 一些常用命令整理: v2ray #管理 V2Ray v2ray tg #配置 TG 专用代理 v2ray info #查看 V2Ray 配置信息 v2ray config #修改 V2Ray 配置 v2ray link #生成 V2Ray 配置文件链接 v2ray infolink #生成 V2Ray 配置信息链接 v2ray qr #生成 V2Ray 配置二维码链接 v2ray ss #修改 Shadowsocks 配置 v2ray ssinfo #查看 Shadowsocks 配置信息 v2ray ssqr #生成 Shadowsocks 配置二维码链接 v2ray status #查看 V2Ray 运行状态 v2ray start #启动 V2Ray v2ray stop #停止 V2Ray v2ray restart #重启 V2Ray v2ray log #查看 V2Ray 运行日志 v2ray update #更新 V2Ray v2ray update.sh #更新 V2Ray 管理脚本 v2ray uninstall #卸载 V2Ray
2019年05月01日
1,255 阅读
0 评论
0 点赞
2019-04-22
服务器控制面板榜单
面板名称 授权 语言 环境 SSL 整合 难度 评分 Kangle 免费 中英 LAMP 手动 不能 简单 9.2 OneinStack 免费 Shell LNMP LAMP 一键 不能 一般 9.1 LNMP.org 免费 Shell LNMP LAMP 一键 不能 一般 9.0 VestaCP 免费 中英 LNMP LAMP 一键 支持 一般 8.5 宝塔面板 免费 中文 LNMP LAMP 一键 手动 容易 8.4 CWP 免费 英文 LAMP 一键 不能 容易 8.3 ISPConfig 免费 中英 LNMP LAMP 手动 支持 较难 8.2 WDCP 免费 中文 LNMP LAMP 一键 不能 容易 8.2 cyberpanel 免费 中文 LiteSpeed 一键 支持 一般 8.1 Ajenti 面板 免费 中文 LNMP LAMP 一键 支持 较难 8.1 AppNode 免费 中文 LNMP LAMP 一键 支持 容易 8.0 Caddy Web 免费 英文 Caddy 一键 不能 容易 8.0 Kloxo-MR面板 免费 中英 LNMP LAMP 一键 支持 较难 7.9 aaPanel面板 免费 中英 LNMP LAMP 一键 不能 容易 7.9 Virtualmin 免费 中英 LNMP LAMP 一键 支持 较难 7.8 LAMP一键包 免费 中文 LAMP 一键 不能 容易 7.8 SolusVM 付费 英文 独服 手动 支持 很难 付费 AMH 面板 付费 中文 LNMP LAMP 一键 支持 容易 付费
2019年04月22日
1,029 阅读
0 评论
0 点赞
2019-03-17
mysql 5.6 优化参数减少内存占用
mysql 5.6默认启动占用内存400多M,如果是vps等小内存应用,mysql内存占用率明显偏高,将会导致崩溃,mysql会自动停止。 编辑/etc/my.cnf文件在[mysqld]下增加或修改如下参数 performance_schema_max_table_instances = 200 table_definition_cache = 100 table_open_cache = 100 这个三个参数,调低值后内存能明显减小,现在mysql使用内存约60MB左右,就大大降低默认使用的内存。 进一步调整参数 innodb_buffer_pool_size=2M 这个三个参数可以调小。 再进一步调整: mysql 5.6默认启用performance_schema,占用很多内存,可以禁用。 完整配置文件如下,内存占用到22M 我的mysql配置如下,如果你使用的centos6 64位,并且是yum安装的(一键脚本)可以自己按照如下照抄,我的是centos6 64位系统 先ssh登录服务器或VPS,执行 命令: vi /etc/my.cnf # For advice on how to change settings please see # http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html [mysqld] # # Remove leading # and set to the amount of RAM for the most important data # cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%. # innodb_buffer_pool_size = 128M # # Remove leading # to turn on a very important data integrity option: logging # changes to the binary log between backups. # log_bin # # Remove leading # to set options mainly useful for reporting servers. # The server defaults are faster for transactions and fast SELECTs. # Adjust sizes as needed, experiment to find the optimal values. # join_buffer_size = 128M # sort_buffer_size = 2M # read_rnd_buffer_size = 2M datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock #symbolic-links=0 skip-external-locking key_buffer_size = 8M max_allowed_packet = 1M table_open_cache = 4 sort_buffer_size = 64K read_buffer_size = 256K read_rnd_buffer_size = 256K net_buffer_length = 2K thread_stack = 240K #innodb_use_native_aio = 0 innodb_buffer_pool_size=2M performance_schema_max_table_instances=50 table_definition_cache=50 table_open_cache=32 max_connections=50 max_user_connections=35 wait_timeout=10 interactive_timeout=15 long_query_time=5 # Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0 # Recommended in standard MySQL setup sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES [mysqld_safe] log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid 默认值如下: performance_schema_max_table_instances 12500 table_definition_cache 1400 table_open_cache 2000 参数含义 performance_schema_max_table_instance The maximum number of instrumented table objects. table_definition_cache The number of table definitions (from .frm files) that can be stored in the definition cache table_open_cache The number of open tables for all threads 翻译: 已检测到的最大表对象数。 Table_definition_cache 可以存储在已定义的缓存table_open_cache中的表定义(来自.frm文件)的数量 所有线程的打开表数
2019年03月17日
1,015 阅读
0 评论
0 点赞