Linux系統初級優化

系統參數優化和怎樣增強系統安全性,系統默認的一些參數都是比較保守的,所以我們可以通過調整系統參數來提高系統內存、CPU、內核資源的占用,通過禁用不必要的服務、端口,來提高系統的安全性,更好的發揮系統的可用性。通過自己對Linux了解。首先在系統優化之前需要秉循的四個最小化原則:

a 安裝軟件最小化

b 目錄文件權限最小化

c 用戶權限最小化

d 程序運行權限最小化
-----------------------------------------------------------------------------------------------------------------------------------------------------------
1、系統安裝最小化
在搭建服務器的linux系統的時候,盡量不要安裝那些不需要的服務,一個是安裝越多風險越大,其次是安裝的越多,對服務器資源的消耗越大。
所以安裝服務器linux,選擇最小化安裝,需要一些基礎的安裝包即可,后期需要什么,通過yum等工具都可以安裝。
2、修改主機名
[root@ladeng~]#?vi?/etc/sysconfig/network?
HOSTNAME=test.com?
[root@ladeng~]#?hostname?test.com??#臨時生效?

3、關閉SELinux

[root@ladeng~]# vi /etc/selinux/config
SELINUX=disabled
[root@ladeng~]# setenforce 0 #臨時生效
[root@ladeng~]# getenforce #查看selinux狀態

4、添加普通用戶并進行sudo授權管理

[root@ladeng~]# useradd user
[root@ladeng~]# echo "123456" | passwd --stdin user #設置密碼
[root@ladeng~]# vi /etc/sudoers #或visudo打開,添加user用戶所有權限
root ALL=(ALL) ALL
user ALL=(ALL) ALL

5、修改ssh登錄端口號并禁用root遠程登錄

[root@ladeng~]# vi /etc/ssh/sshd_config
Port 52113
PermitRootLogin no
PermitEmptyPasswords no #禁止空密碼登錄
PasswordAuthentication yes
GSSAPIAuthentication no
UseDNSno #關閉DNS查詢

?

6、定時自動更新服務器時間

[root@moban ~]# crontab -l
#time sync by oldboy at 2010-2-1
*/5 * * * * /usr/sbin/ntpdate time.nist.gov >/dev/null 2>&1

?

7、配置yum更新源,從國內更新源下載安裝rpm包

[root@c64 yum.repos.d]# /bin/mv CentOS-Base.repo CentOS-Base.repo.bak
[root@c64 yum.repos.d]# wget http://mirrors.163.com/.help/CentOS6-Base-163.repo

?

8、關閉iptables并重新制定iptables規則

?

9、調整文件描述符大小

[root@ladeng ~]# ulimit –n #默認是1024
1024
[root@ladeng ~]# echo "ulimit -SHn 102400">> /etc/rc.local #設置開機自動生效

?

10、定時自動清理/var/spool/clientmqueue/目錄垃圾文件,防止inodes節點被占滿(C5版本需要,C6不需要)

11、精簡開機自啟動服務

?

12、刪除不必要的系統用戶

?

13、關閉重啟ctl-alt-delete組合鍵

[root@ladeng ~]# vi /etc/init/control-alt-delete.conf
#exec /sbin/shutdown -r now "Control-Alt-Deletepressed" #注釋掉

?

14、內核參數優化

[root@ladeng ~]# vi /etc/sysctl.conf #末尾添加如下參數
net.ipv4.tcp_syncookies = 1 #1是開啟SYN Cookies,當出現SYN等待隊列溢出時,啟用Cookies來處,理,可防范少量SYN攻擊,默認是0關閉
net.ipv4.tcp_tw_reuse = 1 #1是開啟重用,允許講TIME_AIT sockets重新用于新的TCP連接,默認是0關閉
net.ipv4.tcp_tw_recycle = 1 #TCP失敗重傳次數,默認是15,減少次數可釋放內核資源
net.ipv4.ip_local_port_range = 4096 65000 #應用程序可使用的端口范圍
net.ipv4.tcp_max_tw_buckets = 5000 #系統同時保持TIME_WAIT套接字的最大數量,如果超出這個數字,TIME_WATI套接字將立刻被清除并打印警告信息,默認180000
net.ipv4.tcp_max_syn_backlog = 4096 #進入SYN寶的最大請求隊列,默認是1024
net.core.netdev_max_backlog = 10240 #允許送到隊列的數據包最大設備隊列,默認300
net.core.somaxconn = 2048 #listen掛起請求的最大數量,默認128
net.core.wmem_default = 8388608 #發送緩存區大小的缺省值
net.core.rmem_default = 8388608 #接受套接字緩沖區大小的缺省值(以字節為單位)
net.core.rmem_max = 16777216 #最大接收緩沖區大小的最大值
net.core.wmem_max = 16777216 #發送緩沖區大小的最大值
net.ipv4.tcp_synack_retries = 2 #SYN-ACK握手狀態重試次數,默認5
net.ipv4.tcp_syn_retries = 2 #向外SYN握手重試次數,默認4
net.ipv4.tcp_tw_recycle = 1 #開啟TCP連接中TIME_WAIT sockets的快速回收,默認是0關閉
net.ipv4.tcp_max_orphans = 3276800 #系統中最多有多少個TCP套接字不被關聯到任何一個用戶文件句柄上,如果超出這個數字,孤兒連接將立即復位并打印警告信息
net.ipv4.tcp_mem = 94500000 915000000 927000000
net.ipv4.tcp_mem[0]:低于此值,TCP沒有內存壓力;
net.ipv4.tcp_mem[1]:在此值下,進入內存壓力階段;
net.ipv4.tcp_mem[2]:高于此值,TCP拒絕分配socket。內存單位是頁,可根據物理內存大小進行調整,如果內存足夠大的話,可適當往上調。上述內存單位是頁,而不是字節。

?

15、去除系統相關信息

[root@ladeng ~]# >/etc/issue
[root@ladeng ~]# >/etc/redhat-release

?

16、鎖定關鍵系統文件

chattr +i /etc/passwd /etc/shadow /etc/group /etc/gshadow

做完之后重啟、搞定收工。

?

轉載于:https://www.cnblogs.com/ladeng/p/4838438.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/272913.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/272913.shtml
英文地址,請注明出處:http://en.pswp.cn/news/272913.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

python3 selenium安裝教程_Python3爬蟲利器之Selenium的安裝

Selenium是一個自動化測試工具,利用它我們可以驅動瀏覽器執行特定的動作,如點擊、下拉等操作。對于一些JavaScript渲染的頁面來說,這種抓取方式非常有效。下面我們來看看Selenium的安裝過程。1. 相關鏈接官方網站:http://www.sele…

【原創】SQlServer數據庫生成簡單的說明文檔小工具(附源碼)

這是一款簡單的數據庫文檔生成工具,主要實現了SQlServer生成說明文檔的小工具,目前不夠完善,主要可以把數據庫的表以及表的詳細字段信息,導出到Word中,可以方便開發人員了解數據庫的信息或寫技術說明文檔。技術上主要采…

php導出excel時間錯誤(同一個時間戳,用date得到不同的時間)

通過在date之前設置時區解決了 date_default_timezone_set("Asia/Shanghai"); $schedule_time date("Y-m-d H:i:s", 1443234565);轉載于:https://www.cnblogs.com/bushe/p/4840463.html

封裝成vla函數_第四章:Python之函數

第一節:函數入門與定義函數理解函數所謂函數,就是為一段實現特定功能的代碼“取”個名字,以后即可通過該名字來執行(調用)這段代碼從邏輯上看,函數相當于一個黑匣子定義函數的語法定義函數的三條鐵律函數需要幾個關鍵的、需要動態…

sqlhelper中事務的簡單用法(初學者)

自己的博客sql1"INSERT INTO tablename(Id,col1,col2) VALUES(Id,col1,col2) update tablename2 set colcol";sql2"INSERT INTO tablename3(Id,col1,col2) VALUES(Id,col1,col2)";//參數設置(略)using(SqlTransaction tran SqlHel…

allegro大十字光標設置方法

使用大十字光標,在擺放元器件時,容易對齊。在allegro中,可以通過設置實現大十字光標,其具體方法如下: 1、選擇Setup->User Perferences,即可出現如下圖所示界面: 2、選擇Display-…

基于.NET平臺常用的框架整理(收藏)

目錄 分布式緩存框架 日志記錄異常處理 關于NoSQL數據庫 自動任務調度框架 依賴注入IOC容器框架 常用的幾個ORM框架 格式和數據類型轉換 反射和動態語言 跨平臺和運行時解決方案 WEB開發和設計 移動互聯網和云計算 網絡通信和網絡協議 圖形和圖像處理框架 桌面應用程序框架 測試…

界址點號_界址點及四至優化

先對文中提到的面做一個解釋,他可以指地塊,宗地。一、界址點先說一下對界址點優化的情況,之前的方法主要是只要考慮了對坐標排序的問題,對于比較規整的面出的效果還是挺好,但往往現實中的面都比較復雜,像下…

java程序 輸入10個數字并求和

課程作業: 模仿JavaAppArguments.java示例,編寫編寫一個程序,此程序從命令行接受多個數字,求和之后輸出結果。 設計思想: 先從命令行讀出數字,然后計算各個數字之和。求出結果。 流程圖: 程序源…

是先打工還是直接創業?答案讓我驚呆了!

第一問:成功路上,您是自己亂走,還是有老師指導更好?人生路上,因為有父母,才有生命;成功路上,因為有老師,才有方向。父母優秀,才可以培養出優秀的孩子。優秀的…

php mysql保存unicode_使用PHP和MySQL存儲和顯示unicode字符串(??????)

我必須將PST文本存儲在MySQL數據庫中,使用PHP腳本獲取它并將其顯示在網頁上。我做了以下:我創建了一個數據庫,并將其編碼設置為UTF-8,并將排序規則設置為utf8_bin。我在表中添加了一個varchar字段,并將其設置為在chars…

最近和朋友微信賣螃蟹有點偏離重心了

副業不能占據你的全部時間,應該是堅持最初的路~不然最后什么都是淺嘗輒止~太極拳心態~轉載于:https://www.cnblogs.com/jackwong/p/4841863.html

科學家公布“壽命計算器”,快算一下你能活多久?

為什么有的人能活到100歲?為什么有的人卻早早離世?到底是什么影響著我們的壽命?美國坦普爾大學神經學系伍得拉夫教授對長壽者進行了數十年的跟蹤考察,推出下面這套“長壽測試題”(又稱“壽命計算器”)&…

csv導入mysql linux_如何將CSV文件導入MySQL表

如何將CSV文件導入MySQL表我有一個未規范化的事件-來自客戶端的日記CSV,我試圖將它加載到MySQL表中,以便將其重構為正常的格式。我創建了一個名為“CSVImport”的表,該表對CSV文件的每一列都有一個字段。CSV包含99列,因此這本身是…

代碼復審結果

說明:因為本次一些特殊的原因,我與一位韓國留學生同學、以及六班的一位同學一起結對編程。 General (N) Does the code work? Does it perform its intended function, the logic is correct etc.兩位結對的伙伴的代碼都只能實現需求功能中的一部分&…

MVC知識點整理匯總

MVC與ASP.NET MVC基礎概念MVC是Model-View-Controller的縮寫.MVC將應用程序劃分為3大組件:模型\視圖\控制器.MVC不是ASP.NET所特有,它只是一種開發理念.java中的struts2也是一種MVC模型.ASP.NET MVC從2008年發布1.0版以來,截至2014年ASP.NET MVC最新版本已經是5.0.ASP.NET MVC從…

二進制編譯安裝mysql_數據庫(MySQL)二進制安裝+編譯安裝 + MariaDB編譯安裝

配置文件:my.cnf[mysql] :只用于mysql這個客戶端[mysqld][client]:共享與所有客戶端,如mysqldump等MySQL二進制包安裝:(在 mysql/下有個 INSTALL-BINARY 是安裝教程)1、下載通用二進制安裝包 mysql-5.5.33-linux2.6-x86.64.tar.gz…

第三次作業——結對編程

成員:031302439 031302415 本次實踐中我們是用phpmysql來實現所需功能的,其中使用到的軟件有PowerDesigner和WampServer 一. PowerDesigner使用過程 1. 運行程序,進入主界面,新建一個Model,設置DBMS屬性。我們…

NET比較常用的性能優化技巧

現在很多客戶也慢慢開始注重網站的性能了,同時有很多運營網站的公司也不像以前那樣特別在意網站是否非常漂亮,而把更多的精力放在了網站性能優化上面,提供更快更穩定的瀏覽速度,在這個基礎上面進行網站功能上的擴充和完善&#xf…

嵌入式控制系統和計算機系統

在嵌入式項推薦一本書:嵌入式系統設計(重慶大學出版社,在船上鵬)。我最近也看了一些好的內容,結合操作系統和一些嵌入式知識的原則,構成我們學習的經驗教訓有前前,對于某些以下總結,…