Category: LINUX

如何通过BASH命令把频繁访问服务器的IP找出来?

不知不觉建了好多网站, 也维护多个VPS服务器好多年了, 经常会碰到服务器被多种不良爬虫攻击, 不管是否恶意, 每次并发访问大的时候, 服务器的CPU使用率就飙升. 这时候我一般都会分析APACHE日志来找出在同一时间并发访问的IP. 然后找到IP后就很简单了, 通过CLOUDFLARE的防火墙添加一条IP规则永久禁止该IP的访问. CLOUDFLARE是个很不错的保护, 因为你服务器的IP地址永远不会被泄露, 而CLOUDFLARE会在你的服务器和访问者之间过滤掉恶意的访问. 通过在LINUX下BASH的几个命令, cat, awk, sort, uniq, head 可以用管道把这几个命令用起来, 分析APACHE的日志脚本, 找出访问最多的几个IP地址. cat access.log | awk '{print $1}' | sort …

使用AWK来估计您下次出块还需要多久? (SteemIt)

上次我们用了一个LINUX命令AWK 结合管道来显示STEEMIT每次出块的间隔和时间: docker logs | grep "Generated" | awk '{cur=substr($8,2);if (NR>1){print "blocks=",cur-prev," hours=",(cur-prev)*3/3600}prev=cur;}' 今天我们稍微修改一下, 这样就能显示每次出块的时间, 还有距离上次的块数和小时数. 并且在最后显示距离下次出块大约需要多少时间(这是根据你最近一次出块需要时间和已经过去多久计算而得的) 当然, 你需要安装 gawk, 这是awk 的GNU版本, 安装(sudo apt-get install gawk)后 命令awk则回通常被链接到 gawk 完整的命令如下: …

使用AWK来看见证人生成块的速度

每次见证人出块, 媳妇总我说 “又生了”. 每次出块我总会去算一下离上次出块多少时间, 这是可以通过当前块数和上次出块数算出来的. 首先, 我们可以通过 docker logs 来显示很多很多的记录: 有一个脚本 ./run.sh logs是显示最近几条记录 (tail) 我们可以通过管道 grep “Generated” 列出出块时候的记录. 然后我们就可以通过AWK来处理文本了, 比如 $8 返回第8列, 我们就可以算出每次出块的间隔, 然后已知每3秒STEEM产生一个块, 这样我们就知道时间了. NR 表示行号, substr($8, 2) …

在Windows下最佳的Linux开发环境

很多人都是习惯于用WINDOWS, 或者说离不开WINDOWS 操作系统. 有时候程序员又想同时开发LINUX相关的软件, 这就比较麻烦: 有时候需要把本地的数据传到远程或者从远程下载数据. 之前有过 cygwin, 但是这个是相对不成熟的环境, 在这个环境里用 gcc 编译出来的二进制代码执行效率要低的多, 而且生成的也是 WIN32 PE可执行格式. 现在好了, WINDOWS 10 和 UBUNTU 合作, 提供了一个 The Ubuntu Sub System, 这个可不是简单的环境模拟, 这个是真正的UBUNTU 内核内嵌. …

怎么样安全的清空主机服务器空间?

很多朋友都有自己的VPS主机, 如果想取消销毁主机的时候, 可以采用以下二种方法来销毁主机. 虽然很多云主机可以让你很方便的一键销毁主机, 但是实际上你不清楚你的宝贵数据有没有可能被找回, 理论上可能, 这种可能性很小很小. 因为我们并不清楚云主机商在销毁的时候有没有真正去把硬盘的数据清空了. 像我有点强迫症的, 我就是不希望我的一些数据(比如啥爱情动作片)泄露了. rm -fr / LINUX上的这个命令: # sudo rm -rf / 就是用于删除根目录下所有文件和文件夹, 并且包括子文件夹和文件 (-r), -f 表示强制不提醒. 这个命令如果用 root 用户或者 sudo权限执行的话还是威力很巨大的. 它会默默的开始疯狂的删除你系统里的所有文件, …

怎样查看服务器响应时间?

服务器响应时间 (Server Response Time) 就是 服务器处理请求之前所需要等待的时间. 当然是越短越好, 越短表示服务器响应快 速度快. 响应时间长有可能是大量并发访问造成服务器资源几乎用完 (D-DOS攻击). 在LINUX/MAC下可以通过以下命令行(记得替换掉网址)来返回这个响应时间: curl -o /dev/null -s -w %{time_total}\\n https://justyy.com 这个会返回一个时间(单位秒), 比如: 0.01 如果超过1秒 就得好好检查一下服务器的配置了 该优化优化 该升级升级. Windows 版本的 cURL …

通过 MySQLTuner 来检查数据库配置

如果自己折腾 VPS 那很有可能得自己配置 MYSQL 数据库. /etc/mysql/my.cnf 则是MYSQL的配置参数文件, 外行人搞不太懂里面的参数 而且有些参数组合可能有问题 但并不是马上看出来. 这下好了, 有一个开源的项目(用Perl语言写的) – MySQLTuner – 网址是: http://mysqltuner.com/ 简单来说 就是一个 PERL 脚本 运行它 它会检查你MYSQL数据库的状态和一些配置情况. 下载并安装 wget http://mysqltuner.pl/ -O mysqltuner.pl wget …