centos伺服器安全設定

2021-07-08 18:52:59 字數 4122 閱讀 7462

8、更改ssh埠,最好改為10000以上,別人掃瞄到埠的機率也會下降

不允許使用低版本的ssh協議

vi /etc/ssh/sshd_config

將#protocol 2,1改為

protocol 2

(注:centos 6下已預設取消了低版本協議)

將port改為1000以上埠

vi /etc/ssh/sshd_config

port 10000

同時,建立乙個普通登入使用者,並取消直接root登入

useradd 'username'

passwd 'username'

vi /etc/ssh/sshd_config

permitrootlogin no       #取消root直接遠端登入

x11forwarding no  #(伺服器一般不會開x,所以x**就不要開了吧) 取消x11**

9、關閉那些不需要的服務 ,記住少開乙個服務,就少乙個危險。

以下僅列出需要啟動的服務,未列出的服務一律關閉:

複製**

**如下:

#setup

acpid

anacron

cpuspeed

crond

irqbalance #僅當伺服器cpu為s.m.p架構或支援雙核心、ht技術時,才需開啟,否則關閉。

microcode_ctl

network

random #(centos 6 裡沒有該服務)

sendmail

sshd

syslog

yum-updatesd

10、啟用iptables 防火牆,對增加系統安全有許多好處。設定好防火牆的規則。

複製**

**如下:

vi /etc/sysconf/iptables

*filter

:input drop [0:0]

:forward drop [0:0]

:output accept [0:0]

# allow local loopback connections

-a input -i lo -j accept

# drop invalid connections

-a input -m state --state invalid -j drop

-a output -m state --state invalid -j drop

-a forward -m state --state invalid -j drop

# allow all established and related

-a input -m state --state established,related -j accept

# add anymore rules here

commit

三、限制網路訪問

1.nfs訪問

如果您使用nfs網路檔案系統服務,應該確保您的/etc/exports具有最嚴格的訪問許可權設定,也就是意味著不要使用任何萬用字元、不允許root寫許可權並且只能安裝為唯讀檔案系統。編輯檔案/etc/exports並加入如下兩行。

/dir/to/export host1.mydomain.com(ro,root_squash)

/dir/to/export host2.mydomain.com(ro,root_squash)

/dir/to/export 是您想輸出的目錄,host.mydomain.com是登入這個目錄的機器名,ro意味著mount成唯讀系統,root_squash禁止root寫入該目錄。為了使改動生效,執行如下命令。

# /usr/sbin/exportfs -a

2.inetd設定

首先要確認/etc/inetd.conf的所有者是root,且檔案許可權設定為600。設定完成後,可以使用」stat」命令進行檢查。

# chmod 600 /etc/inetd.conf

ftp telnet shell login exec talk ntalk imap pop-2 pop-3 finger auth

如果您安裝了ssh/scp,也可以禁止掉telnet/ftp。為了使改變生效,執行如下命令:

#killall -hup inetd

配置完成後,可以用tcpdchk檢查:

# tcpdchk

3.登入終端設定

複製**

**如下:

tty1

# tty2

# tty3

# tty4

# tty5

# tty6

這時,root僅可在tty1終端登入。

4.避免顯示系統和版本資訊。

如果您希望遠端登入使用者看不到系統和版本資訊,可以通過一下操作改變/etc/inetd.conf檔案:

telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd -h

加-h表示telnet不顯示系統資訊,而僅僅顯示」login:」。

5.修改相應配置檔案停止ipv6。

#vi /etc/modprobe.conf

alias net-pf-10 off

alias ipv6 off

#shutdown -r now

四、防止攻擊

1.阻止ping 如果沒人能ping通您的系統,安全性自然增加了。為此,可以在/etc/rc.d/rc.local檔案中增加如下一行:

#echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all

2.防止ip欺騙

編輯host.conf檔案並增加如下幾行來防止ip欺騙攻擊。

order bind,hosts

multi off

nospoof on

3.防止dos攻擊

對系統所有的使用者設定資源限制可以防止dos型別攻擊。如最大程序數和記憶體使用數量等。例如,可以在/etc/security/limits.conf中新增如下幾行:

* hard core 0

* hard rss 5000  #( 本行或許沒用,man limits.conf 顯示 maximum resident set size (kb) (ignored in linux 2.4.30 and higher)

* hard nproc 50

session required /lib/security/pam_limits.so

上面的命令禁止除錯檔案,限制程序數為50並且限制記憶體使用為5mb。

經過以上的設定,您的linux伺服器已經可以對絕大多數已知的安全問題和網路攻擊具有免疫能力,但一名優秀的系統管理員仍然要時刻注意網路安全動態,隨時對已經暴露出的和潛在安全漏洞進行修補。

五、核心引數調整

本節的設定似乎與centos 6下不同,請酌情參考

(centos6可參看本文)

複製**

**如下:

#vi /etc/sysctl.conf

sysctl -w net.ipv4.conf.default.accept_source_route=0

sysctl -w net.ipv4.icmp_echo_ignore_broadcasts=1

#sysctl -w net.ipv4.icmp_echo_ignore_all=1

sysctl -w net.ipv4.icmp_ignore_bogus_error_responses=1

sysctl -w net.ipv4.ip_conntrack_max=65535

sysctl -w net.ipv4.tcp_syncookies=1

sysctl -w net.ipv4.tcp_syn_retries=1

sysctl -w net.ipv4.tcp_fin_timeout=5

sysctl -w net.ipv4.tcp_synack_retries=1

sysctl -w net.ipv4.tcp_syncookies=1

sysctl -w net.ipv4.route.gc_timeout=100

sysctl -w net.ipv4.tcp_keepalive_time=500

sysctl -w net.ipv4.tcp_max_syn_backlog=10000

CentOS 5伺服器安全設定

centos 5伺服器安全設定 一.centos 系統安全方面 1 用防火牆關閉不須要的任何埠,別人ping不到伺服器,威脅自然減少了一大半 2 更改ssh埠,最好改為10000以上,別人掃瞄到埠的機率也會下降 3 刪除系統臃腫多餘的賬號 userdel adm userdel lp userdel...

伺服器安全設定

一 作業系統的安裝我這裡說的作業系統以windows 2000為例,高版本的windows也有類似功能。格式化硬碟時候,必須格式化為ntfs的,絕對不要使用fat32型別。c盤為作業系統盤,d盤放常用軟體,e盤 格式化完成後立刻設定磁碟許可權,c盤預設,d盤的安全設定為administrator和s...

伺服器安全設定

一 作業系統的安裝我這裡說的作業系統以windows 2000為例,高版本的windows也有類似功能。格式化硬碟時候,必須格式化為ntfs的,絕對不要使用fat32型別。c盤為作業系統盤,d盤放常用軟體,e盤 格式化完成後立刻設定磁碟許可權,c盤預設,d盤的安全設定為administrator和s...