溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Linux基礎(chǔ)優(yōu)化與安全歸納的示例分析

發(fā)布時(shí)間:2021-11-08 10:57:58 來(lái)源:億速云 閱讀:125 作者:小新 欄目:建站服務(wù)器

這篇文章主要介紹Linux基礎(chǔ)優(yōu)化與安全歸納的示例分析,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

                

第一點(diǎn):Linux的管理盡量不用root用戶,利用sudo命令來(lái)控制普通用戶對(duì)系統(tǒng)的管理

新建一個(gè)用戶,使用sudo命令添加權(quán)限,詳細(xì)操作步驟如下:

(1)添加新的用戶: useradd 新的用戶名

(2)檢查是否已成功添加:id 新的用戶名

(3)設(shè)置該用戶的密碼:echo 123321|passwd --stdin 新的用戶名

接下來(lái)需將新的用戶添加管理員權(quán)限,這個(gè)新的用戶就相當(dāng)于管理員

(4)備份之前的權(quán)限文件:\cp /etc/sudoers{,.back}

(5)將新的用戶添加管理員權(quán)限:

echo "新的用戶名 ALL=(ALL) NOPASSWD: ALL " >> /etc/sudoers

(6)檢查是否已成功添加:tail -1 /etc/sudoers

(7)配置生效:visudo -c

待以上操作完畢,那么此時(shí)的新的用戶權(quán)限等同于root用戶。

第二點(diǎn):更改默認(rèn)的遠(yuǎn)程連接SSH服務(wù)端口

(1)修改配置文件/etc/ssh/sshd_config

Port 22,改為Port 52113(范圍——65535);##默認(rèn)端口為22

ListenAddress 0.0.0.0,改為L(zhǎng)istenAddress 內(nèi)網(wǎng)IP地址;##監(jiān)聽(tīng)內(nèi)網(wǎng)ip地址

PermitRootLogion yes,改為PermitRootLogion no;##root用戶遠(yuǎn)程連接)

(2)重啟生效:/etc/init.d/sshd reload

(3)查看端口狀態(tài):netstat -lntup|grep sshd

 

第三點(diǎn):定時(shí)自動(dòng)更新服務(wù)器時(shí)間,使其和互聯(lián)網(wǎng)時(shí)間同步

(1)配置

echo '#time sync by 新的用戶名 at 2019-04-01' >> /var/spool/cron/root

echo '/5 /usr/sbin/ntpdate ntp1.aliyun.com >/dev/null 2>&1' >> /var/spool/cron/root

###每5分鐘執(zhí)行一次同步

###至于以哪個(gè)時(shí)間服務(wù)器為基準(zhǔn),以下地址可自己選擇:

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}

第四點(diǎn):配置yum配置源

(1)創(chuàng)建備份文件存放目錄

Mkdir -p /etc/yum.repos.d/{default,back}

(2)備份所有默認(rèn)的配置文件

\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/default

第五點(diǎn):關(guān)閉selinux及iptables

(1)關(guān)閉iptables:/etc/init.d/iptables stop

(2)檢查是否已關(guān)閉:/etc/init.d/iptables status

(3)設(shè)置開(kāi)機(jī)不自動(dòng)啟動(dòng):chkconfig iptables off

(4)確認(rèn)配置:chkconfig --list iptables

(5)關(guān)閉selinux:

sed -i "s#SELINUX=enforcing#SELINUX=disabled#g" /etc/selinux/config

(6)查看并確認(rèn)配置:cat /etc/selinux/config

備注:永久生效,需要重啟計(jì)算機(jī)。(在工作場(chǎng)景中,如果有外部IP一般要打開(kāi)iptables)

第六點(diǎn):適當(dāng)調(diào)整文件描述符的數(shù)量

鑒于進(jìn)程及文件的打開(kāi)都會(huì)消耗文件描述符,所以在運(yùn)維過(guò)程中我們要調(diào)整下文件描述符的數(shù)量,表示形式為整數(shù)數(shù)字(——65535)。

查看默認(rèn)文件描述符:ulimit –n   ###一般默認(rèn)為1024

在/etc/sercurity/limits.conf里面配置:

echo '* - nofile 65535' >>/etc/security/limits.conf

tail -1 /etc/security/limits.conf

第七點(diǎn):定時(shí)自動(dòng)清理郵件目錄垃圾文件

防止inodes節(jié)點(diǎn)被占滿。

第八點(diǎn):精簡(jiǎn)并保留必要的開(kāi)機(jī)自啟動(dòng)服務(wù)

(1)只保留重要的基礎(chǔ)服務(wù),其余全部關(guān)閉

chkconfig --list|egrep -v "sysstat|crond|sshd|network|rsyslog"|awk '{print "chkconfig "$1,"off"}'|bash

(2)確認(rèn)配置:chkconfig --list|grep 3:on

第八點(diǎn):優(yōu)化Linux內(nèi)核參數(shù)

(1)配置文件/etc/sysctl.conf,添加如下命令(可直接復(fù)制粘貼)

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

以下參數(shù)是對(duì)iptables防火墻的優(yōu)化,防火墻關(guān)閉的情況下會(huì)提示,可以略過(guò)提示。

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

第九點(diǎn):配置字符集

(1)查看配置文件:cat /etc/sysconfig/i18n

里面默認(rèn)應(yīng)該有以下2行內(nèi)容:

LANG="en_US.UTF-8"      ###默認(rèn)提示為英文

(2)先備份配置文件:cp /etc/sysconfig/i18n{,.back}

(3)修改配置文件:

說(shuō)明:此項(xiàng)可將字符集修改為中文,也可不做修改。

echo 'LANG="zn_CN.UTF-8"' > /etc/sysconfig/i18n

echo 'SYSFONT="latarcyrheb-sun16"' >> /etc/sysconfig/i18n

(4)配置生效:source /etc/sysconfig/i18n

(5)確認(rèn)配置是否成功:echo $LANG

第十點(diǎn):鎖定關(guān)鍵性系統(tǒng)文件,防止被篡改

配置命令:

chattr +i /etc/{passwd,shadow,group,gshadow}

lsattr -a /etc/{passwd,shadow,group,gshadow}

解除鎖定命令:chattr -i

第十一點(diǎn):禁止系統(tǒng)被ping

配置命令:echo "net.ipv4.icmp_echo_ignore_all=1" >> /etc/sysctl.conf

配置生效命令:sysctl -p

第十二點(diǎn):升級(jí)漏洞軟件

查看相關(guān)軟件的版本號(hào):rpm -qa openssl openssh bash

執(zhí)行升級(jí):yum install openssl openssh bash

第十三點(diǎn):優(yōu)化SSH遠(yuǎn)程連接

(1)先備份配置文件:cp /etc/ssh/sshd_config{,.back}

(2)編輯ssh服務(wù)配置文件

編輯ssh服務(wù)的配置文件(vim /etc/ssh/sshd_config),在第12行下面添加如下內(nèi)容:

Port 52113                 #使用大于10000的端口號(hào)

PermitRootLogin no          #禁止root遠(yuǎn)程登錄

PermitEmptyPasswords no     #禁止空密碼登錄

UseDNS no                 #不使用dns解析

GSSAPIAuthentication no      #連接慢的解決配置

(3)確認(rèn)配置:grep -A 5 -i 'Start by 新的用戶名' /etc/ssh/sshd_config

(4)重啟ssh服務(wù):/etc/init.d/sshd restart

(5)確認(rèn)配置是否成功:netstat -lntup | grep ssh

以上是“Linux基礎(chǔ)優(yōu)化與安全歸納的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI