CentOS Linux系统安全设置

简介:

CentOS系统安全设置
1.禁止ping 
[root@zh888 ~]# echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all //临时禁止ping
[root@zh888 ~]# echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_all //临时允许ping 
如果要永久ping可以把第一句
[root@zh888 ~]# echo "echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all">>/etc/rc.local 
[root@zh888 ~]# cat /etc/rc.local 
#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.

touch /var/lock/subsys/local

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

2.用iptables防火墙禁止(或丢弃) icmp 包
[root@zh888 ~]# iptables -A INPUT -p icmp -j DROP
[root@zh888 ~]# iptables -L -n
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
DROP       icmp --  0.0.0.0/0            0.0.0.0/0          

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination        

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination       

[root@zh888 ~]# iptables -F INPUT //清理INPUT
[root@zh888 ~]# iptables -L -n
Chain INPUT (policy ACCEPT)
target     prot opt source               destination        

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination        

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination   


3.、更改SSH端口,最好改为10000以上,防止别人扫描顺便建立一个普通用户来登录然后直接切换到root
[root@zh888 ~]# echo "port=10000">>/etc/ssh/sshd_config 
[root@zh888 ~]# echo "PermitRootlogin no">>/etc/ssh/sshd_config 
[root@zh888 ~]# service sshd restart
停止 sshd:                                                [确定]
启动 sshd:                                                [确定]

root@zh888 ~]# netstat -ntlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name   
tcp        0      0 127.0.0.1:199               0.0.0.0:*                   LISTEN      1631/snmpd          
tcp        0      0 0.0.0.0:139                 0.0.0.0:*                   LISTEN      1748/smbd           
tcp        0      0 0.0.0.0:111                 0.0.0.0:*                   LISTEN      1607/portmap        
tcp        0      0 192.168.122.1:53            0.0.0.0:*                   LISTEN      1917/dnsmasq        
tcp        0      0 0.0.0.0:21                  0.0.0.0:*                   LISTEN      1726/vsftpd         
tcp        0      0 0.0.0.0:445                 0.0.0.0:*                   LISTEN      1748/smbd           
tcp        0      0 :::10000                    :::*                        LISTEN      3023/sshd   //修改了端口22默认端口。       

[test@zh888 ~]$ su - root//切换到root
口令:
[root@zh888 ~]# set|grep LOGNAME//然后查看环境变量的LOGNAME
LOGNAME=root


4.[root@zh888 ~]# chattr +i /etc/passwd /etc/group /etc/gshadow /etc/shadow //利用chattr +i或者-i来修改权限.


[root@zh888 ~]# chmod 777 /etc/passwd
chmod: 更改 “/etc/passwd” 的权限: 不允许的操作


5.[root@zh888 ~]# chmod 600 /etc/xinetd.conf //修改xinetd.conf配置文件权限,因为已经修改好了。主只有读和写。
chmod: 更改 “/etc/xinetd.conf” 的权限: 不允许的操作
[root@zh888 ~]# ll /etc/xinetd.conf 
-rw------- 1 root root 1001 2011-05-31 /etc/xinetd.conf


6.删除不太常用的用户和组adm  lp  sync  shutdown  halt  news  uucp  operator  games  gopher

组groupdel adm groupdel lp groupdel news groupdel uucp groupdel games groupdel dip groupdel pppusers


7.禁止ip原路由也就是ip包包含到达目的地的详细路径信息,是非常危险的。
fro f in /proc/sys/net/ipv4/conf/*
/accept_source_route;do 
echo 0 > $f done
上面是禁止所有网络界面。

8.使TCP SYN Cookie保护生效,SYN Attack是一种拒绝服务攻击方式,会消耗系统所有资源,迫使系统重启,
[root@zh888 ~]# echo "echo 1 >/proc/sys/net/ipv4/tcp_syncookies">>/etc/rc.local //让系统启动可以生效
[root@zh888 ~]# cat /etc/rc.local //查看/etc/rc.local文件
#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.

touch /var/lock/subsys/local

 

#/usr/local/mysql/libexec/mysqld --user=root&
#/usr/local/apache/bin/apachectl start
#modprobe ip_conntrack_ftp
#route add default gw 192.168.20.254
#echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
fro f in /proc/sys/net/ipv4/conf/*/accept_source_route;do echo 0 > done
fro f in /proc/sys/net/ipv4/conf/*/accept_source_route;do echo 0 >  done
echo 1 >/proc/sys/net/ipv4/tcp_syncookies

9.[root@zh888 ~]# chattr +i /etc/services //修改/etc/services端口文件的属性

10.[root@zh888 ~]# cat /etc/securetty //注释掉不用的tty前面加#就可以了。只允许root为tty1设备登录,如果其它可以用su - root来切换。
console
vc/1
vc/2
vc/3
vc/4
vc/5
vc/6
vc/7
vc/8
vc/9
vc/10
vc/11
tty1
#tty2
#tty3
#tty4
#tty5
#tty6
#tty7
#tty8
#tty9
#tty10
#tty11

11.关闭不需要的服务可以用ntsysv来关闭。
[root@zh888 ~]# runlevel
N 3 //3级别因为修改了/etc/sysconfig/i18n 所以是中文显示grep最好用on off来比较好。
[root@zh888 ~]# cat /etc/sysconfig/i18n 
#LANG="en_US.UTF-8"
SYSFONT="latarcyrheb-sun16"
LANG="zh_CN.GB18030"
[root@zh888 ~]# chkconfig --list|grep 3:启用

anacron         0:关闭  1:关闭  2:启用  3:启用  4:启用  5:启用  6:关闭
apmd            0:关闭  1:关闭  2:启用  3:启用  4:启用  5:启用  6:关闭
auditd          0:关闭  1:关闭  2:启用  3:启用  4:启用  5:启用  6:关闭
crond           0:关闭  1:关闭  2:启用  3:启用  4:启用  5:启用  6:关闭
kudzu           0:关闭  1:关闭  2:关闭  3:启用  4:启用  5:启用  6:关闭
libvirt-guests  0:关闭  1:关闭  2:关闭  3:启用  4:启用  5:启用  6:关闭
libvirtd        0:关闭  1:关闭  2:关闭  3:启用  4:启用  5:启用  6:关闭
mdmonitor       0:关闭  1:关闭  2:启用  3:启用  4:启用  5:启用  6:关闭
network         0:关闭  1:关闭  2:启用  3:启用  4:启用  5:启用  6:关闭
ntpd            0:关闭  1:关闭  2:关闭  3:启用  4:关闭  5:关闭  6:关闭
portmap         0:关闭  1:关闭  2:启用  3:启用  4:启用  5:启用  6:关闭
readahead_early 0:关闭  1:关闭  2:启用  3:启用  4:启用  5:启用  6:关闭
readahead_later 0:关闭  1:关闭  2:关闭  3:启用  4:关闭  5:启用  6:关闭
restorecond     0:关闭  1:关闭  2:启用  3:启用  4:启用  5:启用  6:关闭
smb             0:关闭  1:关闭  2:启用  3:启用  4:启用  5:启用  6:关闭
snmpd           0:关闭  1:关闭  2:启用  3:启用  4:启用  5:启用  6:关闭
snmptrapd       0:关闭  1:关闭  2:关闭  3:启用  4:关闭  5:关闭  6:关闭
sshd            0:关闭  1:关闭  2:启用  3:启用  4:启用  5:启用  6:关闭
syslog          0:关闭  1:关闭  2:启用  3:启用  4:启用  5:启用  6:关闭
sysstat         0:关闭  1:关闭  2:启用  3:启用  4:关闭  5:启用  6:关闭
vsftpd          0:关闭  1:关闭  2:启用  3:启用  4:启用  5:启用  6:关闭
xendomains      0:关闭  1:关闭  2:关闭  3:启用  4:启用  5:启用  6:关闭
xinetd          0:关闭  1:关闭  2:关闭  3:启用  4:启用  5:启用  6:关闭
yum-updatesd    0:关闭  1:关闭  2:启用  3:启用  4:启用  5:启用  6:关闭
 



本文转自zh888 51CTO博客,原文链接:http://blog.51cto.com/zh888/740880,如需转载请自行联系原作者


相关文章
|
9天前
|
安全 Linux
Linux Centos通过mail向QQ邮箱发邮件
【8月更文挑战第20天】在 CentOS 上配置使用 `mail` 命令向 QQ 邮箱发送邮件涉及几个步骤。首先确保已安装 `mailx`;接着编辑 `/etc/mail.rc` 文件来配置发件信息,包括设置发件邮箱、SMTP 服务器及授权码。最后,通过 `echo` 命令结合 `mail` 发送邮件。需登录 QQ 邮箱开启 SMTP 服务并获取授权码用于安全验证。
|
9天前
|
安全 关系型数据库 MySQL
Linux(CentOS6)安装MySQL5.6
Linux(CentOS 6)系统上安装MySQL 5.6版本的详细步骤,包括准备数据存放目录、创建用户、下载安装包、初始化数据库、配置服务脚本、设置环境变量等操作。
34 1
|
4天前
|
Linux PHP
Linux CentOS 宝塔 Suhosin禁用php5.6版本eval函数详细图文教程
【8月更文挑战第27天】本文介绍两种禁用PHP执行的方法:使用`PHP_diseval_extension`禁用和通过`suhosin`禁用。由于`suhosin`不支持PHP8,仅适用于PHP7及以下版本,若服务器安装了PHP5.6,则需对应安装`suhosin-0.9.38`版本。文章提供了详细的安装步骤,并强调了宝塔环境下与普通环境下的PHP路径差异。安装完成后,在`php.ini`中添加`suhosin.so`扩展并设置`executor.disable_eval = on`以禁用执行功能。最后通过测试代码验证是否成功禁用,并重启`php-fpm`服务生效。
11 2
|
8天前
|
监控 安全 Linux
在Linux中,如何进行系统安全加固?
在Linux中,如何进行系统安全加固?
|
8天前
|
Linux 网络安全
在Linux中,如何设置防火墙规则?
在Linux中,如何设置防火墙规则?
|
9天前
|
关系型数据库 MySQL Linux
Linux(CentOS7)搭建LAMP服务环境
本文介绍了在Linux (CentOS 7) 上搭建LAMP服务环境的详细步骤,包括安装Apache HTTPd、解决编译时依赖问题、配置Apache服务、安装PHP以及处理PHP与Apache集成时遇到的问题。同时,还涉及了防火墙设置和SELinux权限调整,确保Web服务能够正常运行。
23 2
|
9天前
|
网络协议 Linux 网络架构
在Linux中,如何设置网络路由?
在Linux中,如何设置网络路由?
|
8天前
|
安全 Linux 数据安全/隐私保护
在Linux中,使用rsync服务模式时,如果指定了⼀个密码文件,那么这个密码文件的权限应该设置成多少才可以?
在Linux中,使用rsync服务模式时,如果指定了⼀个密码文件,那么这个密码文件的权限应该设置成多少才可以?
|
8天前
|
网络协议 Ubuntu Linux
在Linux中,设置DNS需要修改哪个配置文件?
在Linux中,设置DNS需要修改哪个配置文件?
|
8天前
|
监控 安全 Linux
在Linux中,如何设置定时任务(cron job)?
在Linux中,如何设置定时任务(cron job)?

热门文章

最新文章

下一篇
云函数