1、關閉防火牆iptables:linux
(1)關閉
/etc/init.d/iptables stop
(2)檢查
/etc/init.d/iptables status
(3)設置開機不自動啓動
chkconfig iptables off
(4)檢查
chkconfig --list iptablesweb
2、關閉selinux(安全):shell
說明:永久生效,須要重啓計算機。
(1)檢查配置文件
cat /etc/selinux/config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - No SELinux policy is loaded.
SELINUX=enforcing
# SELINUXTYPE= can take one of these two values:
# targeted - Targeted processes are protected,
# mls - Multi Level Security protection.
SELINUXTYPE=targeted
(2)修改配置文件
sed -i "s#SELINUX=enforcing#SELINUX=disabled#g" /etc/selinux/config
(3)不重啓系統的臨時生效辦法
setenforce 0 #設置Permissive模式
getenforce #查生效狀況
(4)參數說明
# enforcing - SELinux security policy is enforced. 正常開啓
# permissive - SELinux prints warnings instead of enforcing. 打印警告,可是也是禁止了。
# disabled - No SELinux policy is loaded. 禁止狀態。vim
3、更改yum源:安全
(1)建立備份目錄
mkdir -p /etc/yum.repos.d/{default,back} ###記住,每次操做以前必定要備份!備份!備份!重要的事說三遍
(2)備份全部默認的配置文件
\mv /etc/yum.repos.d/*repo /etc/yum.repos.d/default
(3)獲取yum源
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
(4)備份yum源
\cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/defaultbash
4、精簡開機自啓動服務:服務器
(1)只保留重要的基礎服務,其他所有關閉
chkconfig --list|egrep -v "sysstat|crond|sshd|network|rsyslog"|awk '{print "chkconfig "$1,"off"}'|bash
(2)檢查
chkconfig --list|grep 3:oncookie
5、修改Linux服務器字符集:架構
(1)檢查配置文件
cat /etc/sysconfig/i18n
裏面默認應該有如下2行內容:
LANG="en_US.UTF-8" ###默認每次提示爲英文,若是不熟悉英語的小夥伴能夠進行下列操做
SYSFONT="latarcyrheb-sun16"
(2)備份配置文件
cp /etc/sysconfig/i18n{,.back}
(3)修改(此步選作)
說明:能夠將字符集修改成中文的,也能夠不修改。
echo 'LANG="zn_CN.UTF-8"' > /etc/sysconfig/i18n
echo 'SYSFONT="latarcyrheb-sun16"' >> /etc/sysconfig/i18n
(4)生效
source /etc/sysconfig/i18n
(5)檢查
echo $LANGdom
6、內核優化:
(1)修改配置文件/etc/sysctl.conf,添加以下內容(直接一次性複製如下全部內容,在命令行裏粘貼執行便可)
cat >>/etc/sysctl.conf<<EOF
net.ipv4.tcp_fin_timeout = 2
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_keepalive_time = 600
net.ipv4.ip_local_port_range = 4000 65000
net.ipv4.tcp_max_syn_backlog = 16384
net.ipv4.tcp_max_tw_buckets = 36000
net.ipv4.route.gc_timeout = 100
net.ipv4.tcp_syn_retries = 1
net.ipv4.tcp_synack_retries = 1
net.core.somaxconn = 16384
net.core.netdev_max_backlog = 16384
net.ipv4.tcp_max_orphans = 16384
#如下參數是對iptables防火牆的優化,防火牆不開會提示,能夠忽略不理。
net.nf_conntrack_max = 25000000
net.netfilter.nf_conntrack_max = 25000000
net.netfilter.nf_conntrack_tcp_timeout_established = 180
net.netfilter.nf_conntrack_tcp_timeout_time_wait = 120
net.netfilter.nf_conntrack_tcp_timeout_close_wait = 60
net.netfilter.nf_conntrack_tcp_timeout_fin_wait = 120
EOF
(2)生效
sysctl -p
7、時間同步:(工做中時間同步很重要,很是重要!)
(1)配置
echo '#time sync by oldboy at 2018-04-26' >> /var/spool/cron/root
echo '*/5 * * * * /usr/sbin/ntpdate ntp1.aliyun.com >/dev/null 2>&1' >> /var/spool/cron/root
###通常以阿里雲時間服務器爲基準,如下地址可本身選擇:
ntp1.aliyun.com
ntp2.aliyun.com
ntp3.aliyun.com
ntp4.aliyun.com
ntp5.aliyun.com
ntp6.aliyun.com
ntp7.aliyun.com
(2)檢查
crontab -l
(3)備份
\cp /var/spool/cron/root{,.back}
8、加大文件描述:
(1)配置
echo '* - nofile 65535 ' >>/etc/security/limits.conf
(2)檢查
tail -1 /etc/security/limits.conf
(3)備份
\cp /etc/security/limits.conf{,.back}
9、下載安裝系統基礎軟件:
yum install -y lrzsz nmap tree dos2unix nc ###一些基礎軟件會在集羣架構中常常用到
10、配置hosts文件:
說明:期中集羣架構的域名解析均使用內網IP,基礎服務共涉及差很少9臺服務器
(1)修改
cat >/etc/hosts<<EOF
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
172.16.1.5 lb01
172.16.1.6 lb02
172.16.1.7 web01
172.16.1.8 web02
172.16.1.9 web03
172.16.1.51 db01
172.16.1.31 nfs01
172.16.1.41 backup
172.16.1.61 m01
EOF
(2)備份
\cp /etc/hosts{,.back}
11、處理/etc/bashrc以及/root/.bashrc:
(1)備份配置文件
\cp /etc/bashrc{,.back}
(2)處理/etc/bashrc
編輯配置文件/etc/bashrc(vim /etc/bashrc),
把這個文件的第36行註釋掉,
而後在剛剛註釋掉的第36行下面另起一行,添加如下內容:
[ "$PS1" = "\\s-\\v\\\$ " ] && PS1="[\[\e[34;1m\]\u@\H\[\e[0m\] \[\e[31;1m\]\w\[\e[0m\] \[\e[32;1m\]\t\[\e[0m\]]\\$ "
注意,上面那一行很長,必需要一點不差的複製粘貼進去,而且中間不能出現回車,只能有空格,必定要注意檢查!!!
使之生效:source /etc/bashrc
查看效果:按組合鍵ctrl+d,而後從新登陸系統。
###咯,差很少就上面這樣,我一老師寫的,感受挺方便的,不用隨時pwd看路徑和位置,在企業中尤爲管用
(3)處理/etc/bashrc
修改配置文件/root/.bashrc(vim /root/.bashrc),
在最後一行alias下面添加如下2行內容:
alias grep='grep --color'
alias egrep='egrep --color'
保存並退出;
使之生效:. /root/.bashrc
注意:此處的點號(.)是一個命令,此命令等價於source命令。
12、添加一個用戶:
(1)添加
useradd oldboy
(2)檢查
id oldboy
(3)設置密碼
echo 123456|passwd --stdin oldboy
十3、提權給新建的用戶(解釋一下,由於root 用戶知道的人太多了,都知道是超級管理員,爲了企業的安全,從新設置一個用戶)
將oldboy添加到sudo管理,之後oldboy就至關於管理員
(1)備份
\cp /etc/sudoers{,.back}
(2)修改
echo "oldboy ALL=(ALL) NOPASSWD: ALL " >> /etc/sudoers
(3)檢查
tail -1 /etc/sudoers
(4)生效
visudo -c
###此時的oldboy權限至關於root用戶
十4、優化SSH遠程鏈接:
(1)備份配置文件
cp /etc/ssh/sshd_config{,.back}
(2)修改配置文件
編輯ssh服務的配置文件(vim /etc/ssh/sshd_config),在第12行下面添加以下內容:
####Start by oldboy#2018-04-26###
Port 52113 ###一樣爲了安全,更改登陸端口
PermitRootLogin no
PermitEmptyPasswords no
UseDNS no
GSSAPIAuthentication no
####End by oldboy#2018-04-26###
(3)檢查
grep -A 5 -i 'Start by oldboy' /etc/ssh/sshd_config
(4)重啓ssh服務
/etc/init.d/sshd restart
(5)檢查
netstat -lntup | grep ssh
(6)配置說明
####Start by oldboy#2018-04-26###
Port 52113 #使用大於10000的端口號
PermitRootLogin no #禁止root遠程登陸
PermitEmptyPasswords no #禁止空密碼登陸
UseDNS no #不使用dns解析
GSSAPIAuthentication no #鏈接慢的解決配置
####End by oldboy#2018-04-26###
十5、xshell鏈接
########################################################################################################
企業中:若是學習的話上面優化差很少了,固然企業實戰中還能夠作隱藏Linux版本信息展現;鎖定關鍵系統文件,防止被提權篡改;爲grub菜單加密碼;禁ping等