共计 3595 个字符,预计需要花费 9 分钟才能阅读完成。
Tcp wrappers:Transmission Control Protocol (TCP) Wrappers 为由 inetd 生成的服务提供了增强的安全性。Tcp wrappers 是一种对使用 /etc/inetd.sec 的替换方法。TCP Wrappers 提供防止主机名和主机地址欺骗的保护。欺骗是一种伪装成有效用户或主机以获得对系统进行未经授权的访问的方法。
1、重新编译 Nginx
- [root@ipython nginx–1.6.1]# tar zxf ../ngx_tcpwrappers.tar.gz –C ./
- [root@ipython nginx–1.6.1]#./configure —prefix=/software/nginx —user=nginx —group=nginx —with–http_stub_status_module —with–http_ssl_module —with–http_realip_module —with–http_gzip_static_module —with–google_perftools_module —with–debug —http–client–body–temp–path=/var/tmp/nginx/client —http–proxy–temp–path=/var/tmp/nginx/proxy —http–fastcgi–temp–path=/var/tmp/nginx/fastcgi —http–uwsgi–temp–path=/var/tmp/nginx/uwsgi —http–scgi–temp–path=/var/tmp/nginx/scgi —with–pcre=/root/pcre–8.35—with–openssl=/root/openssl–1.0.1i—with–zlib=/root/zlib–1.2.8—add–module=./ngx_tcpwrappers
- [root@ipython nginx–1.6.1]# sed –i s‘#CFLAGS = -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror#CFLAGS = -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -g#’ objs/Makefile
- #### 不要 make install 哦,编译好即可 ####
- [root@ipython nginx–1.6.1]# make
2、完成升级,以及模块的使用,Nginx 还是很奇特的哦~~
- #### 备份可执行文件,复制新的文件 ####
- [root@ipython nginx–1.6.1]# mv /software/nginx/sbin/nginx /software/nginx/conf/@nginx
- [root@ipython nginx–1.6.1]# cp objs/nginx /software/nginx/sbin/
- #### 测试新版本的 Nginx####
- [root@ipython nginx–1.6.1]#/software/nginx/sbin/nginx –t
- nginx: the configuration file /software/nginx/conf/nginx.conf syntax is ok
- nginx: configuration file /software/nginx/conf/nginx.conf test is successful
- ### 此时没有加入 Tcp_wrappers 的配置 测试下访问 ###
- [root@ipython openssl–1.0.1i]# curl –I http://www.ipython.me
- HTTP/1.1200 OK
- Server: nginx/1.6.1
- Date:Mon,11Aug201423:08:08 GMT
- Content–Type: text/html
- Content–Length:612
- Last–Modified:Mon,11Aug201422:45:25 GMT
- Connection: keep–alive
- ETag:“53e94785-264”
- Accept–Ranges: bytes
- ### 平滑升级 ###
- [root@ipython nginx–1.6.1]# make upgrade
- ## 测试模块,拒绝 1.1.1.30 的 Nginx 请求 ## ## 在 http 块里加入如下配置 ##
- tcpwrappers on;
- tcpwrappers_daemon nginx;
- tcpwrappers_thorough off;
- ##hosts.deny 如下 ##
- [root@ipython nginx–1.6.1]# awk ‘!/^#/’/etc/hosts.deny
- nginx:1.1.1.30
- ## 重新读取 Nginx 配置文件 ##
- [root@ipython nginx–1.6.1]#/software/nginx/sbin/nginx –s reload
- ### 此时访问 就是 403 了 ###
- [root@itchenyi ~]# curl –I http://www.ipython.me
- HTTP/1.1403Forbidden
- Server: nginx/1.6.1
- Date:Mon,11Aug201423:12:47 GMT
- Content–Type: text/html
- Content–Length:168
- Connection: keep–alive
3、Tcp_warppers 模块指令
- ###ngx_Tcp_wrappers 配置指令 ###
- 1、tcpwrappers
- 语法: tcpwrappers [on|off]
- 默认值: tcpwrappers off
- 作用域: http, server, location, limit_except
- 描述 : 模块的开关,开启则使用 TCP Wrappers 进行访问控制,关闭以避免浪费性能
- 2、tcpwrappers_daemon
- 语法: tcpwrappers_daemon name
- 默认值: tcpwrappers_daemon nginx
- 作用域: http, server, location, limit_except
- 描述 : 该名字的定义用于在 /etc/hosts.[allow|deny]识别
- 3、tcpwrappers_thorough
- 语法: tcpwrappers_thorough [on|off]
- 默认值: tcpwrappers_thorough off
- 作用域: http, server, location, limit_except
- 描述 : 基于 hosts.ctl 以检查使用 IP 地址、用户名、反向 DNS 解析,模块的开发者也未提供详细的使用说明
————————————– 分割线 ————————————–
CentOS 6.2 实战部署 Nginx+MySQL+PHP http://www.linuxidc.com/Linux/2013-09/90020.htm
使用 Nginx 搭建 WEB 服务器 http://www.linuxidc.com/Linux/2013-09/89768.htm
搭建基于 Linux6.3+Nginx1.2+PHP5+MySQL5.5 的 Web 服务器全过程 http://www.linuxidc.com/Linux/2013-09/89692.htm
CentOS 6.3 下 Nginx 性能调优 http://www.linuxidc.com/Linux/2013-09/89656.htm
CentOS 6.3 下配置 Nginx 加载 ngx_pagespeed 模块 http://www.linuxidc.com/Linux/2013-09/89657.htm
CentOS 6.4 安装配置 Nginx+Pcre+php-fpm http://www.linuxidc.com/Linux/2013-08/88984.htm
Nginx 安装配置使用详细笔记 http://www.linuxidc.com/Linux/2014-07/104499.htm
Nginx 日志过滤 使用 ngx_log_if 不记录特定日志 http://www.linuxidc.com/Linux/2014-07/104686.htm
————————————– 分割线 ————————————–
Nginx 的详细介绍:请点这里
Nginx 的下载地址:请点这里
来自:http://www.ipython.me/centos/rebuild-nginx-support-tcp_wrappers.html 作者:IT 辰逸