续
16、 https协议
x509.3证书格式: 证书格式的版本号 证书序列号 证书签名算法 证书颁发者 有效期 持有者的名称 持有者的公钥 CA的ID 持有者的ID 其它扩展信息 基本约束 证书策略 密钥的使用限制 CA签名 PKI: Public Key Infrastructure 端实体(申请者) 注册机构(RC) 签证机构(CA)-->签证机构(CA) 证书撤消列表(CRL)发布机构 证书存取库 SSL握手要完成的工作: 交换协议版本号 选择双方都支持的加密方式 对两端实现身份验正 密钥交换 http: 文本协议,80/tcp https: 二进制格式的协议, 443/tcp SSL会话基于IP地址进行:不支持在基于FQDN的虚拟主机上实现 客户端验正服务器证书时: 日期检测:证书是否在有效期内 证书颁发者的可信度; 证书的签名检测; 持有者的身份检测;(一般为服务器主机如 www.jungegelinux.com) httpd: 基于mod_ssl模块实现对ssl的支持 (1) 准备好服务器的私钥和证书; (2) 安装mod_ssl模块 # yum -y install mod_ssl (3) 配置/etc/httpd/conf.d/ssl.conf 配置使用ssl的虚拟主机 ServerName DocumentRoot 配置证书和私钥 SSLCertificatFile 证书文件 SSLCertificatKeyFile 密钥文件 (4) 重启httpd服务 (5) 测试# openssl s_client -connect IP:port -CAfile /path/to/CA_certificate_file
17、 服务器status页面
服务器status页面 内生的status信息,且此信息可以通过web预以显示 配置文件系统路径访问属性 <Directory [~] ""> </Directory> <File [~] ""> </File> 配置URL访问属性 <Location [~] ""> </Location> <LocationMatch ""> </LocationMatch> http://www.jungegelinux.com/server-status 如果要配置其属性的URL能映射到某具体文件系统路径,建议使用<Directory>; 处理器:是当文件被调用时,Apache内部表示形式;一般每种文件类型都有其隐式处理器; 显式的定义使用的处理器 SetHandler <Location /URL> SetHandler server-status </Location> 定义访问控制机制 基于IP控制 基于用户控制 示例: <Location /server-status> SetHandler server-status AuthType Basic AuthName "Server Status" AuthUserFile "/etc/httpd/conf/.htpasswd" Require valid-user Order deny,allow Allow from all </Location>
18、 curl命令
curl是基于URL语法在命令行方式下工作的文件传输工具,它支持FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE及LDAP等协议。curl支持HTTPS认证,并且支持HTTP的POST、PUT等方法, FTP上传, kerberos认证,HTTP上传,代理服务器, cookies, 用户名/密码认证, 下载文件断点续传,上载文件断点续传,,http代理服务器管道( proxy tunneling), 甚至它还支持IPv6, socks5代理服务器,,通过http代理服务器上传文件到FTP服务器等等,功能十分强大。
curl的常用选项: -A/--user-agent <string> 设置用户代理发送给服务器 -basic 使用HTTP基本验证 --tcp-nodelay 使用TCP_NODELAY选项 -e/--referer <URL> 来源网址 --cacert <file> CA证书 (SSL) --compressed 要求返回是压缩的形势 -H/--header <line>自定义头信息传递给服务器 -I/--head 只显示响应报文首部信息 --limit-rate <rate> 设置传输速度 -u/--user <user[:password]>设置服务器的用户和密码 -0/--http1.0 使用HTTP 1.019、使用mod_deflate模块压缩页面优化传输速度
SetOutputFilter DEFLATE # mod_deflate configuration # Restrict compression to these MIME types AddOutputFilterByType DEFLATE text/plain AddOutputFilterByType DEFLATE text/html AddOutputFilterByType DEFLATE application/xhtml+xml AddOutputFilterByType DEFLATE text/xml AddOutputFilterByType DEFLATE application/xml AddOutputFilterByType DEFLATE application/x-javascript AddOutputFilterByType DEFLATE text/javascript AddOutputFilterByType DEFLATE text/css # Level of compression (Highest 9 - Lowest 1) DeflateCompressionLevel 9 # Netscape 4.x has some problems. BrowserMatch ^Mozilla/4 gzip-only-text/html # Netscape 4.06-4.08 have some more problems BrowserMatch ^Mozilla/4\.0[678] no-gzip # MSIE masquerades as Netscape, but it is fine
BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html
20、 资源限定
软限制:可以超出的限制,但仅超出一定时长; 硬限制:绝对不能超出的限制 ulimit -n [N]: 显示或限定能打开的最大的文件句柄数;
-u [N]: 所能够运行的最多进程数;
配置文件:/etc/security/limits.conf,扩展配置:/etc/security/limits.d/*.conf
#vim /etc/security/limits.conf
21、 ab工具的使用初步
-c: 模拟的并发数 -n: 总请求数 -c的值要小于等于-n的值 其他工具 http_load, webbench, seige还有强大的tcp_copy工具
22、 httpd程序包自带的工具介绍
httpd Apache 服务器。 apachectl Apache HTTP 服务器控制工具。 ab Apache HTTP 服务器性能基准工具。 apxs Apache 扩展工具。 configure 配置源代码。 dbmmanage 为基本认证创建和更新 DBM 格式的用户认证文件。 htcacheclean 清理磁盘缓存。 htdigest 为摘要认证创建和更新用户认证文件。 htdbm 操作 DBM 密码数据库。 htpasswd 为基本认证创建和更新用户认证文件。 httxt2dbm 为 RewriteMap 创建 dbm 文件。 logresolve 将 Apache 日志文件中的 IP 地址解析到主机名称。 rotatelogs 不关闭 Apache 而切换日志文件。 suexec 执行外部程序前切换用户。
===========================the end=======================================
关于httpd的配置文件/etc/httpd/conf/httpd.conf 中的指令和值,以及其他httpd自带的工具和特性
已经总结完毕,下篇将介绍如何编译安装httpd及实现一些其他常用功能
PS:一滴水的力量,你懂的,请赐教~
本文出自 “西风瘦猪” 博客,请务必保留此出处http://jungege.blog.51cto.com/4102814/1379925