服务器运维

利用openresty+lua+redis 实现封杀频繁恶意访问IP地址

      Nginx来限制访问控制的方法有多种,nginx主要有2个模块控制,但是那些不支持自定义,非常死,在大多数场景下并不实用。今天分享一个:利用openresty+lua+redis 实现封杀频繁恶意访问IP地址,当然这个方式也是有弊端的,那就是不断试用代理 IP之类的,但是用户还是有的,起码提高了恶意的成本。

      本人最近已经完全抛弃了淘宝的Tengine,原生态的nginx,已经换为春哥的 openresty,特别想说的一点就是淘宝的 low 逼货,感觉一堆问题,尼玛,可能和他缘分不够吧,哈哈,于是,换到春哥的 openresty。喜欢春哥的 openresty 的最重要的原因,不外乎openresty打包了 nginx 的时候,集成了很多的有用的扩展,特别是 lua,一个小巧的编程语言,各种爽歪歪。本文就是:openresty最新稳定版本+lua Lua 5.1.4+redis最新稳定版本 

     如果你是原生态的 nginx,那你就自己安装 lua 和 nginx 的扩展吧,或者直接安装 openresty so easy。

先在 http 中加载lua 包和 lua 的 c 包

lua_package_path "/usr/local/openresty/lualib/?.lua;;";

lua_package_cpath "/usr/local/openresty/lualib/?.so;;";

1.png - 大小: 85.62 KB - 尺寸: 934 x 482 - 点击打开新窗口浏览全图

» 阅读全文

关键词: lua , openresty , redis

Linux平台监控工具munin安装笔记

munin其实很早就听过了,但是我基本上都使用 : monitorix :http://monitorix.jincon.com/ ,以及NMON:http://www.jincon.com/archives/288/  ,但是听说munin还不错,支持各类插件,于是安装了下

1、安装EPEL

rpm -Uvh  http://mirrors.opencas.cn/epel/6/x86_64/epel-release-6-8.noarch.rpm

vim /etc/yum.repos.d/dag.repo

输入:

[dag]

name=Dag RPM Repository for Red Hat Enterprise Linux

baseurl=http://apt.sw.be/redhat/el$releasever/en/$basearch/dag

gpgcheck=1

gpgkey=http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt

enabled=0   // 这里建议设为,网上很多都写1,可能会导致 perl个别库出现冲突


2、安装munin服务端和munin-node客户端

yum install munin munin-node

如果不行,就 yum makecache

» 阅读全文

iTerm2让SSH自动输入免密码登录远程Linux服务器

iTerm2 是我最喜欢的远程连接工具之一,但是以前不知道怎么实现免密码登录,每次都要输入各种服务器的

密码进行登录,有时候脑子不好,也不容易记住,所以,就想着怎么实现:

iTerm2让SSH免 输入密码登录远程Linux服务器

google 一番,其实很简单

vi ~/.ssh/whatevername

  set user 用户名
  set host ip地址
  set password 密码
  set timeout -1

  spawn ssh $user@$host
  expect "*assword:*"
  send "$password\r"
  interact
  expect eof
然后打开iTerm2的设置里,点开Profiles,左下角点+号新增一个配置文件,

然后在Genernal->Command下选择 Command,在输入框里填入 expect ~/.ssh/whatevername

以后就可以直接免密码登录啦,其实,这个不是真的免密码登录,只是自动免输入密码而已。

CentOS安装tmux的正确方法

centos官方软件源中没有 tmux ,如果不想使用EPEL源或者其他第三方源,就要自己编译安装。网上一些直接就 yum install xxx 让人着实郁闷,之前用 screen 较多。 tmux 感觉不错,可以试试,Centos 安装过程如下:

wget http://downloads.sourceforge.net/project/levent/libevent/libevent-2.0/libevent-2.0.21-stable.tar.gz

wget http://jaist.dl.sourceforge.net/project/tmux/tmux/tmux-2.0/tmux-2.0.tar.gz 

tar xzf libevent-2.0.21-stable.tar.gz

cd libevent-2.0.21-stable

./configure

make && make install

cd ..


» 阅读全文

关键词: 安装tmux , centos

同一服务器php2个版本php5.3和php5.4共存的搭建笔记

同一服务器php2个版本php5.3和php5.4共存的搭建方法

应一个兄弟帮忙的需求操作这个,兄弟的服务器,一个需要zend+php 5.4 ,一个网站需要 5.3,

之前兄弟直接买了2个服务器,感觉太浪费钱了,于是给他搭建了下,有了以下搭建笔记:

基本上是shell,各位自己试试,深夜了,写的有点乱,有问题留言,


php5.3 我就不管了,网上一堆教程,或者使用lnmp一键安装包各种爽歪歪,

主要说下php5.3和php5.4共存的搭建笔记,源码是 军哥的网站盗的,哈哈


#!/bin/bash

echo  "[+] Installing Php 5.4..."
wget http://soft.vpser.net/web/php/php-5.4.41.tar.gz

tar zxvf php-5.4.41.tar.gz php-5.4.41
cd php-5.4.41


» 阅读全文

关键词: php5.3和php5.4共存

Nginx 的 Echo 模块 —— echo-nginx-module安装教程

为什么要写这个,主要是一个小伙伴问我,如何调试nginx一些信息。于是想到春哥的这个echo模块。

1、下载echo 模块

wget --no-check-certificate https://github.com/openresty/echo-nginx-module/archive/v0.58.zip

2、复制到一个模块目录:
unzip v0.58.zip
新建目录:/usr/local/nginx/module  
cp -r echo-nginx-module-0.58/ /usr/local/nginx/module

» 阅读全文

关键词: echo 模块 , echo-nginx-module

parallels desktop克隆虚拟机导致网卡丢失不能联网的解决方法

parallels desktop 11(我的版本是这个)克隆虚拟机不能联网。根据自己的摸索,现在将方法写下来:

环境:

parallels desktop 11

centos6.5

parallels克隆虚拟机后,网卡系统会有问题,我们看下网卡硬件配置信息。

/etc/udev/rules.d/目录下有一个70-persistent-net.rules的文件记录网卡和对应的硬件信息。

可以查看下,发觉,原始的有eth0,克隆后的系统有eth0 和eth1 , 2个mac地址。而且2个 eth0 都是一样的,问题就在这里了,

解决方法很简单:

1、去除克隆后的eth0 ,并将eth1 改为 eth0,并删除原来的eth0 ,如图,上面的是克隆过的,下面的被克隆的文件

» 阅读全文

阿里云ubuntu12.04系统安装pptp的VPN小记录

最近要搞一个玩意,需要搭配一个VPN,于是就选择了简单的pptp,简单用用够了。

本文基于ubuntu12.04 其实,linux系统都差不多吧,起码我把centos的python脚本,简单改下就可以安装vpn了

具体安装步骤如下:

1、安装pptp

apt-get install pptpd

2、修改系统数据转发。

sysctl -p /etc/sysctl.conf

取消,net.ipv4.ip_forward=1的前面的分号,如果没有就加一下吧,随便都行,这个是开启数据转发。

然后:sysctl -p /etc/sysctl.conf   让系统加载下。

» 阅读全文

关键词: pptp安装 , 阿里云 , ubuntu