前端apache的缓存后面的application server的数据

注意, 本文只在Apache版本: 2.2.15 测试通过。

编辑 /etc/httpd/conf/httpd.conf , 确保以下内容存在并且没有被注释

LoadModule disk_cache_module modules/mod_disk_cache.so

接着在上述文件最后添加以下内容:

<IfModule mod_disk_cache.c>
   CacheRoot /tmp/cacheroot
   CacheEnable disk /images
   CacheDirLevels 5
   CacheDirLength 3
</IfModule>

创建存放 cache 的文件夹, 并将权限赋予apache用户, 注意:tmp的文件会在重启后清除

mkdir -p /tmp/cacheroot
chown apache:apache /tmp/cacheroot

重启apache

sudo ...
more ...

配置Apache服务器使用ssl连接

环境:

  • CentOS: 6.3

首先安装mod_ssl, open_ssh, 执行

sudo yum install mod_ssl openssl

用 OpenSSL 生成私有证书, 执行

openssl genrsa -out ca.key 1024

生成CSR文件, 执行

openssl req -new -key ca.key -out ca.csr

生成Cert文件

openssl x509 -req -days 3650 -in ca.csr -signkey ca.key -out ca.crt

拷贝文件到指定目录

sudo ...
more ...

Nginx正向代理设置

应用场景:

有时候,我们局域网中的服务器是不允许直接连到公网上面的, 所以要升级服务器或者安装软件的时候需要通过一个代理才能连接公网。

这里我们介绍怎么配置Nginx作为正向代理。 注意,此代理不支持https协议。

worker_processes  1;

events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;

    sendfile        on;
    keepalive_timeout  65;

    limit_conn_zone $binary_remote_addr zone=perip:10m;

    server {
        resolver 202.106.0.20;
        resolver_timeout 5s;
        listen       8088;

        limit_conn perip 10;
        limit_rate 20k;

        location / {
            proxy_pass $scheme://$host ...
more ...

Nginx安全加固

隐藏nginx的版本信息

如果版本信息直接跟在response中,攻击者就可以直接针对此版本的漏洞进行攻击

编辑/etc/nginx/nginx.conf, 在http段中添加

server_tokens off;

屏蔽某些IP

conf文件中http或server段添加

location / {
    ......
    allow 10.0.0.0/8;
    deny all;
}

禁止搜索机器人

编辑robots.txt文件, 内容如下

User-agent: *
Disallow: /

Nginx.conf设置

location = /robots.txt {
    alias /the_folder_of_robots_txt_file/robots.txt;
    add_header Cache-Control public;
    expires 30d;
    access_log off;
}

Nginx禁止自动跳转

比如说,folowing.com下面有几个子域名

  • www.folowing ...
more ...

Nginx Star SSL

StarSSL是免费的好用的认证,但最新的firefox对其颁发的证书不能直接认证, 必须使用chain.

ssl  on;
ssl_certificate  /etc/nginx/ssl/security.crt;
ssl_certificate_key  /etc/nginx/ssl/security.key;

使用以下命令后,nginx就可以chain了

curl http://www.startssl.com/certs/sub.class1.server.ca.pem >>security.crt
curl http://www.startssl.com/certs/ca.pem >>security.crt
more ...

Ubuntu如何配置dnsmasq

ubuntu版本: 12.04

安装

sudo apt-get install dnsmasq

配置

修改配置文件

listen-address=127.0.0.1,10.xxx.xxx.xxx
bind-interfaces

修改/etc/hosts

10.xxx.xxx.xxx      myself             dns.folowing.com
10.yyy.yyy.yyy      prd01              prd01.folowing.com
10.zzz.zzz.zzz      prd02              prd02.folowing.com
......

修改/etc/openvpn ...

more ...

Ubuntu Nginx 使用ssl

创建认证文件和公有密钥的文件夹

创建存放的文件夹

sudo mkdir /etc/nginx/ssl
cd /etc/nginx/ssl

创建Server Key and Certificate Signing Request

sudo openssl genrsa -des3 -out server.key 1024
sudo openssl req -new -key server.key -out server.csr

移除密码

如果server.key有密码,每次重启的时候都得手动输入密码, 所以要去掉

sudo cp server.key server.key.org
sudo openssl rsa ...
more ...

Ubuntu 配置OpenVPN

环境:

  • 系统版本 12.04
  • OpenVPN 2.2.1

服务器安装

sudo apt-get install openvpn

生成Public key Infrastructure

sudo mkdir /etc/openvpn/easy-rsa/
sudo cp -r /usr/share/doc/openvpn/examples/easy-rsa/2.0/* /etc/openvpn/easy-rsa/

编辑/etc/openvpn/easy-rsa/vars

export KEY_COUNTRY="CN"
export KEY_PROVINCE="BJ"
export KEY_CITY="Beijing"
export ...
more ...

搭建自己的Pip镜像

服务器端

操作系统: ubuntu 12.04

运行以下命令

sudo pip install pip2pi
mkdir /home/pypi
cd /home/pypi
mkdir packages
vi requirement.txt # 添加你需要更新的包
pip2tgz packages/ -r requirements.txt
dir2pi packages/

修改 nginx conf

server {
    listen       80;
    server_name  pypi.folowing.com;

    location / {
        root   /home/pypi/packages;
    }
}

客户端

编辑: .pip/pip.conf

[global ...
more ...

Ubuntu下Postfix server 搭建

环境:

  • Ubuntu : 12.04.1
  • Postfix : 2.9.3

安装命令:

sudo apt-get install postfix

选择No configuation, 安装完后会自动创建postfix用户和组,

sudo cp /usr/share/postfix/main.cf.debian /etc/postfix/main.cf

让postfix实用SASL (saslauthd)做用户验证

编辑/etc/postfix/sasl/smtpd.conf

pwcheck_method: saslauthd
mech_list: plain login

生成ca key

touch smtpd.key
chmod 600 ...
more ...