分类归档

服务器教程

服务器知识、操作系统教程、服务器常用软件等

FWQ
服务器教程
利用View特性来设置域名的多匹配查询
NS服务器最基本的任务就是响应域名的查询,返回该域名的地址数据.在DNS服务器中将一个 域名分成内部与外部做不同的View解析,可以提升安全性,以及分类应付不同区域的查询请求.   例如您的单位需要分成内部网和外部网,希望将同一个域名解析为不同的IP地址,以提高安全 防护的目的,或者应付不同业务的应用;又比如您需要将业务按地域来划分,打算在各个地区 分别设置各自的主机来处理访问请求(或者单机双线也适用),以图解决中国南北网(电信/网通) 互不相通所导致的速度差异之问题,希望将电信用户解释到由电信网络所提供的IP地址上,而 网通用户则解释到由网通网络所提供的IP地址上; 要实现将来自不同地域(用IP段来标识)的请求,自动引导到不同区域的主机,可以采用域名的 多解释方法来简单实现.在BIND9中有个新的view指令可以完成达到这个目的,方法就是设置 多个view段落来响应同一个域名的查询请求.只需要在每个view段落的match-clients项目中, 设置所需匹配的客户端IP段落,并且在每个段落中都设置该域名的区域数据,但不同的view则 指向不同的区域文件,然后在各自的区域文件中分别设置相应的区域内容,这样就可以达到按 请求者的IP段落来分别响应得出不同的查询结果了. 针对访问者不同的IP段,来解释主机域名的相应的IP地址,也可以轻易实现负载均衡或者化解 地区局限.举个例子来说,目前国内的网络因为种种原因,同外部网络的联机经常出现不稳定 的状况,造成从大陆内部无法访问外部,而外部也无法访问内部,尤其是导致电邮收发异常缓慢 甚至丢失反弹,非常令人头疼.而且很多时候造成这种不稳定的因素,还常常是源自于国家级 主干网络的非技术性故障,这就很难从主机供应商方面寻求解决问题的方案.如果要彻底解决 这个问题的话,那幺一个可能的方案就是按地域来划分业务.例如,分别在不同地区设置一台 主机(假设在北京设置一台主机,在广州设置一台主机,在香港设置另一台主机),然后就可设法 将大陆内部北方的客户引导到北京(网通)的主机,将南方的客户引导到广州(电信)的主机,而 将海外的客户则引导到香港的主机. BIND 9 DNS Views的配置示例 操作系统:Debian…
2024-11-19 阅读全文 →
FWQ
服务器教程
Haproxy中DNS的解析配置
默认情况下,Haproxy中的server的配置行是支持 HostName 的,并在 haproxy 中启动后,解析hostName得到IP地址,并将IP地址缓存到 haproxy 整个生命期,但这种情况会出现一个问题,如果后端服务器的hostName的 IP 更改了,无法更新已缓存的 IP 。此时haproxy就无法访问该后端服务器了,本文解决的就是这个问题。在Haproxy增加 DNS的解析设置,并在每次健康检测的时候,解析HostName,并验证。这样一旦后端服务器 HostName 对应的IP 更改了,也能在健康检测的周期内,更新缓存中的IP地址。   一、resolvers 语句语法 resolvers mydns nameserver dns1 192.168.80.1:53 nameserver dns2 192.168.80.1:53 resolve_retries 3…
2024-11-19 阅读全文 →
FWQ
服务器教程
Haproxy配置-新手入门篇
这是一篇学习笔记,之前看Haproxy的配置使用,真是一头雾水,有一些配置项,都不知道是做什么用的?更别说灵活配置了,所以这次下定决心,从官方的网站上从头开始看配置文档,因为官方的文档是英文,本人的英文比较烂,在看的过程中做了这个笔记。   官方的文档:http://cbonte.github.io/haproxy-dconv/1.7/configuration.html 一、配置优先级 在Haproxy中配置的参数主要有几下来源(按照优先级高到低排序): 命令行 global default listen、frontend、backend 二、时间格式 us : 微妙. 1 微妙 = 1/1000000 秒 ms : 毫秒. 1 毫秒 = 1/1000 秒. (默认的时间单位是:秒) s…
2024-11-19 阅读全文 →
FWQ
服务器教程
ssl、openssl、ca、pki、pem等的概念
最近在看haproxy,但其中涉及关于ssl的知识,之前也配置过https,也使用openssl,也生成过.pem证书。等没有理清他们之间的关系,本人将做系统的介绍。 在阅读本文前,强烈建议先阅读:数字证书原理 https 完整过程解析   一、SSL 和 TLS SSL:(Secure Socket Layer,安全套接字层),位于可靠的面向连接的网络层协议和应用层协议之间的一种协议层。SSL通过互相认证、使用数字签名确保完整性、使用加密确保私密性,以实现客户端和服务器之间的安全通讯。该协议由两层组成:SSL记录协议和SSL握手协议。 TLS:(Transport Layer Security,传输层安全协议),用于两个应用程序之间提供保密性和数据完整性。该协议由两层组成:TLS记录协议和TLS握手协议。 SSL是Netscape开发的专门用户保护Web通讯的,目前版本为3.0。最新版本的TLS 1.0是IETF(工程任务组)制定的一种新的协议,它建立在SSL 3.0协议规范之上,是SSL 3.0的后续版本。两者差别极小,可以理解为SSL 3.1,它是写入了RFC的。 ssl 和 tls的详细介绍参考: SSL与TLS的区别以及介绍 SSL协议详解 Tips 1:综上两篇文章的介绍:HTTPS是运行在SSL/TLS之上的HTTP协议,SSL/TLS运行在TCP之上。所有传输的内容都经过加密,加密采用对称加密,但对称加密的密钥用服务器方的证书进行了非对称加密。 二、PKI PKI…
2024-11-19 阅读全文 →
FWQ
服务器教程
SSL协议详解
最近在看《密码学与网络安全》相关的书籍,这篇文章主要详细介绍一下著名的网络安全协议SSL。在开始SSl介绍之前,先给大家介绍几个密码学的概念和相关的知识。 1、密码学的相关概念 密码学(cryptography):目的是通过将信息编码使其不可读,从而达到安全性。 明文(plain text):发送人、接受人和任何访问消息的人都能理解的消息。 密文(cipher text):明文消息经过某种编码后,得到密文消息。 加密(encryption):将明文消息变成密文消息。 解密(decryption):将密文消息变成明文消息。 算法:取一个输入文本,产生一个输出文本。 加密算法:发送方进行加密的算法。 解密算法:接收方进行解密的算法。 密钥(key):只有发送方和接收方理解的消息 对称密钥加密(Symmetric Key Cryptography):加密与解密使用相同密钥。 非对称密钥加密(Asymmetric Key Cryptography):加密与解密使用不同密钥。 2、相关的加密算法介绍 DES算法即数据加密标准,也称为数据加密算法。加密过程如下: 在SSL中会用到分组DES、三重DES算法等加密算法对数据进行加密。当然可以选用其他非DES加密算法,视情况而定,后面会详细介绍。 3、密钥交换算法 使用对称加密算法时,密钥交换是个大难题,所以Diffie和Hellman提出了著名的Diffie-Hellman密钥交换算法。 3.1、Diffie-Hellman密钥交换算法原理: 1、Alice与Bob确定两个大素数n和g,这两个数不用保密 2、Alice选择另一个大随机数x,并计算A如下:A=gx mod…
2024-11-19 阅读全文 →
FWQ
服务器教程
PKI/CA 技术的介绍
PKI 就是 Public Key Infrastructure 的缩写,翻译过来就是公开密钥基础设施。它是利用公开密钥技术所构建的,解决网络安全问题的,普遍适用的一种基础设施。美国政府的一个报告中把 PKI 定义为全面解决安全问题的基础结构,从而大大扩展了 PKI 的概念。   而我们认为,采用了公开密钥技术的基础设施就可以称为 PKI 。公开密钥技术也就是利用非对称算法的技术。说 PKI 是基础设施,就意味着它对信息网络的重要。将 PKI 在网络信息空间的地位与电力基础设施在工业生活中的地位进行类比非常确切。电力系统,通过伸到用户的标准插座为用户提供能源。 PKI 通过延伸到用户本地的接口,为各种应用提供安全的服务,如认证、身份识别、数字签名、加密等。从概念上讲,如果离开使用 PKI 的应用系统, PKI 本身没有任何实际的用处,正如电力系统离开电器设备也没有用一样。有了 PKI ,安全应用程序的开发者不用再关心那些复杂的数学运算和模型,而直接按照标准使用一种插座(接口)。用户也不用关心如何进行对方的身份鉴别而可以直接使用标准的插座,正如在电力基础设施上使用电吹风一样。 PKI 中最基本的元素就是数字证书。所有安全的操作主要通过证书来实现。…
2024-11-19 阅读全文 →
FWQ
服务器教程
数字证书原理 https 完整过程解析
文中首先解释了加密解密的一些基础知识和概念,然后通过一个加密通信过程的例子说明了加密算法的作用,以及数字证书的出现所起的作用。接着对数字证书做一个详细的解释,并讨论一下windows中数字证书的管理,最后演示使用makecert生成数字证书。如果发现文中有错误的地方,或者有什么地方说得不够清楚,欢迎指出!   1、基础知识 这部分内容主要解释一些概念和术语,最好是先理解这部分内容。 1.1、公钥密码体制(public-key cryptography) 公钥密码体制分为三个部分,公钥、私钥、加密解密算法,它的加密解密过程如下: 加密:通过加密算法和公钥对内容(或者说明文)进行加密,得到密文。加密过程需要用到公钥。 解密:通过解密算法和私钥对密文进行解密,得到明文。解密过程需要用到解密算法和私钥。注意,由公钥加密的内容,只能由私钥进行解密,也就是说,由公钥加密的内容,如果不知道私钥,是无法解密的。 公钥密码体制的公钥和算法都是公开的(这是为什么叫公钥密码体制的原因),私钥是保密的。大家都以使用公钥进行加密,但是只有私钥的持有者才能解密。在实际的使用中,有需要的人会生成一对公钥和私钥,把公钥发布出去给别人使用,自己保留私钥。 1.2、对称加密算法(symmetric key algorithms) 在对称加密算法中,加密使用的密钥和解密使用的密钥是相同的。也就是说,加密和解密都是使用的同一个密钥。因此对称加密算法要保证安全性的话,密钥要做好保密,只能让使用的人知道,不能对外公开。这个和上面的公钥密码体制有所不同,公钥密码体制中加密是用公钥,解密使用私钥,而对称加密算法中,加密和解密都是使用同一个密钥,不区分公钥和私钥。 Tips 1:密钥,一般就是一个字符串或数字,在加密或者解密时传递给加密/解密算法。前面在公钥密码体制中说到的公钥、私钥就是密钥,公钥是加密使用的密钥,私钥是解密使用的密钥。 1.3、非对称加密算法(asymmetric key algorithms) 在非对称加密算法中,加密使用的密钥和解密使用的密钥是不相同的。前面所说的公钥密码体制就是一种非对称加密算法,他的公钥和是私钥是不能相同的,也就是说加密使用的密钥和解密使用的密钥不同,因此它是一个非对称加密算法。 1.4、RSA简介 RSA是一种公钥密码体制,现在使用得很广泛。如果对RSA本身有兴趣的,后面看我有没有时间写个RSA的具体介绍。 RSA密码体制是一种公钥密码体制,公钥公开,私钥保密,它的加密解密算法是公开的。 由公钥加密的内容可以并且只能由私钥进行解密,并且由私钥加密的内容可以并且只能由公钥进行解密。也就是说,RSA的这一对公钥、私钥都可以用来加密和解密,并且一方加密的内容可以由并且只能由对方进行解密。 1.5、签名和加密 我们说加密,是指对某个内容加密,加密后的内容还可以通过解密进行还原。 比如我们把一封邮件进行加密,加密后的内容在网络上进行传输,接收者在收到后,通过解密可以还原邮件的真实内容。 这里主要解释一下签名,签名就是在信息的后面再加上一段内容,可以证明信息没有被修改过,怎么样可以达到这个效果呢?一般是对信息做一个hash计算得到一个hash值,注意,这个过程是不可逆的,也就是说无法通过hash值得出原来的信息内容。在把信息发送出去时,把这个hash值加密后做为一个签名和信息一起发出去。…
2024-11-19 阅读全文 →
FWQ
服务器教程
Haproxy中 global 部分的配置
Haproxy中的 global (全局) 配置部分的优先级是最低的。global 主要包括了三个方面的配置: 进程和安全管理 性能优化配置 debug.   Tips 1:本文不涉及到ca、ssl等相关的配置,和ssl相关的配置,可以参考:haproxy中与ssl相关的配置项 Tips 2:本文不涉及到stats的相关配置,可以参考:haproxy中与stats相关的配置项 一、进程和安全管理 chroot <jail dir> 修改haproxy的工作目录至指定的目录,并在放弃权限之前执行chroot()操作,可以提升haproxy的安全级别,不过需要注意的是确保指定的目录为空目录且任何用户均不能有写权限 chroot /data/jail/ # ll 总用量 8 d---------. 2 root   root     …
2024-11-19 阅读全文 →
FWQ
服务器教程
haproxy中与ssl相关的配置项
本文主要针对在haproxy中,出现与ca、ssl相关的配置项,做统一的配置说明。与ssl的相关的众多配置项出现在不同的模块、语法内,主要包括global、bind、server等。   一、global ca-base <dir> crt-base <dir> ssl-default-bind-ciphers <ciphers> ssl-default-bind-options [<option>]… ssl-default-server-ciphers <ciphers> ssl-default-server-options [<option>]… ssl-dh-param-file <file> ssl-server-verify [none|required] maxsslconn <number> maxsslrate <number> tune.ssl.cachesize <number> tune.ssl.force-private-cache tune.ssl.lifetime <timeout>…
2024-11-19 阅读全文 →
FWQ
服务器教程
haproxy中与stats相关的配置项
本文主要针对在haproxy中,出现与stats相关的配置项,做统一的配置说明。与stats的相关的众多配置项出现在不同的模块、语法内,主要包括global、bind、server等。 一、global stats bind-process [ all | odd | even | <number 1-64>[-<number 1-64>] ] … stats socket [<address:port>|<path>] [param*] unix-bind [ prefix <prefix> ] [ mode <mode> ] [ user…
2024-11-19 阅读全文 →