一、安装Centos
二、Linux网络网络环境设置
a.配置linux与客户机相连通
b.配置linux上网
三、Yum详解
yum 的基本操作
a.使用 yum 安装新软件
yum install –y Software
b.使用 yum 更新软件
yum update –y Software
c.使用 yum 移除软件
yum remove –y Software
d.使用 yum 搜索软件
通过软件名和属性搜索
yum list Software
高级搜索
yum search Software(同时可以使用匹配符来搜索例如*)
e.使用 yum 更新您的系统
检查 yum 更新内容
yum check-update
使用 yum 更新您的系统
yum update
自动更新您的系统(每日更新) /sbin/chkconfig --level 345 yum on; /sbin/service yum start
四.关闭不需要的端口
查看系统守护进程
常用的守护进程Kudzu sshd inetd ldap等等
Linux运行等级介绍
最常用的3,5
Chkconfig改变守护进程运行等级
查看系统端口
Netstat命令使用
Lsof配合netstat查看是什么程序启动的相对应的端口
Ntsysv关闭不需要的服务
五、linux物理安全
服务器的物理安全防护
给grub设置密码,就算攻击者物理接触他也不能进入操作系统
利用vlock锁定终端
六、网络安全之信息收集
网络主机存活测试
ping
nmap
telnet
网络主机存活测试防护
安装防火墙屏蔽掉ping测试。
安装snort时刻检测系统状态。
查找网络拓扑结构
区域传送(Zone Transfer)是在多个DNS服务器之间复制区域数据库文件的过程。主要通过拷贝过程完成
如何利用nslookup实现区域传送(DEMO)
DNS区域传送防护
Linux上设置bind只允许特定的主机进行区域查询
Whois数据库收集管理员信息
Whois命令
如何阅读whois的输出结果
七。网络安全之端口扫描
端口扫描基础
端口分类
例如TCP端口,udp端口
端口状态
Listen等待从任何远端TCP和端口的连接请求
ESTABLISHED 通信双方建立连接
CLOSING等待远端TCP的连接终止请求确认
CLOSED不在连接状态
确定服务器开放什么哪些服务
常用的端口扫描软件:nc 、Nmap(最常用的)
Nmap端口扫描的基础:
Nmap所识别的6个端口状态
Open(开放)
closed(关闭的)
filtered(被过滤的)
unfiltered(未被过滤的)
open|filtered(开放或者被过滤的)
closed|filtered(关闭或者被过滤的)
Nmap命令参数
利用nmap确定操作系统:Nmap –O ….发现操作系统
八、安装配置入侵检测系统
安装配置入侵检测系统
漏洞扫描软件:SSS(Security Shadow Scan)、Wvs(Vulnerability scan)、其他的x-scan,SolarWinds(Cisco漏洞扫描)
snort:
snort有三种工作模式:嗅探器、数据包记录器、网络入侵检测系统。嗅探器模式仅仅是从网络上读取数据包并作为连续不断的流显示在终端上。数据包记录器模式把数据包记录到硬盘上。网路入侵检测模式是最复杂的,而且是可配置的。我们可以让snort分析网络数据流以匹配用户定义的一些规则,并根据检测结果采取一定的动作。
Snort下载,安装,
Snort配置
groupadd snort
useradd -g snort snort -s /bin/false
passwd -S snort
mkdir -p /etc/snort/rules
mkdir -p /var/log/snort/archive
chown -R snort.snort /var/log/snort
cd etc; cp * /etc/snort
嗅探器
snort -dev
-v
使用这个命令将使snort只输出IP和TCP/UDP/ICMP的包头信息.
-vd
看到应用层的数据
-e
显示数据链路层数据
#########
Snort命令参数
-l log
把所有截获的数据包放到一个文件中
-b
数据包截获的是二进制的可以在一些软件中解包
############
snort最重要的用途还是作为网络入侵检测系统(NIDS),使用下面命令行可以启动这种模式:
./snort -d -l ./log -h 192.168.0.0/24 -c snort.conf
九、linux日志分析
Linux日志系统分类
连接时间日志--连接时间日志由多个程序执行,把记录写入到/var/log/wtmp和/var/run/utmp。login等程序更新wtmp和utmp文件,使系统管理员能够跟踪谁在何时登录到系统。
日志格式—选择条件和优先级.
错误日志--由syslogd(8)执行。各种系统守护进程、用户程序和内核通过syslog(3)向 文件/var/log/messages 报告值得注意的事件。另外有许多Linux程序创建日志。像HTTP和 FTP这样提供网络服务的服务器也保持详细的 日志。
连接时间日志
utmp、wtmp和lastlog日志文件是多数重用UNIX日志子系统的关键--保持用户登录进入和退 出的纪录。有关当 前登录用户的信息记录在文件utmp中;登录进入和退出纪录在文件wtmp 中;最后一次登录文件可以用lastlog命令 察看。数据交换、关机和重起也记录在wtmp文件中。
who、w、users、ac命令由系统内核执行。当一个进程终止时,为每个进程往进程统计文件(pacct或 acct)中写一个纪录。 进程统计的目的是为系统中的基本服务提供命令使用统计。
/var/log/secure登陆进系统的记录
包括sshd telnet pop等
错误日志(syslog配置)
Syslog已被许多日志函数采纳,它用在许多保护措施中--任何程序都可以通过syslog 纪录 事件。Syslog可以纪录 系统事件,可以写到一个文件或设备中,或给用户发送一个信息。 它能纪录本地事件或通过网络纪录另一个主机 上的事件。
/etc/syslog.conf文件格式讲解
服务名称.记录等级 存放位置
服务名称包括常用的服务例如httpd,ftpd等.
记录等级 info(信息的资料) notice(建议信息要关注) warning或者是warn(警告的信息) error(错误信息) 特殊等级如debug (显示调试信息)
Syslog的存放位置
绝对路径:/var/log
打印机:/dev/lp0
远程主机: @192.168.0.10
同时远程主机要开启-r选项/etc/sysconfig/syslog
(重点讲解实现方法)
syslog的安全属性设定
Chattr +a /var/log/messages
Lsattr /var/log/message
只能增加资料,但不能删除.(只有root才能修改,但是也不一定我们可以利用lcap让root也不能删除和修改以后讲解)
日志格式
选择条件
选择条件本身分为两个字段,之间用一个小数点(.)分隔。前一字段是一项服务,后一字段是一个优先级。选择条件其实是对消息类型的一种分类,这种分类便于 人们把不同类型的消息发送到不同的地方。在同一个syslog配置行上允许出现一个以上的选择条件,但必须用分号(;)把它们分隔开。上面给出的例子里只 有一个选择条件“mail”。大家可以在我们后面给出的那个完整的syslog配置文件示例里看到同时有多个选择条件的配置行。表1列出了绝大多数 Linux变体都可以识别的选择条件。
优先级别
优先级是选择条件的第二个字段,它代表消息的紧急程度。对一个应用程序来说,它发出的哪些消息属于哪一种优先级是由当初编写它的程序员决定的,应用程序的 使用者只能接受这样的安排——除非打算重新编译系统应用程序。表2按严重程度由低到高的顺序列出了所有可能的优先级。
保存位置
日志信息可以分别记录到多个文件里,还可以发送到命名管道、其他程序甚至另一台机器。syslog配置文件并不复杂,既容易阅读又容易操作使用。这个文件里的注释都非常有用,应该好好读读它们.
专业的日志分析软件
Swatch
下载地址:http://swatch.sourceforge.net/
有兴趣的朋友自己安装并且测试一下。
十、linux服务器安全之文件策略
文件的权限模式
-r-xr-xr-x
改变文件的权限模式
Chmod命令
了解Suid,Sgid和粘滞位
Suid,Sgid介绍
Suid是为了让一般用户在执行某些程序的时候,能够暂时具有该程序拥有者的权限。
Sgid进一步而言,如果s的权限是在用户组,那么就是Set GID,简称为SGID。SGID可以用在两个方面。
文件:如果SGID设置在二进制文件上,则不论用户是谁,在执行该程序的时候,它的有效用户组(effective group)将会变成该程序的用户组所有者(group id)。
目录:如果SGID是设置在A目录上,则在该A目录内所建立的文件或目录的用户组,将会是此A目录的用户组。
一般来说,SGID多用在特定的多人团队的项目开发上,在系统中用得较少。
粘滞位(t位)
这个Sticky Bit当前只针对目录有效,对文件没有效果。SBit对目录的作用是:“在具有SBit的目录下,用户若在该目录下具有w及x权限,则当用户在该目录下建立文件或目录时,只有文件拥有者与root才有权力删除”。换句话说:当甲用户在A目录下拥有group或other的项目,且拥有w权限,这表示甲用户对该目录内任何人建立的目录或文件均可进行“删除/重命名/移动”等操作。不过,如果将A目录加上了Sticky bit的权限,则甲只能够针对自己建立的文件或目录进行删除/重命名/移动等操作。
Suid,Sgid,t位举例
Suid,Sgid,t位的文件权限
Suid(4) 其他用户执行文件时拥有这个文件用户的执行权限
Sgid(2)其他用户执行文件时拥有这个文件组的执行权限
T(1) /tmp详解
说明:Suid设置在目录上的时候是没有任何意义的。同样的t(1)设置在文件上也是没有意义的.
利用find命令查找以上属性
查找suid程序
find / -perm -4000 –ls
查找Sgid程序
find / -perm -2000 –ls
查找t位程序(因为只对目录有效,查看目录既可)
find / -type d -perm -1000 -ls
取消suid,sgid或t位效果演示
/bin/ping /bin/su等程序取消suid效果
/tmp取消目录的t位效果
文件扩展属性
文件扩展属性
又名文件隐藏属性隐藏属性对系统有很大的帮助。尤其是在系统安全(Security)方面,非常重要。
文件扩展属性工具
Chattr
Lsattr
LCAP
十一、Linux服务器安全之pam模块
十二、linux服务器安全之ssh安全配置
十三、Linux服务器之web安全篇
① 编译原代码 修改默认的Banner
② 修改默认的HTTP状态响应码404,503等默认页面.
③ 访问特殊目录需要密码.htaccess
④ 关闭索引目录 options -Includes
⑤ 关闭CGI执行程序options –ExecCGI
⑥ 查看和关闭一些系统模块 httpd –l列举
⑦ 让某一特殊目录执行php,不让images或者其他文件的目录执行php
Mod_rewrite URL
Discuz php?id= Discuz NT! 2.5 aspx?id=
十四、linux服务器安全之DNS配置
DNS安全工具
1.DNS Flood Detector
2. DNSSEC
3. DNSTOP
十五、linux服务器安全之ftp安全
常见的FTP客户端和服务器
常见的FTP客户端
Cuteftp, leapftp还有就是windows自带的ftp程序.
常见的FTP服务器:
Linux平台的Proftpd,pureftpd,vsftpd,wu-ftpd
Windows平台的serv-u,gen6
常见的FTP服务器比较
Proftpd 功能很强大,配置语法跟apache相似.
Wu-ftpd 现在基本上淘汰了,因为安全性太差,有非常多的远程溢出攻击
Vsftpd 小巧而且安全,很有著名站点都在使用.
ftp.redhat.com ftp.suse.com
ftp.debian.org ftp.openbsd.org ftp.freebsd
针对ftp的攻击
1.DDOS攻击
2.远程溢出漏洞
3.本地提权漏洞
4.暴力破解攻击
5.被sniffer到明文密码 dsniff
Ettercap-ng
十六、Linux服务器安全之VpN
十七、linux服务器安全之防火墙iptables
常见的软件防火墙Iptables、ipfw
十八、服务器安全之服务器监控
ngaios配置
十九、服务器之服务器文件备份
文件备份
应该备份的目录
/home /etc /var/spool/mail /usr/local
网站内容+数据库备份
Tar dd dump cpio
专门的备份软件
Linux backup
Hubackup
Pdumpfs
二十、使用CDN加速网站的同时保护网站
国内的CDN运营商
chinacache
fastcache
网宿
Cdnunion免费
常见的软件CDN
squid
Haproxy
varnish
二十一、终结武器升级内核
###########################
linux 系统安全
1.关闭不需要的端口
2.linux物理安全
3.网络安全之信息收集
4.网络安全之端口扫描
5.安装配置入侵检测系统
6.linux日志分析
7.linux服务器安全之文件策略
8.Linux服务器安全之pam模块
9。linux服务器安全之ssh安全配置
10.Linux服务器之web安全篇
11.linux服务器安全之DNS配置
12.linux服务器安全之ftp安全
13.Linux服务器安全之VpN
14.linux服务器安全之防火墙iptables
15.服务器安全之服务器监控
16.服务器之服务器文件备份
17.使用CDN加速网站的同时保护网站
18.终结武器升级内核