您好,登錄后才能下訂單哦!
安裝:
yum install chrony -y
查看chrony的配置文件
rpm -ql chrony | grep "conf$"
vim /etc/chrony.conf
使用pool.ntp.org項目中的公共服務器。以server開,理論上你想添加多少時間服務器都可以。
Please consider joining the pool (http://www.pool.ntp.org/join.html).
server 0.centos.pool.ntp.org iburst
server 1.centos.pool.ntp.org iburst
server 2.centos.pool.ntp.org iburst
server 3.centos.pool.ntp.org iburst
根據實際時間計算出服務器增減時間的比率,然后記錄到一個文件中,在系統重啟后為系統做出最佳時間補償調整。
driftfile /var/lib/chrony/drift
chronyd根據需求減慢或加速時間調整,
在某些情況下系統時鐘可能漂移過快,導致時間調整用時過長。
該指令強制chronyd調整時期,大于某個閥值時步進調整系統時鐘。
只有在因chronyd啟動時間超過指定的限制時(可使用負值來禁用限制)沒有更多時鐘更新時才生效。
makestep 1.0 3
將啟用一個內核模式,在該模式中,系統時間每11分鐘會拷貝到實時時鐘(RTC)。
rtcsync
Enable hardware timestamping on all interfaces that support it.
通過使用hwtimestamp指令啟用硬件時間戳
#hwtimestamp eth0
#hwtimestamp eth2
#hwtimestamp *
Increase the minimum number of selectable sources required to adjust
the system clock.
#minsources 2
指定一臺主機、子網,或者網絡以允許或拒絕NTP連接到扮演時鐘服務器的機器
#allow 192.168.0.0/16
#deny 192.168/16
Serve time even if not synchronized to a time source.
local stratum 10
指定包含NTP驗證密鑰的文件。
#keyfile /etc/chrony.keys
指定日志文件的目錄。
logdir /var/log/chrony
Select which information is logged.
#log measurements statistics tracking
服務器保持默認配置,關閉防火墻SELINUX
在另一臺主機上,打開配置文件,注釋掉其他服務器
server 192.168.159.131 iburst`
重啟服務
systemctl restart chronyd
驗證是否成功
chronyc sources -v
在服務器端的vim /etc/rsyslog.conf
添加如下,這是開啟
$ModLoad imudp #引用udp協議的模塊
$UDPServerRun 514 #設置udp協議使用端口
$ModLoad imtcp #引用udp協議
$InputTCPServerRun 514
在客戶端添加如下*.info;mail.none;authpriv.none;cron.none @192.168.159.131
facitlity.priority 模式可在其他文檔看到
sudo:
1.進行修改配置文件不建議直接在主配置文件下; 2.授權的命令必須要格式一致,多一個"/"都會出錯; 3.運行時必須使用sudo
為方便使用visudo 打開自定義的配置有自動加亮等特點 使用 export EDITOR=vim
2.系統管理員的身份實際依據的是uid=0
2.visudo -f /etc/sudoers.d/xx ; 切換用戶后必須使用 sudo cmd ; centos5不支持擴展配置文件
3.%group 一旦某組授權了,其中的用戶可以使用
4.使用pssh將自定義的sudo授權文件推送給多臺主機,在各自服務器上進行修改并使用,不建議使用nfs,會出現用戶發生更改等諸多問題~nfsnobody!!
5.將文件發往多臺主機
pscp.pssh -A -h ip.txt /etc/sudoers.d/file /etc/sudoers.d/
(部分來自其他師哥的博客)
配置文件:
主配置文件:/etc/nginx/nginx.conf
main配置段常見的配置指令
正常運行必備的配置
1、user
Syntax: user user [group];
Default: user nobody nobody;
Context: main
2、pid /PATH/TO/PID_FILE;
指定存儲nginx主進程進程號碼的文件路徑;
3、include file | mask;
指明包含進來的其它配置文件;
4、load_module file;
指明要裝載的動態模塊;
優化性能相關的配置
1、worker_processes number | auto;
worker進程的數量(小于等于主機cpu的物理核心數;)
auto:當前主機物理CPU核心數;
2、worker_cpu_affinity cpumask ...;
worker_cpu_affinity auto [cpumask];把nginx進程綁定到指定cpu
CPU MASK:cpu掩碼
3、worker_priority number;
指定worker進程的nice值,設定worker進程優先級;[-20,20]
4、orker_rlimit_nofile number;
worker進程所能夠打開的文件數量上限
調試和定位問題的配置
1、daemon on|off;
是否以守護進程方式運行Nignx;
2、master_process on|off;
是否以master/worker模型運行nginx,默認on;
3、error_log file [level];錯誤日志等級
事件驅動相關的配置
1、worker_connections number;
每個worker進程所能夠打開的最大并發連接數數量
2、use method;
指明并發連接請求的處理方法;
3、accept_mutex on | off;
處理新的連接請求的方法(on:worker輪流處理,Off:每個新請求都通知所有的worker進程)
與套接字相關的配置
1、server{...}:配置一個虛擬主機
server {
listen address[:PORT]|PORT;
server_name SERVER_NAME; #主機名(可使用通配符或正則表達式)
root /PATH/TO/DOCUMENT_ROOT;
proxy_pass http://ip; #反向代理
tcp_nodelay on | off #默認on,keepalive模式下數據包不會立即發送,而是等到數據包到最大時才一次性發出去,有利于解決網絡堵塞
tcp_nopush on | off #sendfile模式下,是否等待應用層首部合并一起發送
sendfile on | off
}
定義路徑相關的配置
1、root 資源路徑映射
2、location 根據url進行對應配置
=:精確匹配;
~:正則表達式匹配,區分大小寫;
~*:正則表達式匹配,不區分大小寫;
^~:左側匹配,不區分字符大小寫;
不帶符號:匹配起始于此uri的所有的url;
匹配優先級:=,^~,~/~*,不帶符號
3、alias 路徑別名
server{
listen 80;
server_name www.linux.io;
location ^~ /images/{
root /data/pictures/; #匹配/data/pictures/images
# alias /data/pictures/; #匹配/data/pictures/
}
4、index 默認資源
5、error_page 指定錯誤頁
6、try_files
定義客戶端請求的相關配置
1、keepalive_timeout
keepalive的超時時長,0表示禁止長連接(默認為75s)
2、keepalive_requests
一次長連接上允許請求資源的最大數量(默認為100)
3、keepalive_disable none | browser ...;
對哪種瀏覽器禁用長連接;
4、send_timeout ;
向客戶端發送響應報文的超時時長(兩次寫操作之間的間隔時長)
5、client_body_buffer_size size;
用于接收客戶端請求報文的body部分的緩沖區大小(默認16k),超出大小時,其將被暫存到磁盤上的由 client_body_temp_path指令所定義的位置;
6、client_body_temp_path path [level1 [level2 [level3]]];
設定用于存儲客戶端請求報文的body部分的臨時存儲路徑及子目錄結構和數量;
對客戶端限制的相關配置
1、limit_rate rate;
限制響應給客戶端的傳輸速率,單位是bytes/second,0表示無限制;
2、limit_except method ... { ... }
限制對指定的請求方法之外的其它方法的使用客戶端;
文件操作優化的配置
1、aio on | off | threads[=pool];
是否啟用aio功能;
2、directio size | off;
在Linux主機啟用O_DIRECT標記,此處意味文件大于等于給定的大小時使用,例如directio 4m;
3、open_file_cache off;
open_file_cache max=N [inactive=time];
nginx可以緩存以下三種信息:
(1) 文件的描述符、文件大小和最近一次的修改時間;
(2) 打開的目錄結構;
(3) 沒有找到的或者沒有權限訪問的文件的相關信息;
max=N:可緩存的緩存項上限;達到上限后會使用LRU算法實現緩存管理;
inactive=time:緩存項的非活動時長,在此處指定的時長內未被命中的或命中的次數少于* * *
4、open_file_cache_min_uses指令所指定的次數的緩存項即為非活動項;
5、open_file_cache_valid time;
緩存項有效性的檢查頻率;默認為60s;
6、open_file_cache_min_uses number;
在open_file_cache指令的inactive參數指定的時長內,至少應該被命中多少次方可被歸類為活動項;
7、open_file_cache_errors on | off;
是否緩存查找時發生錯誤的文件一類的信息;
ngx_http_access_module模塊:
實現基于ip的訪問控制功能
1、allow address | CIDR | unix: | all;
2、deny address | CIDR | unix: | all;
http, server, location, limit_except
ngx_http_auth_basic_module模塊
實現基于用戶的訪問控制,使用basic機制進行用戶認證;
1、auth_basic string | off;
2、auth_basic_user_file file;
ngx_http_stub_status_module模塊
用于輸出nginx的基本狀態信息
1、stub_status ;
Active connections: 活動狀態的連接數;
accepts:已經接受的客戶端請求的總數;
handled:已經處理完成的客戶端請求的總數;
requests:客戶端發來的總的請求數;
Reading:處于讀取客戶端請求報文首部的連接的連接數;
Writing:處于向客戶端發送響應報文過程中的連接數;
Waiting:處于等待客戶端發出請求的空閑連接數;
ngx_http_log_module
模塊以指定的格式寫入請求日志
(1)log_format name string ...;
string可以使用nginx核心模塊及其它模塊內嵌的變量;
(2)access_log path [format [buffer=size] [gzip[=level]] [flush=time] [if=condition]];
access_log off;#關閉日志記錄
(3)open_log_file_cache max=N [inactive=time] [min_uses=N] [valid=time];
ngx_http_gzip_module:
壓縮傳輸模塊
(1)gzip on | off;
啟用或禁用壓縮響應
(2)gzip_comp_level level;
設置響應的GZIP壓縮級別。可接受的值在1到9的范圍內。
(3)gzip_disable regex ...;
禁用與“用戶代理”標題字段匹配的任何指定正則表達式的請求響應的GZIPIP。
(4)gzip_min_length length;
啟用壓縮功能的響應報文大小閾值;
(5)gzip_buffers number size;
支持實現壓縮功能時為其配置的緩沖區數量及每個緩存區的大小;
(6)gzip_proxied off | expired | no-cache | no-store | private | no_last_modified | no_etag | auth | any ...;
nginx作為代理服務器接收到從被代理服務器發送的響應報文后,在何種條件下啟用壓縮功能的;
off:對代理的請求不啟用
no-cache, no-store,private:表示從被代理服務器收到的響應報文首部的Cache-Control的值為此三者中任何一個,則啟用壓縮功能;
(7)gzip_types mime-type ...;
壓縮過濾器,僅對此處設定的MIME類型的內容啟用壓縮功能;
ngx_http_ssl_module
(1) ssl on | off;
是否啟用ssl
(2)ssl_certificate file;
當前虛擬主機使用PEM格式的證書文件;
(3)ssl_certificate_key file;
當前虛擬主機上與其證書匹配的私鑰文件;
(4)ssl_protocols [SSLv2] [SSLv3] [TLSv1] [TLSv1.1] [TLSv1.2];
支持ssl協議版本,默認為后三個;
(5)ssl_session_cache off | none | [builtin[:size]] [shared:name:size];
builtin[:size]:使用OpenSSL內建的緩存,此緩存為每worker進程私有;
[shared:name:size]:在各worker之間使用一個共享的緩存;
(6)ssl_session_timeout time;
客戶端一側的連接可以復用ssl session cache中緩存 的ssl參數的有效時長;
ngx_http_rewrite_module
URL重定向,URL重寫查找替換。將用戶請求的URI基于regex所描述的模式進行檢查,而后完成替換;
(1)rewrite regex replacement [flag]
將用戶請求的URI基于regex所描述的模式進行檢查,匹配到時將其替換為replacement指定的新的URI;
【注意】如果在同一級配置塊中存在多個rewrite規則,那么會自下而下逐個檢查;被某條件規則替換完成后,會重新一輪的替換檢查,因此,隱含有循環機制;[flag]所表示的標志位用于控制此循環機制;
last(循環):重寫完成后停止對當前URI在當前location中后續的其它重寫操作,而后對新的URI啟動新一輪重寫檢查;提前重啟新一輪循環;
break(跳出循環):重寫完成后停止對當前URI在當前location中后續的其它重寫操作,而后直接跳轉至重寫規則配置塊之后的其它配置;結束循環;
redirect:重寫完成后以臨時重定向方式直接返回重寫后生成的新URI給客戶端,由客戶端重新發起請求;不能以http://或https://開頭;
permanent:重寫完成后以永久重定向方式直接返回重寫后生成的新URI給客戶端,由客戶端重新發起請求;
(2)return返回
return code [text];
return code URL;
return URL;
停止處理并將指定的代碼返回給客戶端。
(3) rewrite_log on | off;
是否開啟重寫日志;
(4) if (condition) { ... }條件判斷
引入一個新的配置上下文 ;條件滿足時,執行配置塊中的配置指令;server, location;
(5)set $variable value;
用戶自定義變量 ;
ngx_http_referer_module
網站的合法引用,防止盜鏈
格式:valid_referers none | blocked | server_names | string ...;
定義referer首部的合法可用值;
none:請求報文首部沒有referer首部;
blocked:請求報文的referer首部沒有值;
server_names:參數,其可以有值作為主機名或主機名模式;
arbitrary_string:直接字符串,但可使用作通配符;
regular expression:被指定的正則表達式模式匹配到的字符串;要使用~打頭,例如 ~..magedu.com;
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。