--時間:2019年2月21日html
--做者:飛翔的小胖豬linux
文檔基於Centos Linux操做系統做爲生產服務器運行環境時所必須知足的條件,包括系統核心、運行庫、使用工具、以及做爲服務器系統所具備的可擴展性、可用性、適用性、可管理性、安全性以及性能要求等。web
文檔紅字部分均爲自定義內容,請維護者根據實際狀況填寫。Centos 6系統默認使用network程序進行網絡配置,在配置時請關閉NetworkManager程序。Centos 7系統網絡配置默認使用NetworkManager配置網絡,若是須要使用network配置網絡,在配置時請關閉NetworkManager程序,而後使用修改配置文件的方式配置網絡。藍色字體部分爲文件不須要改動 部分。數據庫
文檔全部的命令均通過測試可用,在配置時只須要複製相關內容而後根據本身實際狀況修改對應紅色字體參數便可使用。vim
文檔針對於現網實際狀況,分別對Centos 6和Centos 7系統配置規範進行了說明。centos
Centos 6.X系列和Centos 7.X系列操做系統均使用最小化安裝操做系統,以保證系統的純淨。業務如需使用到其餘軟件,請業務方維護人員自行經過yum源進行安裝配置。緩存
Centos 8.x系列請參考Centos 7.x系列配置謝謝。安全
文檔主要做用是提醒我本身安裝系統事後須要確認的一些配置,不喜勿噴,哈哈。bash
Centos 6.x系列操做系統、使用network對外提供網絡服務,全部網絡配置均經過文件的形式進行更改。服務器
主機名:YWXT-YW-ZJLX-ZJXH(業務系統-業務名-主機類型-主機序號)
例子:
AI智能分析-人臉分析-數據庫-001 主機名設置爲 AIZNFX-RLFX-SJK-001
配置說明:
系統主機名要準確的表示出業務系統、小業務名、主機類型做用等信息。每一個字段均使用中文首字符簡寫。
配置命令:
[root@oracle_pref ~]# vim /etc/hosts 192.168.111.100 AIZNFX-RLFX-SJK-001 [root@oracle_pref ~]# vim /etc/sysconfig/network NETWORKING=yes HOSTNAME= AIZNFX-RLFX-SJK-001
centos6.x版本須要在/etc/hosts和/etc/sysconfig/network兩處文件修改配置。
根據實際狀況選擇dns服務器,處於互聯網的主機在設置dns時可選用運營商提供dns解析服務器。對於內網環境下請根據本身環境實際條件設置響應的dns。
互聯網常見DNS:
IP地址 |
提供方 |
114.114.114.114 |
114 |
180.76.76.76 |
百度 |
223.5.5.5 |
阿里 |
119.29.29.29 |
DNSPod DNS |
1.2.4.8 |
CNNIC SDNS |
101.226.4.6 |
DNS派 |
208.67.222.222 |
OpenDNS |
8.8.8.8 |
Google DNS |
配置說明:
請系統維護人員根據機器實際所在區域選擇設置DNS。內網選擇自建的dns或者不設置dns,鏈接互聯網的狀況下可指定本地網關或運營商提供的dns地址做爲域名解析。
配置命令:
[root@oracle_pref ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 IPADDR=192.168.111.100 NETMASK=255.255.255.0 ONBOOT=yes NAME=eth0 GATEWAY=192.168.111.1 DNS1=192.168.111.1 BOOTPROTO=static
針對於Centos 6.X系列的操做系統,使用修改文件的方式完成DNS及網絡的配置。配置修改完成後須要使用命令重啓service network restart網絡服務生效。
根據實際狀況爲服務器設置ntp時間同步服務器,互聯網中隨意選擇一個,內網環境中根據設置爲建的ntp服務器地址。
配置說明:
請系統維護人員根據機器實際所在區域選擇設置對應的NTP服務器地址,可以使用域名也可使用ip地址。
配置命令:
[root@oracle_pref ~]# vim /etc/ntp.conf # Use public servers from the pool.ntp.org project. # 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 server 192.168.111.10 iburst ……………… [root@oracle_pref ~]# chkconfig ntpd on //開機啓動ntp服務
Centos 6.x使用ntpd服務提供主機的時間服務,修改過配置文件後須要使用命令service ntpd restart重啓服務生效。
根據實際狀況設置yum原,在互聯網的鏈接狀況下選擇合適的yum源,內網環境中能夠配置自建的yum源服務器,也能夠設置本地yum源。
配置說明:
請系統維護人員根據機器實際所在區域選擇設置對應的yum源服務器地址。
配置命令:
[root@oracle_pref ~]# vim /etc/yum.repos.d/local.repo [local_repo] name=local_repo enabled=1 gpgcheck=0 baseurl=file:///mnt
文件配置完成後,使用命令yum clean all && yum repolist執行更新yum配置。
因爲ntp服務只能同步時間而沒法同步時區,主機須要手動設置時區。國內的服務器統一使用東八區時區。
配置說明:
設置服務器的時區爲東八區所在城市。配置完成後須要把設置保存到硬件時間內。Centos 6.x系列操做系統使用Chongqing爲時區所在地。
配置命令:
[root@oracle_pref ~]# vim /etc/sysconfig/clock
ZONE="Asia/ Chongqing"
[root@oracle_pref ~]# cp /usr/share/zoneinfo/Asia/Chongqing /etc/localtime -R [root@oracle_pref ~]# hwclock -w [root@oracle_pref ~]# date –R [root@oracle_pref ~]# cat /etc/sysconfig/clock
時區修改後可經過date -R和cat /etc/sysconfig/clock命令查看確認當前時區是否正確。
生產環境中默認主機系統使用語言爲LANG="en_US.UTF-8",若是有特殊需求的應用須要其餘字符集,須要業務方自行進行修改。
配置說明:
使用cat /etc/sysconfig/i18n命令查看系統字符集。默認字符集爲"en_US.UTF-8",全部模板默認使用該字符集,後期業務方能夠自行根據需求修改字符集。主機交付後維護人員不對其進行修改。
配置命令:
[root@oracle_pref ~]# locale -a //查看系統可支持的字符集 [root@oracle_pref ~]# vim /etc/sysconfig/i18n LANG="en_US.UTF-8" SYSFONT="latarcyrheb-sun16" [root@oracle_pref ~]# export LANG= en_US.UTF-8 [root@oracle_pref ~]# echo $LANG [root@oracle_pref ~]# cat /etc/sysconfig/i18n
首先使用locale -a命令查看系統可支持的字符集,選擇所須要的字符集在/etc/sysconfig/i18n文件中修改。最後使用命令查看確認字符集設置狀況。
在生產環境中,業務和維護相對分離。在每臺服務器中須要按需建立對應功能的帳戶,提供相應業務方維護使用,同時業務帳號和運維帳號均開通sudo權限。帳號UID和GID從1000開始,每一個業務帳號UID和GID在任何一臺主機均爲固定的相同的值,方便後期的管理和權限的設置。
帳戶名 |
權限 |
密碼組合 |
做用 |
sudo |
備註 |
root |
超級管理員 |
8位字母+數字組合 |
系統配置 |
|
|
customer |
普通用戶 |
8位字母+數字組合 |
業務搭建 |
是 |
業務方使用帳戶 |
yw_admin |
普通用戶 |
8位字母+數字組合 |
運維管理員 |
是 |
基礎平臺維護組成員使用帳戶 |
配置說明:
新建兩個帳戶,同時設置UID和GID,加入sudo權限實現輸入自身密碼切換到root用戶,不以root用戶直接登陸系統。帳號建立後使用echo '密碼'|passwd --stdin 用戶 命令修改密碼。
應用組維護帳號: yw_admin UID:1000 GID:1000
配置命令:
新建帳戶 [root@oracle_pref ~]# useadd -u 1000 yw_yyg [root@oracle_pref ~]# useadd -u 1100 customer [root@oracle_pref ~]# echo '12345678' |passwd --stdin root [root@oracle_pref ~]# echo '12345678' |passwd --stdin yw_admin [root@oracle_pref ~]# echo '12345678' |passwd --stdin customer
配置sudo [root@oracle_pref ~]# # visudo yw_admin ALL=PASSWD:/usr/bin/sudo,/bin/su customer ALL=PASSWD:/usr/bin/sudo,/bin/su [oracle@oracle_pref ~]$ $sudo su - //切換至root用戶
visudo操做與vim一致,配置完成後使用sudo su -切換到root用戶會提示輸入自身用戶的密碼。密碼輸入成功後該終端終端保存sudo密碼緩存5分鐘,可以使用sudo -k清除。
Centos 6.x系列系統默認保存1000條歷史記錄,修改保留條數爲10000,同時加上時間戳。
配置說明:
在/etc/bashrc最後新增export HISTTIMEFORMAT='%F %T'" "內容,在/etc/profile中找到HISTSIZE項,並修改成10000。最後使用source命令執行文件,生效配置。
配置命令:
[root@oracle_pref ~]# vim /etc/bashrc export HISTTIMEFORMAT='%F %T'" " [root@oracle_pref ~]# vim /etc/profile HISTSIZE=10000 [root@oracle_pref ~]# source /etc/bashrc [root@oracle_pref ~]# source /etc/profile
歷史命令參數修改後可以使用history確認查看歷史命令格式是否正確,使用echo $HISTSIZE查看歷史命令最大保留數是否正確。
設置單個用戶最大的系統資源,保證系統不會由於單個用戶的操做而形成同系統中其餘用戶沒法正常做業。同時也保證了用戶由於默認資源使用過小致使的業務沒法正常使用故障。
配置說明:
在/etc/security/limits.conf文件中指定每一個用戶最大使用的關鍵性資源值,在/etc/security/limits.d/90-nproc.conf中指定單個用戶容許打開最大進程數。
nproc:用戶打開進程的最大數量
core:內核文件大小
nofile:用戶打開文件的最大數目
配置命令:
[root@oracle_pref ~]# vim /etc/security/limits.conf * soft nproc 65533 * hard nproc 65534 * soft core unlimited * hard core unlimited * soft nofile 65533 * hard nofile 65534 [root@oracle_pref ~]# vim /etc/security/limits.d/90-nproc.conf * soft nproc 65534 root soft nproc unlimited [root@oracle_pref ~]# sysctl -p
修改系統中的TIMEOUT時間,避免系統出現大量的TIME_WAIT狀態鏈接。
配置說明:
在/etc/sysctl.conf文件最後添加對內容,而後使用sysctl -p 命令生效配置,具體配置詳解以下:
net.ipv4.tcp_syncookies = 1
.標識開啓SYN Cookies。當出現SYNC等待隊列溢出時,啓用cookies來處理,可防範少許SYNC攻擊,默認爲1,標識關閉。
net.ipv4.tcp_tw_reuse = 1
.表示開啓重用。容許將TIME-WAIT sockets 從新用於新的TCP鏈接,默認爲0,表示關閉。
net.ipv4.tcp_tw_recycle = 1
.表示開啓TCP鏈接中TIME-WAIT sockets 的快遞迴收,默認爲0,表示關閉。
net.ipv4.tcp_fin_timeout = 30
.修改系統默認的TIMEOUT時間,默認爲60秒
配置命令:
[root@oracle_pref ~]# vim /etc/sysctl.conf net.ipv4.tcp_syncookies = 1 net.ipv4.tcp_tw_reuse = 1 net.ipv4.tcp_tw_recycle = 1 net.ipv4.tcp_fin_timeout = 30 [root@oracle_pref ~]# sysctl -p
使用sysctl -p 生效了配置事後,可以使用sysctl -a 查看修改是否成功。
file-max決定了當前內核能夠打開的最大的文件句柄數,系統全部進程一共能夠打開的文件數量。file-max設置太小,系統會提示"不能打開太多的文件"或者"沒法打開更多進行"。
配置說明:
file-max值肯定了系統能夠打開的文件數,最佳值爲內存(KB)大小的10%。而後在/etc/sysctl.conf中設置,最後使用sysctl -p 命令生效。cat /proc/sys/fs/file-max命令可查看配置是否生效。
配置命令:
[root@oracle_pref ~]# cat /proc/sys/fs/file-max [root@oracle_pref ~]# grep -r MemTotal /proc/meminfo | awk '{printf("%d",$2/10)}' //獲取最佳文件句柄值 [root@oracle_pref ~]# echo "fs.file-max = 1626660" >> /etc/sysctl.conf [root@oracle_pref ~]# sysctl -p
在Linux操做系統中使用sshd協議登陸操做系統。爲了安全起見系統設置root用戶不能遠程登錄,系統只可以經過普通用戶遠程登錄,而後經過sudo權限切換到root帳戶下進行操做。
配置說明:
在# vim /etc/ssh/sshd_config中把#PermitRootLogin yes修改成PermitRootLogin no最後重啓遠程服務。
配置命令:
[root@oracle_pref ~]# vim /etc/ssh/sshd_config PermitRootLogin yes UseDNS no # GSSAPI options #GSSAPIAuthentication no GSSAPIAuthentication no #GSSAPICleanupCredentials yes GSSAPICleanupCredentials no #GSSAPIStrictAcceptorCheck yes #GSSAPIKeyExchange no PubkeyAuthentication yes #啓用公告祕鑰配對認證方式 RSAAuthentication yes #容許RSA祕鑰 [root@oracle_pref ~]# service sshd restart
配置不容許root經過sshd直接登陸,用戶使用root權限須要經過普通用戶切換。
主機操做中,在不影響業務部署應用的狀況下,爲了方便對主機系統的管理,全部Centos 6.x系列主機均預裝以下工具。
軟件名 |
做用 |
net-tools |
網絡管理工具 |
lrzsz |
scp上傳下載文件 |
gcc* |
軟件編譯用 |
zip |
解壓zip壓縮文件 |
gzip |
解壓gz壓縮文件 |
bzip2 |
解壓bz2壓縮文件 |
ftp |
訪問ftp服務器 |
vim |
文本編輯器 |
dmidecode |
獲取服務器硬件信息 |
wget |
linux訪問web,下載web數據 |
sshpass |
免密工具 |
配置說明:
在配置了yum源事後直接使用yum工具安裝以上軟件。
配置命令:
[root@oracle_pref ~]# yum install net-tools -y [root@oracle_pref ~]# yum install lrzsz -y [root@oracle_pref ~]# yum install gcc* -y [root@oracle_pref ~]# yum install zip -y [root@oracle_pref ~]# yum install gzip -y [root@oracle_pref ~]# yum install bzip2 -y [root@oracle_pref ~]# yum install ftp -y [root@oracle_pref ~]# yum install vim -y [root@oracle_pref ~]# yum install dmidecode -y
RHEL 6.x系列操做系統默認selinux和iptables爲開啓狀態,業務方可根據需求進行配置修改或直接關閉。基礎運維人員不對主機安全配置作任何特殊操做。對於本身使用的機器建議關閉掉selinux,iptables可根據實際狀況肯定是否開啓及具體設置。
對於業務不是過重要的業務,建議關閉掉kdump功能。
設置用戶登陸系統時密碼錯誤輸入次數限制,當用戶連續輸入3次及以上的錯誤密碼時,鎖定帳戶180秒。
配置說明:
linux設置登陸策略須要在兩個文件中修改。
終端(KVM或直連顯示器):/etc/pam.d/system-auth
遠程(ssh): /etc/pam.d/sshd
分別在這兩個文件正式配置文件第一行,即#%PAM-1.0的下面。添加策略語句。
配置命令:
[root@oracle_pref ~]# vim /etc/pam.d/system-auth #%PAM-1.0 # This file is auto-generated. # User changes will be destroyed the next time authconfig is run. auth required pam_tally2.so onerr=fail deny=3 unlock=180 even_deny_root root_unlock_time=300 [root@oracle_pref ~]# cat /etc/pam.d/sshd #%PAM-1.0 auth required pam_tally2.so deny=3 unlock_time=300 even_deny_root root_unlock_time=30 onerr=fail
Centos 7.x系列操做系統、使用NetworkManager對外提供網絡服務,全部網絡配置均經過命令實現永久性更改,無需再次使用文件的形式進行更改。
主機名:YWXT-YW-ZJLX-ZJXH(業務系統-業務名-主機類型-主機序號)
例子:
AI智能分析-人臉分析-數據庫-001 主機名設置爲 AIZNFX-RLFX-SJK-001
配置說明:
系統主機名要準確的表示出業務系統、小業務名、主機類型做用等信息。每一個字段均使用中文首字符簡寫。
配置命令:
[root@oracle_pref ~]# hostnamectl set-hostname AIZNFX-RLFX-SJK-001
Centos 7.x系列系統使用hostnamectl set-hostname命令該主機名後爲永久生效,不須要再次到文件中修改配置。
根據實際狀況選擇dns服務器,處於互聯網的主機在設置dns時可選用運營商提供dns解析服務器。對於內網環境下請根據本身環境實際條件設置響應的dns。
互聯網常見dns地址:
IP地址 |
提供方 |
114.114.114.114 |
114 |
180.76.76.76 |
百度 |
223.5.5.5 |
阿里 |
119.29.29.29 |
DNSPod DNS |
1.2.4.8 |
CNNIC SDNS |
101.226.4.6 |
DNS派 |
208.67.222.222 |
OpenDNS |
8.8.8.8 |
Google DNS |
配置說明:
請系統維護人員根據機器實際所在區域選擇設置DNS。內網選擇自建的dns或者不設置dns,鏈接互聯網的狀況下可指定本地網關或運營商提供的dns地址做爲域名解析。
配置命令:
[root@oracle_pref ~]# nmcli conn modify eth0 ipv4.dns "192.168.111.1"; [root@oracle_pref ~]# nmcli conn down eth0;nmcli conn up eth0;
針對於Centos 7.X系列的操做系統,使用命令方式完成DNS及網絡的配置。配置修改完成從新讀取端口配置。
根據實際狀況爲服務器設置ntp時間同步服務器,互聯網中隨意選擇一個,內網環境中根據設置爲建的ntp服務器地址。
配置說明:
請系統維護人員根據機器實際所在區域選擇設置對應的NTP服務器地址,可以使用域名也可使用ip地址。
配置命令:
[root@oracle_pref ~]# vim /etc/chrony.conf # Use public servers from the pool.ntp.org project. # 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 server 192.168.111.10 iburst ……………… [root@oracle_pref ~]# systemctl restart chronyd.service //重啓ntp服務 [root@oracle_pref ~]# systemctl enable chronyd.service //開機啓動ntp服務
Centos 7.x使用ntpd服務提供主機的時間服務,修改過配置文件後須要使用命令systemctl restart chronyd.service重啓服務生效。
根據實際狀況設置yum原,在互聯網的鏈接狀況下選擇合適的yum源,內網環境中能夠配置自建的yum源服務器,也能夠設置本地yum源。
配置說明:
請系統維護人員根據機器實際所在區域選擇設置對應的yum源服務器地址。
配置命令:
[root@oracle_pref ~]# vim /etc/yum.repos.d/local.repo [local_repo] name=local_repo enabled=1 gpgcheck=0 baseurl=file:///mnt
文件配置完成後,使用命令yum clean all && yum repolist執行更新yum配置。
時間同步服務器沒法同步時區,針對主機須要手動設置時區。國內的服務器統一使用東八區時區。Centos 7.x系列主機時區設置爲上海Asia/Shanghai。
配置說明:
設置服務器的時區爲東八區所在城市。配置完成後須要把設置保存到硬件時間內。
配置命令:
[root@oracle_pref ~]# timedatectl set-timezone Asia/Shanghai [root@oracle_pref ~]# hwclock -w [root@oracle_pref ~]# timedatectl
時區修改後可經過timedatectl命令查看確認當前時區是否正確,該命令爲永久生效無需再在文件中進行修改。
生產環境中默認主機系統使用語言爲LANG="en_US.UTF-8",若是有特殊需求的應用須要其餘字符集,須要業務方自行進行修改。
配置說明:
主機默認字符集爲"en_US.UTF-8",全部模板默認使用該字符集,後期業務方能夠自行根據需求修改字符集。主機交付後維護人員不對其進行修改。
配置命令:
[root@oracle_pref ~]# echo $LANG //查看當前字符集 [root@oracle_pref ~]# locale -a //查看系統可支持的字符集 [root@oracle_pref ~]# vim /etc/locale.conf LANG="en_US.UTF-8" [root@oracle_pref ~]# export LANG= en_US.UTF-8 [root@oracle_pref ~]# echo $LANG
使用echo $LANG命令查看確認當前字符集是否知足需求,如不知足業務人員請自行修改。
在生產環境中,業務和維護相對分離。在每臺服務器中須要按需建立對應功能的帳戶,提供相應業務方維護使用,同時業務帳號和運維帳號均開通sudo權限。帳號UID和GID從1000開始,每一個業務帳號UID和GID在任何一臺主機均爲固定的相同的值,方便後期的管理和權限的設置。
帳戶名 |
權限 |
密碼組合 |
做用 |
sudo |
備註 |
root |
超級管理員 |
8位字母+數字組合 |
系統配置 |
|
|
customer |
普通用戶 |
8位字母+數字組合 |
業務搭建 |
是 |
業務方使用帳戶 |
yw_admin |
普通用戶 |
8位字母+數字組合 |
運維管理員 |
是 |
基礎平臺維護組成員使用帳戶 |
配置說明:
新建兩個帳戶,同時設置UID和GID,加入sudo權限實現輸入自身密碼切換到root用戶,不以root用戶直接登陸系統。帳號建立後使用echo '密碼'|passwd --stdin 用戶 命令修改密碼。
應用組維護帳號: yw_admin UID:1000 GID:1000
配置命令:
新建帳戶 [root@oracle_pref ~]# useadd -u 1000 yw_yyg [root@oracle_pref ~]# useadd -u 1100 customer [root@oracle_pref ~]# echo '12345678' |passwd --stdin root [root@oracle_pref ~]# echo '12345678' |passwd --stdin yw_admin [root@oracle_pref ~]# echo '12345678' |passwd --stdin customer
配置sudo [root@oracle_pref ~]# visudo yw_admin ALL=PASSWD:/usr/bin/sudo,/bin/su customer ALL=PASSWD:/usr/bin/sudo,/bin/su [oracle@oracle_pref ~]$ sudo su - //切換至root用戶
visudo操做與vim一致,配置完成後使用sudo su -切換到root用戶會提示輸入自身用戶的密碼。密碼輸入成功後該終端終端保存sudo密碼緩存5分鐘,可以使用sudo -k清除。
Centos 7.x系列系統默認保存1000條歷史記錄,修改保留條數爲10000,同時在加上時間戳。
配置說明:
在/etc/bashrc最後新增export HISTTIMEFORMAT='%F %T'" "內容,在/etc/profile中找到HISTSIZE項,並修改成10000。最後使用source命令執行文件,生效配置。
配置命令:
[root@oracle_pref ~]# vim /etc/bashrc
export HISTTIMEFORMAT='%F %T'" "
[root@oracle_pref ~]# vim /etc/profile
HISTSIZE=10000
[root@oracle_pref ~]# source /etc/bashrc
[root@oracle_pref ~]# source /etc/profile
歷史命令參數修改後可以使用history確認查看歷史命令格式是否正確,使用echo $HISTSIZE查看歷史命令最大保留數是否正確。
設置單個用戶最大的系統資源,保證系統不會由於單個用戶的操做而形成同系統中其餘用戶沒法正常做業。同時也保證了用戶由於默認資源使用過小致使的業務沒法正常使用故障。
配置說明:
在/etc/security/limits.conf文件中指定每一個用戶最大使用的關鍵性資源值,在/etc/security/limits.d/90-nproc.conf中指定單個用戶容許打開最大進程數。
nproc:用戶打開進程的最大數量
core:內核文件大小
nofile:用戶打開文件的最大數目
配置命令:
[root@oracle_pref ~]# vim /etc/security/limits.conf * soft nproc 65533 * hard nproc 65534 * soft core unlimited * hard core unlimited * soft nofile 65533 * hard nofile 65534 [root@oracle_pref ~]# vim /etc/security/limits.d/20-nproc.conf * soft nproc 65534 root soft nproc unlimited [root@oracle_pref ~]# sysctl -p
修改系統中的TIMEOUT時間,避免系統出現大量的TIME_WAIT狀態鏈接。
配置說明:
在/etc/sysctl.conf文件最後添加對內容,而後使用sysctl -p 命令生效配置,具體配置詳解以下:
net.ipv4.tcp_syncookies = 1
.標識開啓SYN Cookies。當出現SYNC等待隊列溢出時,啓用cookies來處理,可防範少許SYNC攻擊,默認爲1,標識關閉。
net.ipv4.tcp_tw_reuse = 1
.表示開啓重用。容許將TIME-WAIT sockets 從新用於新的TCP鏈接,默認爲0,表示關閉。
net.ipv4.tcp_tw_recycle = 1
.表示開啓TCP鏈接中TIME-WAIT sockets 的快遞迴收,默認爲0,表示關閉。
net.ipv4.tcp_fin_timeout = 30
.修改系統默認的TIMEOUT時間,默認爲60秒
配置命令:
[root@oracle_pref ~]# vim /etc/sysctl.conf net.ipv4.tcp_syncookies = 1 net.ipv4.tcp_tw_reuse = 1 net.ipv4.tcp_tw_recycle = 1 net.ipv4.tcp_fin_timeout = 30 [root@oracle_pref ~]# sysctl -p
使用sysctl -p 生效了配置事後,可以使用sysctl -a 查看修改是否成功。
file-max決定了當前內核能夠打開的最大的文件句柄數,系統全部進程一共能夠打開的文件數量。file-max設置太小,系統會提示"不能打開太多的文件"或者"沒法打開更多進行"。
配置說明:
file-max值肯定了系統能夠打開的文件數,最佳值爲內存(KB)大小的10%。而後在/etc/sysctl.conf中設置,最後使用sysctl -p 命令生效。cat /proc/sys/fs/file-max命令可查看配置是否生效。
配置命令:
[root@oracle_pref ~]# cat /proc/sys/fs/file-max [root@oracle_pref ~]# grep -r MemTotal /proc/meminfo | awk '{printf("%d",$2/10)}' //獲取最佳文件句柄值 [root@oracle_pref ~]# echo "fs.file-max = 1626660" >> /etc/sysctl.conf [root@oracle_pref ~]# sysctl -p
在Linux操做系統中使用sshd協議登陸操做系統。爲了安全起見系統設置root用戶不能遠程登錄,系統只可以經過普通用戶遠程登錄,而後經過sudo權限切換到root帳戶下進行操做。
配置說明:
在# vim /etc/ssh/sshd_config中把#PermitRootLogin yes修改成PermitRootLogin no最後重啓遠程服務。
配置命令:
[root@oracle_pref ~]# vim /etc/ssh/sshd_config PermitRootLogin yes UseDNS no # GSSAPI options #GSSAPIAuthentication no GSSAPIAuthentication no #GSSAPICleanupCredentials yes GSSAPICleanupCredentials no #GSSAPIStrictAcceptorCheck yes #GSSAPIKeyExchange no PubkeyAuthentication yes #啓用公告祕鑰配對認證方式 [root@oracle_pref ~]# service sshd restart
配置不容許root經過sshd直接登陸,用戶使用root權限須要經過普通用戶切換。
主機操做中,在不影響業務部署應用的狀況下,爲了方便對主機系統的管理,全部Centos 7.x系列主機均預裝以下工具。
軟件名 |
做用 |
net-tools |
網絡管理工具 |
lrzsz |
scp上傳下載文件 |
gcc* |
軟件編譯用 |
zip |
解壓zip壓縮文件 |
gzip |
解壓gz壓縮文件 |
bzip2 |
解壓bz2壓縮文件 |
ftp |
訪問ftp服務器 |
bash-completion |
操做系統命令補齊工具 |
vim |
文本編輯器 |
dmidecode |
獲取服務器硬件信息 |
wget |
linux訪問web,下載web數據 |
sshpass |
免密工具 |
配置說明:
在配置了yum源事後直接使用yum工具安裝以上軟件。
配置命令:
[root@oracle_pref ~]# yum install net-tools -y [root@oracle_pref ~]# yum install lrzsz -y [root@oracle_pref ~]# yum install gcc* -y [root@oracle_pref ~]# yum install zip -y [root@oracle_pref ~]# yum install gzip -y [root@oracle_pref ~]# yum install bzip2 -y [root@oracle_pref ~]# yum install ftp -y [root@oracle_pref ~]# yum install bash-completion -y [root@oracle_pref ~]# yum install vim –y [root@oracle_pref ~]# yum install dmidecode -y
[root@oracle_pref ~]# source /etc/profile.d/bash_completion.sh #執行腳本使系統命令自動補齊生效
全部軟件安裝安裝完成後建議重啓操做系統。
RHEL 7.x系列操做系統默認selinux和firewalld爲開啓狀態,業務方可根據需求進行配置修改或直接關閉。基礎運維人員不對主機安全配置作任何特殊操做。對於本身使用的機器建議關閉掉selinux,iptables可根據實際狀況肯定是否開啓及具體設置。
RHEL 7.x系列操做系統默認不開啓kdump功能,業務方可根據需求自行配置決定是否開啓該功能,在業務比較重要的服務器主機上建議開啓kdump尤爲是針對於物理機,能夠起到很好的故障判斷的做用。
設置用戶登陸系統時密碼錯誤輸入次數限制,當用戶連續輸入3次及以上的錯誤密碼時,鎖定帳戶180秒。
配置說明:
linux設置登陸策略須要在兩個文件中修改。
終端(KVM或直連顯示器):/etc/pam.d/system-auth
遠程(ssh): /etc/pam.d/sshd
分別在這兩個文件正式配置文件第一行,即#%PAM-1.0的下面。添加策略語句。
配置命令:
[root@oracle_pref ~]# vim /etc/pam.d/system-auth #%PAM-1.0 # This file is auto-generated. # User changes will be destroyed the next time authconfig is run. auth required pam_tally2.so onerr=fail deny=3 unlock=180 even_deny_root root_unlock_time=300 [root@oracle_pref ~]# cat /etc/pam.d/sshd #%PAM-1.0 auth required pam_tally2.so deny=3 unlock_time=300 even_deny_root root_unlock_time=30 onerr=fail
配置清單爲現網環境下基礎信息清單資料。按照生產系統的實際狀況填入數據。方便業務方或系統維護人員快速的掌握生產網中的基礎資源。
基礎資源包括dns、ntp、yum源、堡壘機等信息。信息以表格形式展現出來,提供運維人員查看使用。
資源名 |
資源地址 |
資源域名 |
DNS服務器 |
|
|
NTP服務器 |
|
|
YUM源服務器 |
|
|
ftp服務器 |
|
|
UID/GID信息記錄表記錄每一個業務方對應的操做系統帳號名及UID和GID號。每一個業務組在整個生產環境下有且只有一個用戶和惟一的UID。
在一套生產環境中應該爲每一個系統都設置一些固定的帳號,如系統管理員帳號、監控系統帳號等,使用列表的方式標註出來嗎,以方便維護人員對系統進行維護。
用戶表:
UID號 |
用戶名 |
業務公司 |
sudo |
做用 |
使用人 |
1000 |
yw_admin |
XXX公司 |
是 |
維護系統 |
全基礎運維組成員 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
組表:
GID號 |
組名 |
業務公司 |
做用 |
使用人 |
1000 |
yw_admin |
XXX公司 |
維護系統 |
全基礎運維組成員 |