2014年3月4日星期二

×÷Mini Linux

本邮件内容由第三方提供,如果您不想继续收到该邮件,可 点此退订
×÷Mini Linux  阅读原文»

图解制作Mini Linux系统

废话不多说,先上图

wKioL1MUfpWz_B3CAAj-QPtptgU018.jpg

说明1:在一个Linux宿主机系统上,通过以上步骤,可以制作一个微小的Linux系统(可以放置在U盘中等),然后在其它的主机(虚拟机或者物理机)上运行,以实现最小化定制系统的目的。

说明2:上图中黑色部分是主要流程,蓝色部分是详细流程,棕色部分是注释说明等

对于上图中几点细节的详解:

阶段 说明
目标磁盘分区格式化挂载 目标磁盘是/dev/sdb,大小为1G,分区sdb1:100M,sdb2:500M即可
安装grub至目标磁盘
复制内核和initrd文件
VERSION是内核版本,如2.6.32-358.el6.x86_64
创建目标主机的根文件系统
移植常用命令

移植常用命令的脚本可参考http://pan.baidu.com/s/1ntNSQJR

在移植后的bash程序所在的目录下创建sh软链接

为grub提供配置文件
grub配置文件详细说明见博文"图解Linux系统启动流程"
创建sbin/init脚本
init脚本可参考http://pan.baidu.com/s/1mgJlkhE

本文出自 "小小忍者" 博客,请务必保留此出处http://xxrenzhe.blog.51cto.com/4036116/1367040

squid proxy server�  阅读原文»

用户名:小酱瓜
文章数:20 评论数:0
访问量:1157无忧币:400博客积分:284:2 注册日期:2013-03-30

squid proxy server简单应用

一、简介

Squid Cache(简称为Squid)是HTTP代理服务器软件。Squid用途广泛的,可以作为缓存服务器,可以过滤流量帮助网络安全,也可以作为代理服务器链中的一环,向上级代理转发数据或直接连接互联网。

二、功能

1. 正向代理

(1)传统代理

(2)透明代理

2. 反向代理

正向代理是指:一个位于客户端和目标服务器(比如:百度)之间的服务器,为了从目标服务器取得内容,客户端向代理发送一个请求并指定目标(目标服务器),然后代理向目标服务器转交请求并将获得的内容返回给客户端。

反向代理是指:以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。

三、简单部署

1. 传统代理

在传统代理模式下,客户端必须要一些配置才可以上网。

环境:

client:[root@oracle ~] IP:192.168.111.2(桥接VMnet1)

proxy:[root@mysql ~] IP:192.168.111.3(桥接VMnet1) 192.168.1.105(桥接宿主机网卡)

proxy server:

  [root@mysql ~]# yum install squid -y  [root@mysql ~]# vim /etc/sysctl.conf  net.ipv4.ip_forward = 1     #开启IP转发  [root@mysql ~]# sysctl -p   #立即生效  [root@mysql ~]# setenforce 0   #关闭selinux,不然会阻止服务启动  [root@mysql ~]# vim /etc/squid/squid.conf  http_port 192.168.111.3:3128  visible_hostname proxy    #其实还有一些其他参数,现在先不改,ACL默认是将本地地址所在的网段放行的  [root@mysql ~]# squid k parse  [root@mysql ~]# service squid start  [root@mysql ~]# vim /etc/sysconfig/iptables  -A INPUT -m state --state NEW -m tcp -p tcp --dport 3128 -j ACCEPT  [root@mysql ~]# service iptables restart   #在iptables上放行3128端口  

client:

wKiom1MS-MTSWqKMAAFJmK22CUQ786.jpg

wKiom1MS-MfihVGtAAFJHtPH7p0213.jpg

一些常用选项:

http_port x.x.x.x:3128 指定监听的IP地址和端口号

visible_hostname 只有不知道主机的主机名时,才需要设置,如下报错

minimum_object_size 0 KB 指定缓存对象的最小大小
maximum_object_size 4096 KB 指定缓存对象的最大大小,如:只有大小在0-4M的对象才会被缓存
cache_mem 64 MB 指定缓存的大小
cache_swap_low 90
cache_swap_high 95 缓存到达总容量的95%就开始清理缓存,清理到90%为止
cache_dir ufs /var/spool/squid 100 16 256 utf为缓存数据的格式

100为缓存目录分配的磁盘空间(MB)

16为缓存空间一级子目录的个数

256为缓存空间二级子目录的个数

ACL功能:

定义acl列表 acl列表名称 列表类型 列表内容 …

针对acl列表进行限制 http_access allow或deny列表名 …

常用指令: squid -k parse 检查语法

squid -z 初始化squid缓存目录

2. 透明代理

顾名思义,透明代理对客户端来说是透明的,客户端无需任何设置。

环境:

client:[root@oracle ~] IP:192.168.111.2(桥接VMnet1)

proxy:[root@mysql ~] IP:192.168.111.3(桥接VMnet1) 192.168.1.105(桥接宿主机网卡)

  [root@mysql squid]# vim /etc/squid/squid.conf  http_port 192.168.111.3:3128 transparent   #transparent关键字  [root@mysql squid]# iptables -t nat -I PREROUTING -i eth0 -s 192.168.111.0/24 -p tcp --dport 80 -j REDIRECT --to-ports 3128  #将从eth0口进来的192.168.111.0/24网段的目标端口为80的重定向3128端口  

我们都知道,需要上网还需要DNS,DNS是TCP和UDP的53端口,我们这里的DNS请求发到了公网DNS服务器上(如8.8.8.8),因为我实验的实验的机器是两台内网机器,所以回来的包给了我们的外网防火墙,防火墙根本不知道192.168.111.0网段在哪里,因为192.168.111.0网段是我的两台实验PC私有的,这里就有DNS的问题,解决的办法有3种:

1. 外网防火墙指一条静态路由到192.168.111.0网段的发给192.168.1.105

2. 内网架设一台可以上网的DNS服务器,也可将代理服务器配置为DNS服务器

3. 代理服务器上做NAT,我们这里就是使用第三种方法

  [root@mysql ~]# iptables -t nat -A POSTROUTING -s 192.168.111.0/24 -o eth1 -j SNAT --to-source 192.168.1.105  

3. 反向代理

环境:

http server:[root@web ~]# IP:192.168.3.91(VMnet1)

squid server:[root@node2 ~]# IP:192.168.3.96(VMnet1) 192.168.2.97

Client:192.168.2.88

squid server:

  [root@node2 ~]# vim /etc/squid/squid.conf  http_port 192.168.2.97:80 vhost vport  cache_peer 192.168.3.91 parent 80 0 originserver weight=1 max-conn=30  visible_hostname node2  #cache_peer Web服务器地址 服务器类型 http端口 icp端口 [可选项]  

监听端口改为80是为了对应于标准web端口,便于用户使用cache_peer配置项可以用于指定真正的Web服务器的位置。其中,服务器类型对应到目标主机的缓存级别,上游Web主机一般使用"parent"(父服务器);icp端口用于连接相邻的ICP(Internet Cache Protocol)缓存服务器(通常为另一台Squid主机),如果没有,则使用0;可选项是提供缓存时的一些附件参数,例如"originserver"表示该服务器作为提供Web服务的原始主机,"weight=n"指定服务器的优先权重,n为整数,数字越大优先级越高(缺省为1);"max-conn=n"指定反向代理主机到该web服务器的最大连接数。

本文出自 "My favorite technology" 博客,请务必保留此出处http://svenman.blog.51cto.com/6867097/1367038

没有评论:

发表评论