Linux 学习笔记 三
Llinux上的日志系統
syslog
syslog-ng ?next generation?
syslog 服務:
syslogd:系統:非內核系統產生的信息
klogd:內核:專門負責記錄內核產生的信息
配置文件:/etc/syslog.conf
kernel---物理終端(/dev/console)--/var/log/dmesg
dmesg 查看
cat /var/log/dmesg
日志需要滾動:日志滾動的過程也叫日志切割
messages;messages.1;message.2
/sbin/init/
/var/log/messages:系統標準錯誤日志信息,非內核產生的引導信息,各子系統產生的信息.
/var/log/maillog:郵件系統產生的日志信息
/var/log/secure:安全日志信息
日志系統:syslog
信息的詳細程度:日志級別
記錄級別
debug:調試信息
info:一般信息
notice:不影響正常的需注意信息
warning:可能影響系統的提醒用戶的信息
error:錯誤信息
crit:比較嚴重的
alert:需要馬上處理的
emergency/panic:導致系統不可用的
*:全部
none:全否
子系統:facility 設施
action:
系統上的絕對路徑 普通文件
| 管道
終端 /dev/console
@HOST 遠程主機,日志服務器
用戶 root
* 所有用戶
/etc/sysconfig/syslog 中 增加 SYSLOGD_OPTIONS="-m 0" -r
即可充當日志服務器,接受發來的日志信息
telnet:遠程登錄協議 ,TCP:23
C/S
S:telnet服務端
C:telnet客戶端
ssh:secrue shell 應用層協議 TCP:22
通信和認證過程都是加密的,主機認證
用戶認證過程加密
數據傳輸過程加密
通訊過程,客戶端發送連接請求給服務器---服務器發送公鑰給客戶端---
客戶端接受公鑰---生成公共秘鑰給服務器---發送以公共秘鑰加密的用戶名給服務器
服務器通過后要求進一步密碼---客戶端發送以公共秘鑰的密碼給服務器---
服務器通過建立連接,雙方使用公共秘鑰進行加密通訊.
?
ssh V1 V2
man inmiddle 中間人*** V1不安全
建議使用V2
ssh V2
認證過程:
基于口令認證
基于秘鑰認證
協議:就是規范
實現:服務端和客戶端
Linux :openssh
C/S
服務器:sshd ?配置文件:/etc/ssh/sshd.conf
客戶端:ssh 配置文件:/etc/ssh/ssh.conf
ssh-keygen:秘鑰生成器
ssh-copy-id :將公鑰傳輸至遠程服務器
scp:跨主機安全復制工具
ssh:
ssh 用戶名@主機
ssh -l 用戶名 主機
ssh 用戶名@主機 `命令`
ssh -p 指定端口
scp:
scp 源 目標?
-r
-a
scp 用戶名@主機:/路徑/文件 ?/本地路徑/本來文件
ssh-keygen?
-t rsa| dsa
~/.ssh/id_rsa 私鑰
~/.ssh/id_rsa.pub 公鑰
-f:指定文件位置
-P '': 指定加密秘鑰的密碼為空
將公鑰追加保存到遠程主機某用戶的家目錄下.ssh/autorized_keys文件或者.ssh/autorized_keys2文家中
ssh-copy-id -i?
ssh-copy-id -i 本機公鑰 遠程用戶@遠程主機
總結:
密碼應該經常換
使用非默認端口
限制管理地址
禁止管理員直接登錄
僅允許有限制用戶登錄
使用基于秘鑰的認證
禁止使用版本1
dropbear:嵌入式系統專用的SSH服務器和客戶端工具
服務器端:dropbear ?
dropbearkey
主機秘鑰默認位置:/etc/dropbear/
rsa:dropbear_rsa_host_key
長度可以指定,8的整數倍,默認1024
dss:dropbear_dss_host_key
長度固定,默認1024
客戶端:dbclient
dropbear默認使用nsswitch實現名稱解析
/etc/nsswitch.conf
/lib/libnss_file*
/usr/lib/libness3.so
/usr/lib/libnss_file*
dropbear會在用戶登錄時其默認shell是否當前系統的安全shell
/etc/shells
dropbearkey
-t rsa
-f 文件位置
-s size
?MBR
/boot/grub
系統安裝過程
anaconda:stage2.img
test,GUI
kickstart:三部分
命令段:
必備命令
keyboard --us
lang
timezone
rootpw
authconfig --useshadow
bootloader ?--location
clearpart --initlabel 初始化磁盤分區表 --linux 刪除舊的linux分區
dirverdisk --source 位于網絡的驅動程序
firewall --enable|disabled 是否啟用防火墻
firstboot --disabled 第一次啟動時是否需要配置
test 文本安裝
graphical 圖形安裝
key --skip
可選命令
軟件包選擇段: %packages
腳本段:
預安裝腳本%pre
后安裝腳本%post
ks=kickstart文件的位置
ks=http://
ks=cdrom:/
安裝過程中,boot提示符中可以使用的命令
?linux 后跟
askmothed 詢問安裝的源介質
dd 安裝的路徑
ip= 地址或者 dhcp
netmask= 子網掩碼
gateway= 網關
dns= DNS服務器 多個用;隔開
mediacheck=no ?不檢查光盤
nonet 不啟用光盤
noprobe 不裝載特殊硬件設備
rescue 進入緊急救援模式
locale -a 查看本地可現實語言
mkisofs 創建鏡像文件?
常見的系統故障排除:
1.驅動問題特征
2.重現故障
3.使用工具收集進一步信息
4.排除不可能的原因
5.定位故障:
從簡單的問題入手
一次嘗試一種方式
備份原文件
盡可能借助于工具
可能出現的故障:
1.管理員密碼忘記
2.系統無法啟動
a,grub損毀(MBR損壞,grub配置文件丟失,stage2文件損壞)
mbr損壞
1.借助別的主機重寫grub
2.使用緊急救援模式:
a. boot.iso
b. 使用系統光盤
boot: linux rescue 緊急模式
只讀方式掛載根目錄/mnt/sysp_w_picpath?
mknod手動創建設備文件
grub 配置文件丟失:
grub>root hd(0,0)
kernel /vmlinuz ro root=/dev/hda0 zhgb quit
initrd /initrd
boot
b,系統初始化故障,(文件系統無法正常掛載,驅動無法正常加載)
進入gurb編輯模式
emergency 不加載rc.sysinit 腳本
c,服務故障
某個服務導致啟動失敗 如: sendmail 配置文件時間戳檢查無法通過 ?
啟動時 ?使用I鍵進入交互模式,手動啟動所有服務
rc.local 腳本語法或者邏輯錯誤: 進入單用戶模式修復
d,用戶無法登陸系統(bash程序故障)
bash被刪后 ,進入緊急救援模式 , 掛載安裝光盤/dev/hdc 至/media
從Server中 用rpm --replacepkgs 重裝 --root /mnt/sysp_w_picpath 指定安裝的根目錄 bash包的名字?
3.命令無法運行
PATH被定義錯誤 export PATH=/database
或者在沒有修改配置文件的情況下,重新登錄shell
4.編譯過程無法繼續(開發環境缺少基本組件)
mbr損壞
1.借助別的主機重寫grub
2.使用緊急救援模式:
a. boot.iso
b. 使用系統光盤
boot: linux rescue 緊急模式
只讀方式掛載根目錄/mnt/sysp_w_picpath?
mknod手動創建設備文件
grub 配置文件丟失:
grub>root hd(0,0)
kernel /vmlinuz ro root=/dev/hda0 zhgb quit
initrd /initrd
boot
kernel panic 內核恐慌
把默認級別設置成0或者6 ?進入單用戶模式 ,編輯inittab文件
/etc/rc.d/rc3.d 目錄被誤刪 ?進入單用戶模式,修復目錄系統
svn,git 版本控制軟件
50臺服務器:
網絡
用戶
linux root
sudo 命令
定義某個用戶以另外一個用戶的身份,通過哪些主機執行什么命令
sudo配置文件
/etc/sudoers 文件屬性 440?
visudo 專門編輯sudoers的文件
visduo -f 指定編輯的文件
一個sudo條目
who which host ?run as ?tag:command
誰 ? 那臺主機 ? 哪個身份 ?命令
別名:定義組
who User_Alias
which host Host_Alias
runas Runas_Alias
command Cmnd_Alias
別名只能全部使用大寫英文字母的組合
用戶別名?
User_Alias USERADMIN =
用戶的用戶名
組名,使用%引導
還可以包含其他已經定義好的別名,可以嵌套
主機別名
Host_Ailas?
主機名
ip
網絡地址
其他主機名
也可以嵌套
指定用戶
Runas_Alias
用戶名
%組名
其他的runas 可以嵌套
命令別名
Cmnd_Alias
命名路徑
可以是目錄(此目錄內的所有命令)
其他已經定義的命令別名 可以嵌套
tag:標簽,
NOPASSWD 可以不輸入密碼
PASSWD 強制需要輸入密碼
hadoop root useradd usermod
5分鐘內不需要重復輸入密碼
sudo -k 每次都需要輸入密碼
sudo -l 顯示可以使用的所有命令
! 命令,可以排除不允許執行的命令
TCP/IP:安全
明文傳輸(ftp,http,smtp,telnet)?
機密性:明文---轉換規則---譯文
? 譯文---轉換規則---原文
轉換算法:秘鑰
對稱加密:算法不同,秘鑰相同,速度較快
??
完整性:
? 單向加密算法,提取數據特征碼
? 輸入一樣,輸出必然相同
? 雪崩效應,輸入的細小改變,引起輸出的巨大改變
? 定長輸出,無論元數據多大,結果大小都是相同的
? 不可逆
? 明文+特征碼----
? 協商生成密碼:秘鑰交換 internet key exchange IKE
? Diffle-Hellman協議
? 2個人發明的
? A---B
? p,g(大素數,生成數)
? A:X
? B:Y
? A:g的X次方取模P ? 發給B
? B:g的Y次方取模P ? 發給A
??
? g,p,g^x%p,g^y%p
??
? A:(g^y%p)^x= g^xy%p
? B:(g^x%p)^y= g^xy%p
? 秘鑰交換算法 ?上面就是秘鑰
??
? 公鑰加密算法
??
? 密鑰對:
公鑰:P
私鑰:S
發送方用自己的私鑰加密數據,可以實現身份驗證
發送方用對方的公鑰加密數據,可以實現數據機密性
公鑰加密算法很少用來加密數據,速度太慢,比對稱加密相差3個數量級速度,1:1000
PKI public key instructure
CA : certificate authority
CRL 證書吊銷列表 certification rework list?
常用證書格式:X509,PKSC12
X509:
公鑰,有效期限
證書合法擁有者
屬主如何被使用
CA的信息
CA簽名的效驗碼
TLS/SSL:X509
OPENGPG:
SSL: secure socket layer 安全套接字層 ?只是一種庫
SSL V2 , V3
TLS: transport layer security
V1
SSL V3 基本等于 TLS V1
對稱加密:
DES: data encryption standard 56bit
3DES:3次 DES?
AES:advance encrypttion standard 128bit
AES 192
AES 256
AES 512
openssl:
組件
libcrypto 通用加密庫
libssl tls/ssl 的實現
基于會話的,實現了身份認證/數據機密性/會話完整性的庫
openssl 多用途命令行工具
實現私有證書頒發機構
openssl enc 加密
openssl dgst 生成校驗碼
openssl 實現私有CA
1.先生成一對秘鑰
2.生成自簽署的證書
生成秘鑰 openssl genras -out filename 密碼位數
輸出公鑰 openssl ras -in 私鑰文件 -pubout?
/etc/pki/tls/certs 中可以用make 生成測試證書,秘鑰,申請 ,可以查看makefile文件,根據后綴名區分
gpg:
單向加密:
MD4
MD5
SHA1
SHA192
CRC-32 冗余校驗
公鑰加密:加密和簽名
身份認證(數字簽名)
數據加密
秘鑰交換
RSA:加密,簽名
DSA:簽名
elgamal
DNS:域名解析
BIND berkeley internet name domain
HTTP:http協議,Apache,LAMP,nginx(engin x),lenp,mysql,php,varnish
CDN:DNS(VIEW),VARNISH
file server ,nfs,smb,cifs,ftp
netfilter iptables(filter,nat,mangie,raw) tcp wrapper
nsswtch,framework,platform,PAM
smtp,pop3,imap,
selinux security enhance linux 安全加強的linux
C2---selinx---B1
DNS:domain name services
域名,
www.163.com 主機名 FQDN (full qualified domain name) ?完全限定域名
163.com 域名
.com 域名
FQDN---IP 相互轉換 DNS服務
stub resolver 末節解析器
IANA:ip,FQDN,
ICANN:
1.周期性人物
2.server
3.分布式數據庫
. 根域
TOD:TOP LEVEL DOMAIN
組織域:.com .org .net .cc
國家域:.cn .tw .jp
反向域: IP - FQDN
一個 IP 對應多個 FQDN
一個 FQDN 也可以對應多個 IP ?
查詢 :遞歸:只發出一次請求
?迭代:發出多次請求
?
DNS 分布式數據庫
上級僅知道其直接下級
下級僅知道根的位置
DNS服務器:?
接受本地服務端查詢請求 遞歸
接受外部客戶端請求 ?請求權威答案,
肯定答案 TTL
否定答案 TTL
外部客戶端請求非權威答案
根服務器,
a.root-server.net ? a 到 m ?一共13臺
主,從 結構
主DNS服務器 , 數據修改
輔助DNS服務器, 請求數據同步
serial number 版本號
reflash ? ? ? 刷新時間
retry ? ? ? ? 重試時間
expire ? ? ? ?過去時間 ,自殺時間
nagative answer ttl ?否定時間間隔
緩存DNS服務器
轉發器
數據庫中,每一個條目稱作一個資源記錄 ?resource record ?簡寫 ?RR
資源記錄的格式
NAME ? TTL ? ?IN ? ? RRT(RESOURCE RECORD TYPE) ? ?VALUE
資源記錄類型:
SOA start of authority
ZONE NAME TTL IN SOA ? FQDN ADMINISTRATOR_MAILBOX (
serial number 版本號
reflash ? ? ? 刷新時間
retry ? ? ? ? 重試時間
expire ? ? ? ?過去時間 ,自殺時間
nagative answer ttl 否定回答的TTL值
時間單位 : M/H/D/M 默認是秒
郵件格式: ?admin@magedu.com ?需要寫成 admin.mageud.com.
magedu.com 600 IN SOA ns1.magedu.com. ? ?admin.magedu.com. (
20141228
1H
5M
1W
1D
)
NS name server : ? ZONE NAME --- ?FQDN
MX mail exchange ? : ZONE NAME ---- FQDN?
NAME ? ?TTL ? IN ? MX ? ?PRI 優先級 ? ?VALUE
優先級 0-99 數字越小越高
A address ? FQND----IPV4
AAAA ?address ?FQDN----IPV6
PRT(POINTER) ? IP----FQDN ?指針
CNAME: FQDN ---- FQDN ? 前者是后者的別名?
www2.magedu.com. ? IN CNAME www.magedu.com.
域:DOMAIN
區域:ZONE
.com
授權
magedu.com. IN ? NS ? ? ns.magedu.com.
magedu.com. IN ? A ? ? ?192.168.0.10
magedu.com. 192.168.0.0/24
www 192.168.0.1
mail 192.168.0.2 mx
建立兩個區域文件
正向區域文件
magedu.com. IN SOA
www.magedu.com IN A 191.168.0.1
簡寫成:
www IN A 191.168.0.1
反向區域文件
0.168.192.in-addr.arpa. ? ? ?IN ? ? ? SOA
1.168.192.in-addr.arpa. ? ? ?IN RTP ?www.magedu.com.
1 IN RTP ?www.magedu.com.
區域傳送的類型:
完全區域傳送:axfr
增量區域傳送:ixfr
區域類型:
主區域:master
從區域:slave
提示區域:hint ? 定義根的位置
轉發區域:forward
magedu.com ? 172.16.100.0/24
ns 172.168.100.1
www 172.168.100.1 172.16.100.3
mail 172.16.100.2
ftp www
DNS: BIND
ISC ??
BIND97
/etc/named.conf
BIND 進程的工作屬性
區域的定義
/etc/rndc.key
rndc remote name domain control
秘鑰文件 ? /etc/rndc.conf
/var/named/
區域數據文件
/etc/rc.d/init.d/named
start stop restart reload status
二進制程序叫named
bind-chroot:
默認:named
用戶:named
組:named
/var/named/chroot/
重新配置文件的位置,增加安全性
caching-nameserver
成為緩存DNS服務器
緩存----主----從
named-checkconfig
named-checkzone
dig DNS INFORMATION?
dig -t ns .
named.ca ?根服務器地址
DNS?
監聽協議的端口
tcp 53
UPD 53
tcp 953 rndc
SOCKET 套接字
IP:port 就是套接字
位于2個不同主機上的進程要想實現通訊
服務器端需要在某個位置中等待客戶端的請求
這個位置我們才稱為套接字
區域
ZONE "區域名稱" IN {
type {maste|salve|hint|forward}
};
主區域
file "區域數據文件,相對路徑directory下的" ;
從區域
file "區域數據文件" ;
mastera {master_ip;};
臨時關閉selinux
getenforce
enforcing
setenforce 0 關閉
setenforcing 1 打開
永久關閉 selinx
vim etc/selinux/config
SELINUX= disabled
dig -t 資源類型 名稱 @DNS服務器地址 正向查詢
dig -x IP ? ?反向查詢
host -t 資源類型 ?名稱 不能還用@ ? ? ? ? ? 正向查詢
nslookup 交互式
server ip
set q=資源類型
泛域名解析
*.magedu.com. ? IN A ?IP
recursion 遞歸
區域:
主
從
axfr 完全區域傳送
ixfa 增量區域傳送
rndc:遠程控制DNS
子域授權
正向區域
SUB_ZONE_NAME IN NS NSSERVER_SUB_ZONE_NAME
NSSERVER_SUB_ZONE_NAME IN A IP
.com
naonao.com. IN NS ns1.naonao.com.
IN NS ns2.naonao.com.
ns1.naonao.com. IN A 172.16.100.1
ns2.naonao.com. IN A 172.16.100.2
naonao.com
fin.naonao.com. IN NS ns1.fin.naonao.com.
ns1.fin.naonao.com. IN A ? ? ? 172.16.100.8
market.naonao.com. IN NS ? ns1.market.naonao.com.
ns1.market.naonao.com. IN A ? ?172.16.100.9
forward (only) (first)
forwarders 指定轉發器
dig +trace -t A ?www.baidu.com
zone “zone name” IN {
type forward;
};
?
allow-recursion
allow-query
allow-transfer
axfr
ixfr
定義 ACL
acl ACL_NAME(innet) {
172.16.0.0/16
127.0.0.0/8
};
allow-query { innet };
none;
any:
CDN content delivery network ?內容分發網絡
view view-name {
};
所有的區域都必須在視圖中
開啟DNS 查詢日志記錄
category:日志源
查詢
區域傳送
可以通過category自定義日志源
channel:日志的記錄保存位置
syslog:
file:自定義保存保存日志信息的文件
logging ?{
}
queryperf : dns的壓力測試
DHCP: Dynamic Host Config Protocol ---bootp
TCP/IP
IPADDR
NETMASK
GATEWAY
DNS
廣播方式:
CLIENT --- DHCPCOVER ?報文
DHCPOFFER----SERVER
CLIENT --- DHCPQUEST
DHCPACK---SERVER
續租 單播
CLIENT --- DHCPQUEST
DHCPACK ---SERVER
服務器端監聽:UDP 67
客戶端監聽:UDP 68
HTTP: HYPERTEXT TRANSFER PROTOCOL 超文本傳輸協議
超鏈接:
web:
http 0.9:僅支持純文本(超鏈接) ? ASCII,
HTML : HYPERTEXT MARK LANGUAGE
BROWSER:客戶端
URI: UNIFORM RESOURCE INDENTIFIER 統一資源標識符
全局范圍
URL: UNIFORM RESOURCE LOCATOR 統一資源定位符
是URI的子集
protocol://HOST:PORT/PATH/FILE
http://www.naonao.com/download/linux.tar.gz
web資源(web對象):http://www.naonao.com/logo.gif
多個資源被整合為一個HTML文檔?
HTTP方法:
GET?
http / 1.0: PUT,POST,DELETE
MIME: MULTIPURPOSE INTERNET MAIL EXTENSION,多用途互聯網郵件擴展
SMTP:SIMPLE MAIL TRANSMISSION PROTOCOL,純文本
MINE:非文本數據在傳輸前重新編碼為文本格式,
?接收方能夠用相反的方式將其還原為原來的格式
?還能調用相應的程序來打開文件
BASE64 編碼格式
協議首部:
p_w_picpath/jpeg
動態效果:ActiveX
JAVA: applet ?JRE環境
動態網頁:服務器端存儲的文檔非HTML格式,而是變成語言開發的腳本,
?腳本接受參數后在服務器運行,運行完成后生產HTML文檔
?把生產的文檔發給客戶端
?
WEB:INDEX.PHP?
WEB---PROTOCOL--PHP解釋器(運行INDEX.PHP)
HTTP
INDEX.HTML:
引用N個web對象,URL
動態網頁:包含靜態內容和動態內容
動態內容部分才需要運行
緩存:
首部:
IP :
SOURCE IP
DESTINATION IP
TCP :
SOURCE PORT
DESTINATION PORT
HTTP :
GET /2.HTML
HOST:WWW.NAONAO.COM (虛擬主機)
HTTP 報文:
請求報文,響應報文
請求報文的語法:
<mmethod> <request-URL> <version>
<headera>
<entity-body> 報文主體
響應報文的語法:
<version > <status> <reason-phrase>
<headera>
<entity-body>
狀態代碼
1xx 純信息
2xx “成功”類 ?(200正常)
3xx 重定向類的信息(301永久重定向,302臨時重定向,304沒有發生改變)
4xx 客戶端錯誤類的信息 (404)
5xx 服務器端錯誤類的信息 (500)
請求報文
GET / HTTP/1.1
HOST:WWW.NAONAO.COM
CONNECTION: KEEP-ACTIVE
響應報文
HTTP/1.1 200 OK
web服務器的主要任務
1.建立連接
2.接受請求
3.處理請求
4.訪問資源
5.構建響應
6.發送響應
7.記錄日志
http/1.1
增強緩存功能,支持長連接
MPM
C/S
c: client agent (brower,spider)
s: server?
client---request---server----response---client
http method
get head post put delete trace opitions connection
cilent
ie
firefox
chrome
opera
safari
server
apache---httpd
iis
nginx
lighttpd
thttpd
應用程序服務器
IIS
TOMCAT (apache ,jsp,opensoure)
WEBSPHERE (ibm , jsp,commodity)
WEBLOGIC (oracle , jsp,commodity)
JBOSS (redheat )
www.netcraft.com 網站WEB統計比例
代理:
WEB代理服務器工作與WEB客戶端和WEB服務器之間,
他負責接受來自于客戶端的http請求,并將其轉發至對應的服務
而后接受來自于服務器的響應,并將響應報文回送至客戶端
apache:17年,a pathoy server = apache
ASF: apahce software foundation
WEB:
httd
tomcat
hadoop
www.apache.org
httpd:
web server
2.2 2.4 2.0
事先創建進程
按需維護適當的進程
模塊設計、核心比較小、各種功能都能模塊添加(包括php)
支持運行時配置,支持單獨變異模塊
支持多種方式的虛擬主機配置
虛擬主機:物理服務器,WEB程序只有一個,卻可以服務多個不同的站點
基于IP的虛擬主機
基于端口的虛擬主機
基于域名的虛擬主機
支持HTTPS協議:mod-ssl
支持用戶認證
支持基于IP或者主機名的ACL
支持每目錄的訪問控制
支持URL重寫,/IMAGE/A.JPEG 重寫成 /BBS/IMAGES/ABC.JPEG
httpd: rpm包:
源碼編譯:
httpd:收selinux 控制,事先讓其處于permmasive,disable
方法 setenforce 0
httpd:
/usr/bin/httpd{MPM:prefork}
httpd:root:root 只有1個 ?master主導進程
httpd:apache:apache work工作進程
/etc/rc.d/init.d/httpd
port: 80 tcp ,ssl 443 tcp
/etc/httpd:工作的根目錄,相當于程序的安裝目錄
/etc/httpd/conf:配置文件目錄
主配置文件 httpd.conf
/etc/httpd/conf.d/*.conf
/etc/httpd/modules:模塊目錄
/etc/httpd/logs---/var/log/httpd 日志目錄
日志文件有兩類,訪問日志access_log,錯誤日志 err_log
/var/www
html 靜態頁面位置
cgi-bin 動態頁面
cgi:common gateway interface 通用網關接口
client---httpd (index.cgi)---spawn frocess (index.cgi)---httpd---client
perl,python,java,(serviet,jsp),php
fastcgi:
程序:指令和數據
數據:數據庫服務 ? CPU-BOUND CPU密集型
LAMP :linux apache mysql php 合體
httpd:directive vaule
指令不區分大小寫
value則根據需要有可能要區分
loadrunner 壓力測試工具
MPM:Multi-Processing Module
winnt
prefork 一個請求用一個進程響應
worker ?一個請求用一個線程響應,啟動多個進程,每個進程生成多個線程處理請求響應,測試發現性能沒有prefork好
event 一個進程處理多個請求
httpd -l ?查看核心模塊
httpd -t ?檢測配置文件語法正確性
URL的路徑和本地系統路徑不是一碼事
URL相對于documentroot的路徑而言
options
none:不支持所有選項
indexes:允許索引目錄
followsynlinks:允許訪問符號鏈接指向的源文件,降低性能
includes:允許執行服務器包含(ssi)
execcgi:允許執行CGI腳本
multiviews:
all:支持所有選項
order:用于定義基于IP ,網絡,主機的訪問控制機制
order allow,denny
allow from
denny from
地址的表示方式:
ip
網絡地址 10.100.7.0/24
hostname WWW.A.COM
domainname A.COM?
部分ip 172.16. ? 表示 172.16.0.0/16
elinks http://
-dump 不進入交互模式
-source 顯示源代碼
AllowOverride ?authconfig
authtype basic
authname "just do it"?
authuserfile "/etc/httpd/htpasswd"
require valid-user?
htpasswd -c -m /etc/httpd/htpasswd hadoop
-c 第一次創建用戶時添加,創建用戶密碼文件,之后不能加
-m MD5加密
-D 刪除用戶
authgroupfile "/etc/httpd/htgroup"
require group zu
vim htgroup?
zu hadoop tom
apache 虛擬主機
apache 服務器 :host 物理主機
虛擬主機:
apache服務
服務于多個不同的站點
apche:
中心主機
虛擬主機
基于IP
IP1:80
IP2:80
基于端口
ip:80
ip:8080
基于域名
ip:80
主機名不同
WWW.A.ORG
WWW.B.COM
WWW.C.NET
使用虛擬主機的方法
vim /ETC/HTTPD/CONF/HTTPD.COF
注銷# DocumentRoot?
APACHE 2.2
NAMEVIRTUALHOST
APACHE 2.4
直接定義
servername
serverailas
documentroot /www/a.org/
<directory "/www/a.org" >
options
allowoverride?
</directory>
alias
errorlog
customlog
設定默認的虛擬主機 需放在默認的第一個位置才能生效
<virtualhost _default_:80>
documentroot "/www/default80"
...
</virtualhost>
<virtualhost _default_:*>
doucumentroot "/www/default"
...
</virtualhost>
https:訪問的建立過程
1.建立私有CA 生產自簽證書
cd /etc/pki/CA/?
(umask 077;openssl genrsa -out ./private/cakey.pem 2048)
2.更改證書生產的默認信息
vim /etc/tls/openssl.conf
3.生產自簽證書
openssl req -new -x509 -key /private/cakey.pem -out cacert.pem -days 3655
4.更改私有CA的文件位置
vim /etc/tls/openssl.conf
ca_default
dir =
5.新建私有CA需要的文件和文件夾
文件夾 certs crl newcerts
文件 index.txt serial
轉載于:https://blog.51cto.com/daxia000/1876034
總結
以上是生活随笔為你收集整理的Linux 学习笔记 三的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 今天,彻底弄懂什么是URI
- 下一篇: nginx——keepalived