Linux系統安全加固腳本

閑來無事,整理一個系統安全加固腳本,每個公司的要求不一樣,所以僅供參考:



#!/bin/sh

echo "00 */1 * * * ?/usr/sbin/ntpdate 192.168.1.1 >>/var/log/ntpdate.log" > mycrontab

crontab ?mycrontab

rm -rf mycrontab

/usr/sbin/ntpdate 192.168.1.1


cp ?/etc/sysconfig/i18n ?/etc/sysconfig/i18n.bak

echo > ?/etc/sysconfig/i18n

echo LANG="zh_CN.GB18030" >> /etc/sysconfig/i18n?

echo LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN" >> /etc/sysconfig/i18n?

echo SUPPORTED="zh_CN.UTF-8:zh_CN:zh:en_US.UTF-8:en_US:en" >> /etc/sysconfig/i18n?

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



#echo "root:xbbwlcUoKjF7" | chpasswd

useradd weblogic

echo "weblogic:weblogic" | chpasswd



history -c?


# 接收套接字緩沖區大小的缺省值

echo "net.core.rmem_default = 2569600" >>/etc/sysctl.conf

# 最大的TCP數據接收緩沖

echo "net.core.rmem_max = 2569600" >>/etc/sysctl.conf

# 發送套接字緩沖區大小的缺省值


echo "net.core.wmem_default = 2569600" >>/etc/sysctl.conf

# 最大的TCP數據發送緩沖


echo "net.core.wmem_max = 2569600" >>/etc/sysctl.conf

# 時間戳在(請參考RFC 1323)TCP的包頭增加12個字節


echo "net.ipv4.tcp_timestamps = 0" >>/etc/sysctl.conf

# 有選擇的應答


echo "net.ipv4.tcp_sack = 1" >>/etc/sysctl.conf

# 支持更大的TCP窗口. 如果TCP窗口最大超過65535(64K), 必須設置該數值為1?


echo "net.ipv4.tcp_window_scaling = 1" >>/etc/sysctl.conf

# 開啟keepalive的閑置時長


echo "net.ipv4.tcp_keepalive_time = 600" >>/etc/sysctl.conf



echo "kernel.sem = 500 64000 200 256" >>/etc/sysctl.conf

# 文件句柄


echo "fs.file-max = 65536" >>/etc/sysctl.conf

echo "net.ipv4.ip_local_port_range = 1024 65000" >>/etc/sysctl.conf

# 當本地系統向外發起tcp或udp連接請求時使用的端口范圍



sysctl -p



cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak

sed -i "s/#PermitRootLogin yes/PermitRootLogin no/" /etc/ssh/sshd_config


#當普通用戶登錄時,密碼輸入錯誤三次,系統馬上把該用戶鎖定,需要120s后重新登錄

cp /etc/pam.d/system-auth /etc/pam.d/system-auth.bak

auth required pam_tally2.so deny=3 onerr=fail no_magic_root unlock_time=120

?

#由于遠程是可以通過普通用戶登錄,所以給所有普通用戶設置密碼時,至少有一個特殊字符、大寫字母、小寫字母、最小長度為8位

password requisite /lib/security/$ISA/pam_cracklib.so retry=3 difok=5 ?ocredit=-1 dcredit=-1 ucredit=-1 ?minlen=8


#設置密碼過期的時間最多天數,新建用戶是,用戶可以修改的天使,密碼的最短長度(前面已經設置可以不設置),密碼過期的警告天數。

cp /etc/login.defs /etc/login.defs.bak

sed -i 's/PASS_MAX_DAYS.* ? 99999/PASS_MAX_DAYS ? 90/' /etc/login.defs?

sed -i 's/PASS_MIN_DAYS.* ? 0/PASS_MIN_DAYS ? 7/' /etc/login.defs?

sed -i 's/PASS_MIN_LEN.* ? ?5/PASS_MIN_LEN ? ?8/' /etc/login.defs?


#關閉DNS

cp ?/etc/resolv.conf /etc/resolv.conf.bak

echo 'nameserver 210.22.84.3' > /etc/resolv.conf


#備份環境變量文件

cp ?/etc/profile /etc/profile.bak



echo export TMOUT=600 >> /etc/profile ?#增加60S超時退出

echo export HISTTIMEFORMAT=\'%F %T \' >> /etc/profile ? ?#記錄操作歷史記錄的時間

echo export HISTFILESIZE=10000 >> /etc/profile

echo export HISTSIZE=10000 >> /etc/profile



#修改系統文件最大打開數

echo -e "* soft ?nofile = 32768 \n* hard ?nofile = 65536" >> /etc/security/limits.conf


#計劃任務

mkdir ~/Shell

echo -e " #!/bin/bash \n sync \n echo 3 > /proc/sys/vm/drop_caches" > ~/Shell/MemcacheClean.sh

echo "00 03 * * * /Shell/MemcacheClean.sh" > ~/Shell/mycrontab

crontab ~/Shell/mycrontab



#關閉selinux

sed '7s/enforcing/disabled/g' /etc/sysconfig/selinux -i


#關閉火墻

iptables -F

/etc/init.d/iptables save >> /dev/null




service sshd restart?

history -c


本文轉自青衫解衣 51CTO博客,原文鏈接:http://blog.51cto.com/215687833/1755103

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

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

相關文章

[轉載] 整理下java中stringBuilder和stringBuffer兩個類的區別

參考鏈接: Java中的StringBuffer類 StringBuilder和StringBuffer這兩個類在動態拼接字符串時常用,肯定比String的效率和開銷小,這是因為String的對象不會回收哦。 其實我一直用StringBuilder這個類,因為可以簡寫為sb的變量在程序…

11.13 模10計數器設計

.新建一個工程 Family:FLEX10K Available device:EPF10K20TC144-3 2.設置lpm_counter宏單元參數并連接引腳 連接引腳的時候要注意的是,向量線的連接。 3.時序仿真 檢查無誤后進行下一步 4.載入7448并進行引腳連接 5.分配管腳 再次編譯&#x…

[轉載] java對象在內存中的結構

參考鏈接: 了解Java中的類和對象 今天看到一個不錯的PPT:Build Memory-efficient Java Applications,開篇便提出了一個問題,在Hotspot JVM中,32位機器下,Integer對象的大小是int的幾倍? 我們…

使用valueOf前必須進行校驗

每個枚舉都是java.lang.Enum的子類,都可以訪問Enum類提供的方法,比如hashCode(),name(),valueOf()等..... 其中valueOf()方法會把一個String類型的名稱轉變為枚舉項,也就是枚舉項中查找出字面值與該參數相等的枚舉項,雖然這個方法很簡單,但是JDK卻做了一個對于開發人員來說并不…

[轉載] 【Java】Java基礎知識及其擴展筆記(8千字)

參考鏈接: Java中的StringBuilder類及其示例 Java基礎知識及其擴展筆記 零 l 寫在前面一 l JVM1、【1.1.2.1】java程序運行的一般流程2、【1.1.2.1】JVM一般運行流程3、【1.1.2.1】JIT(just in time 即時編譯編譯器)4、堆與棧 二 l Java …

多IDC GSLB的部署

之前已經介紹過GSLB的實現原理,這里再向大家講述一下GSLB經常遇到的部署方式,多IDC的部署。很多大型的企業或業務容災要求非常高的客戶都會部署有多個異地的數據中心,以保證其業務的“全天候”不間斷的正常運行,而要整合多個IDC的…

[轉載] Controller報錯:java.lang.NoSuchMethodException: java.util.List.<init>()

參考鏈接&#xff1a; Java8中的java.util.StringJoiner 報錯詳情&#xff1a; java.lang.NoSuchMethodException: java.util.List.<init>() 以及 No primary or default constructor found for interface java.util.List 示例&#xff1a; /** * 此接口會產生以…

[轉載] 算法競賽中的JAVA使用筆記

參考鏈接&#xff1a; Java中StringTokenizer類的示例| 1(構造函數) 算法競賽中的JAVA使用筆記 算法競賽中的JAVA使用筆記 輸入與輸出 基本輸入輸入掛輸出控制臺輸入輸出重定向到文件 大整數與高精度 大整數BigInteger高精度BigDecimal高精度開方 字符串與進制轉換 字符串基本…

信息系統開發平臺OpenExpressApp:【OpenTest】 之 語法及其使用介紹

在OpenTest 之 運行環境準備中介紹了運行自動化測試需要做的一些準備工作&#xff0c;本篇將繼續給大家介紹OpenTest的腳本語法以及使用方法&#xff0c;通過學習后讀者應該能夠開始動手編寫UI自動化測試腳本了。 關鍵字驅動測試 在學習語法之前&#xff0c;需要了解一下關鍵字…

[轉載] java常量池-字符串常量池、class常量池和運行時常量池

參考鏈接&#xff1a; 如何在Java中初始化和比較字符串 原文鏈接&#xff1a;http://tangxman.github.io/2015/07/27/the-difference-of-java-string-pool/ 在java的內存分配中&#xff0c;經常聽到很多關于常量池的描述&#xff0c;我開始看的時候也是看的很模糊&#xff0c…

Oracle 10g 高級安裝圖文教程(二)

第八步&#xff1a;為了簡便起見&#xff08;工作中肯定不安全&#xff09;&#xff0c;選擇“所有的帳戶都是用同一個口令”&#xff0c;并輸入口令&#xff0c;點擊“下一步”&#xff1a;本文轉自 victoryan 51CTO博客&#xff0c;原文鏈接:http://blog.51cto.com/victoryan…

[轉載] StringBuffer和StringBuilder類

參考鏈接&#xff1a; Java中的String vs StringBuilder vs StringBuffer 下述文章資料來源于&#xff1a; W3CSCHOOL離線版的Java教程 Java JDK 6.0開發手冊 Java開發從入門到精通(陳小玉版) StringBuffer和String選擇的異同 StringBuffer在進行字符串處理時&#xff0c;不…

sharepoint 2007功能增強解決方案,資料收集

一、關于QuickFlow&#xff0c;sharepoint可視化工作流增強包 http://www.cnblogs.com/jianyi0115/tag/QuickFlow/default.html?page1 http://quickflow.codeplex.com/ 二、關于SharePoint Permission Extension&#xff0c;視圖、列表字段權限功能增強 http://sppex.codeplex…

[轉載] 面試題:說說Java中接口、類、成員變量、成員方法、構造方法有哪些訪問修飾符和他們的作用范圍

參考鏈接&#xff1a; Java中的訪問修飾符 * 問題&#xff1a;說說Java中接口、類、成員變量、成員方法、構造方法有哪些訪問修飾符和他們的作用范圍 * 答&#xff1a;接口的訪問修飾符只有public 1個 * 類的訪問修飾符有public和默認(就是不寫的)2個 * 成員方法的訪問修…

使用IHttpHandler做權限控制[ASP.NET | IHttpHandler | AjaxPro | UserHostName]

正文 Web.Config配置如下: <add verb"POST,GET"path"/page/*.aspx,/page/*/*.aspx,/page/*/*/*.aspx,/page/*/*/*/*.aspx,/page/*/*/*/*/*.aspx"type"WebLibrary.PowerManage.HttpHanderPowerControls"/> 整個IHttpHandler實現代碼如下: /…

[轉載] Java 中字符串轉整型和整型轉字符串

參考鏈接&#xff1a; Java中的字符串到整數– parseInt() Java 中字符串轉整型和整型轉字符串 1.字符串轉整型Java代碼&#xff0c;字符串為純數字的情況下&#xff0c;調用Integer的靜態方法parseInt或者valueOfJava代碼&#xff0c;如果單個字符或字符串&#xff0c;需要切…

Gram matrix 格拉姆矩陣

2019獨角獸企業重金招聘Python工程師標準>>> Gram matrix 度量各個維度自己的特性以及各個維度之間的關系。 來自&#xff1a;https://www.zhihu.com/question/49805962?fromprofile_question_card 由感知機&#xff08;對偶感知機中需要計算樣本點兩兩之間的內積和…

[轉載] 用Java語言實現對十六進制字符串異或運算

參考鏈接&#xff1a; 交換兩個字符串&#xff0c;而無需在Java中使用第三個用戶定義的變量 前言&#xff1a;好久沒有寫博客&#xff0c;最近一年感覺真是好忙&#xff0c;各種做不完的工作。相信很多上班族都會有這種感覺。最近對NFC進行寫卡操作&#xff0c;需要計算一個校…

MySQL日常應用操作記錄

1.知道一個字段名&#xff0c;怎樣查到它在數據庫里的哪張表里&#xff1f; USE Information_schema;SELECT TABLE_NAME FROM COLUMNS WHERE COLUMN_NAME字段名稱; MySQL中查看庫表字段信息都在information_schemal中&#xff0c;獲取數據字典等信息都要通過這個視圖。 如&…

[轉載] 【Java】將一個字符串的字符排序,按ASCII表的順序從小到大

參考鏈接&#xff1a; 在Java中搜索字符串中的字符和子字符串 將一個字符串的字符按ASCII表的順序從小到大排序&#xff0c;如將字符串“asdafxcvMADb”排序為“ADMaabcdfsvx” 算法的基本思想&#xff1a; 先將字符串轉化為一個char類型的數組&#xff0c;來進行存儲&#xf…