《Linux信息安全实用教程》学习笔记

在GRUB中设置密码

vi  /etc/grub.confhtml

增长:linux

password = 654321

或者:web

password --md5 (MD5值)

使用yyd用户能以root用户执行全部命令

vi  /etc/sidoersapache

yyd   ALL=(ALL)ALL

 Linux自带MD5加密

/sbin/grub-md5-crypt安全

限制su命令的滥用

使用PAM能够对切换到超级用户的限制,PAM能够禁止除在wheel组之外的任何人使用su命令转换成rootbash

vi  /etc/pam.d/su服务器

去掉这两行左边的注释符“#”:网络

#auth sufficient /libsecurity/$ISA/pam_wheel.so trust use_uid
#auth required /lib/security/$SIA/panm_wheel.so use_uid

使用过的命令查看以及配置修改

在“~/.bash_history”文件中默认保存了500条使用过的命令,只要按方向键中的上就能够调出来ssh

vi /etc/profiletcp

修改HISTSIZE的值:

HISTSIZE = 10

能够保存的旧命令为10条。

访问控制

hosts.allow和hosts.deny是tcpd服务器主配置文件,tcpd服务器能够控制外部IP对本机服务的访问

vi /etc/hosts.allow

ALL:127.0.01
ftp:192.168.0.0/255.255.255.0

 

第一行是容许访问本机因此服务进程

第二行是容许192.168.0.1~192.168.0.254的IP对本机ftp的服务访问

设置FTP服务器不容许匿名登陆

vi /etc/vsftpd/vsftp.conf

anonymous_enable = NO 

 

把YES改成NO即可。

配置shadow文件禁止用户登陆

这方法只是实现改变此用户密码致使不能登陆

vi /etc/shadow

在yyd行,在第一个冒号以后加上一个星号 * 

终端禁止yyd用户登陆

usermod -L yyd

修改密码最短长度

vi  /etc/login.defs

PASS_MIN_LEN 5

 

将5改成10,则最短密码为10。

禁止系统响应ping请求(须要安装iptables)

vi /etc/rc.d/ec/local

touch /var/lock/subsys/local
echo
1 > /proc/sys/net/ipv4/icmp_echo_ignore_all

 

运行脚本 ./rc.local

在Linux启动过程当中,禁止Ctrl + Alt +Del 从新启动

vi  /ect/inittab

注释掉下面这行,用“#”:

ca::ctrlaltdel:/sbin/shutdown -tb -r now

经过中断后台启动进程格式

进程命令 &

调度启动(at命令)

日志

Linux日志存储在/var/log目录中

一、当前登陆的每一个用户的信息记录在utmp文件中

二、每一个用户最后的登陆信息记录在lastlog文件中

三、每一个用户登陆、注销以及系统启动、停机的时间信息记录在wtmp文件中,因此记录都包含时间戳

who、who -m、who -q查看系统中用户登陆状况

last:往回搜索自从文件wtmp建立以来最近登录过的用户。

lastlog:列出用户最后登陆的时间和登陆终端的地址,若是此用户历来没有登陆,则显示:**Never logged in**。

sa:汇总先前命令执行的信息。

access-log:记录HTTP/web的传输。

secure:巨鹿登陆系统存取资料的信息。

btmp:记录失败的记录。

messages:从syslog记录信息(又得是链接到syslog文件)。

sudolog:记录使用sudo发出的命令。

sulog: 记录使用su命令的使用。

utmp:记录当前登陆的每一个用户。

wtmp:一个用户每次登陆进入和退出时间的永久记录。

xferlog:记录FTP会话。

启动syslog服务

service syslog start

配置文件 /etc/syslog.conf

# Log all kernel messages to the console.
# Logging much else clutters up the screen.
#kern.* /dev/console
# Log anything (except mail) of level info or higher.
# Don't log private authentication messages!
*.info;mail.none;authpriv.none;cron.none /var/log/messages
# The authpriv file has restricted access.
authpriv.* /var/log/secure
# Log all the mail messages in one place.
mail.* -/var/log/maillog
# Log cron stuff
cron.* /var/log/cron
# Everybody gets emergency messages
*.emerg *
# Save news errors of level crit and higher in a special file.
uucp,news.crit /var/log/spooler
# Save boot messages also to boot.log
local7.* /var/log/boot.log

 

 syslog.conf 行的基本语法是: 

[消息类型].[优先级]     [处理方案]       --->  facility.priority  log_location
注意:中间的分隔符必须是Tab 字符!
 
消息类型 - 说明
 
authpriv -包括特权信息如用户名在内的认证活动

cron -与 cron 和 at 有关的计划任务信息 

daemon -与 inetd 守护进程有关的后台进程信息

kern -内核信息,首先经过 klogd 传递

lpr -与打印服务有关的信息

mail -与电子邮件有关的信息

mark - syslog内部功能用于生成时间戳

news -来自新闻服务器的信息 

syslog -由 syslog 生成的信息 

user -由用户程序生成的信息 

uucp -由 uucp 生成的信息 

local0-local7 -与自定义程序使用

 

优先级 - 说明

 

emerg -该系统不可用,等同panic 

alert -须要当即被修改的条件 

crit -阻止某些工具或子系统功能实现的错误条件 

err -阻止工具或某些子系统部分功能实现的错误条件,等同error 

warning -预警信息,等同warn 

notice -具备重要性的普通条件 

info -提供信息的消息 

debug -不包含函数条件或问题的其余信息 

none -没有重要级,一般用于排错

 

处理方案 - 说明

 

file - 指定文件的绝对路径

teminal -输出到终端设备

@host -输出到远程日志服务器

username -发送到指定用户 

日志管理工具

logrotate

配置文件 /etc/logotate.conf

telnet修改默认端口号

vi  /etc/services

telnet 23/tcp
telnet 23/udp

 

将23改成其余数字。

telnet安全设置

/ect/xinetd.dtelnet

ssh基于密钥的验证方法

ssh -keygen -t rsa

VNC

可以将完整的窗口画面经过网络传输到另一台计算机屏幕上。

防火墙

iptables

 

读书心得:

用的是RED HAT 9 的 Linux 操做系统,发现其实linux的系统作服务器真心好,我如今在管理一台学校的Win2003的服务器,虽然全图形界面话,用着很容易上手,可是若是是用的apache+PHP+MYSQL的话,配置,安全保护等弄起来很复杂,并且如果IIS的话,猜想漏洞比较多,会比较难管理吧。

 

转载请注明出处:http://www.cnblogs.com/yydcdut/p/3464340.html

相关文章
相关标签/搜索