《Linux信息安全实用教程》学习笔记
在GRUB中设置密码
vi /etc/grub.conf
增加:
password = 654321
或者:
password --md5 (MD5值)
使用yyd用户能以root用户执行所有命令
vi /etc/sidoers
yyd ALL=(ALL)ALL
Linux自带MD5加密
/sbin/grub-md5-crypt
限制su命令的滥用
使用PAM可以对切换到超级用户的限制,PAM可以禁止除在wheel组以外的任何人使用su命令转换成root
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条使用过的命令,只要按方向键中的上就可以调出来
vi /etc/profile
修改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目录中
1、当前登录的每个用户的信息记录在utmp文件中
2、每个用户最后的登录信息记录在lastlog文件中
3、每个用户登录、注销以及系统启动、停机的时间信息记录在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 行的基本语法是:
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
《Linux信息安全实用教程》学习笔记的更多相关文章
- js学习笔记:webpack基础入门(一)
之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...
- PHP-自定义模板-学习笔记
1. 开始 这几天,看了李炎恢老师的<PHP第二季度视频>中的“章节7:创建TPL自定义模板”,做一个学习笔记,通过绘制架构图.UML类图和思维导图,来对加深理解. 2. 整体架构图 ...
- PHP-会员登录与注册例子解析-学习笔记
1.开始 最近开始学习李炎恢老师的<PHP第二季度视频>中的“章节5:使用OOP注册会员”,做一个学习笔记,通过绘制基本页面流程和UML类图,来对加深理解. 2.基本页面流程 3.通过UM ...
- 2014年暑假c#学习笔记目录
2014年暑假c#学习笔记 一.C#编程基础 1. c#编程基础之枚举 2. c#编程基础之函数可变参数 3. c#编程基础之字符串基础 4. c#编程基础之字符串函数 5.c#编程基础之ref.ou ...
- JAVA GUI编程学习笔记目录
2014年暑假JAVA GUI编程学习笔记目录 1.JAVA之GUI编程概述 2.JAVA之GUI编程布局 3.JAVA之GUI编程Frame窗口 4.JAVA之GUI编程事件监听机制 5.JAVA之 ...
- seaJs学习笔记2 – seaJs组建库的使用
原文地址:seaJs学习笔记2 – seaJs组建库的使用 我觉得学习新东西并不是会使用它就够了的,会使用仅仅代表你看懂了,理解了,二不代表你深入了,彻悟了它的精髓. 所以不断的学习将是源源不断. 最 ...
- CSS学习笔记
CSS学习笔记 2016年12月15日整理 CSS基础 Chapter1 在console输入escape("宋体") ENTER 就会出现unicode编码 显示"%u ...
- HTML学习笔记
HTML学习笔记 2016年12月15日整理 Chapter1 URL(scheme://host.domain:port/path/filename) scheme: 定义因特网服务的类型,常见的为 ...
- DirectX Graphics Infrastructure(DXGI):最佳范例 学习笔记
今天要学习的这篇文章写的算是比较早的了,大概在DX11时代就写好了,当时龙书11版看得很潦草,并没有注意这篇文章,现在看12,觉得是跳不过去的一篇文章,地址如下: https://msdn.micro ...
- ucos实时操作系统学习笔记——任务间通信(消息)
ucos另一种任务间通信的机制是消息(mbox),个人感觉是它是queue中只有一个信息的特殊情况,从代码中可以很清楚的看到,因为之前有关于queue的学习笔记,所以一并讲一下mbox.为什么有了qu ...
随机推荐
- MySQL Hash索引和B-Tree索引的区别
MySQL Hash索引和B-Tree索引的区别究竟在哪里呢?相信很多人都有这样的疑问,下文对两者的区别进行了详细的分析,供您参考. MySQL Hash索引结构的特殊性,其检索效率非常高,索引的检索 ...
- ONVIF开发实例
<开发过过程中的经验总结> ➤工具的使用 (1)首先将文件soapClientLib.c 中"代码"的第二行和第三行注释掉,实际上该文件根本没有用,为了保险起见 ...
- ASP.net 简单分页的实现
在自己的项目中有一个文章的管理页面需要用到分页, 这种分页方法是在黑马的一个视频中看到的,便用在了自己的项目中. 但是使用控件实在是太丑,虽然我写的也丑....... gridview 控件提供的分页 ...
- PHP cURL中CURLOPT_CONNECTTIMEOUT和CURLOPT_TIMEOUT的区别
CURLOPT_CONNECTTIMEOUT用来告诉PHP脚本在成功连接服务器前等待多久(连接成功之后就会开始缓冲输出),这个参数是为了应对目标服务器的过载,下线,或者崩溃等可能状况: CURLOPT ...
- BZOJ 2959: 长跑 lct 双联通分量 并查集 splay
http://www.lydsy.com/JudgeOnline/problem.php?id=2959 用两个并查集维护双联通分量的编号和合并. #include<iostream> # ...
- LOJ.2587.[APIO2018]铁人两项Duathlon(圆方树)
题目链接 LOJ 洛谷P4630 先对这张图建圆方树. 对于S->T这条(些)路径,其对答案的贡献为可能经过的所有点数,那么我们把方点权值设为联通分量的大小,可以直接去求树上路径权值和. 因为两 ...
- java后台接收json数据,报错com.alibaba.fastjson.JSONObject cannot be cast to xxx
从前台接收json封装的list数据,在后台接收时一直报错,com.alibaba.fastjson.JSONObject cannot be cast to xxx, 使用这种方式接收可以接收 @R ...
- python 爬虫学习<将某一页的所有图片下载下来>
在我们日常上网浏览网页的时候,经常会看到一些好看的图片,我们就希望把这些图片保存下载,或者用户用来做桌面壁纸,或者用来做设计的素材. 我们最常规的做法就是通过鼠标右键,选择另存为.但有些图片鼠标右键的 ...
- 处理 CALayer 变形后的抗锯齿问题
处理锯齿当然要用抗锯齿,iOS 可以通过修改 Plist 实现全局抗锯齿,但是这样容易出现性能问题. 所以就要使用对单个 Layer 开启抗锯齿的方法 layer.allowsEdgeAntialia ...
- Shell获取文件的文件名和扩展名的例子
这篇文章主要介绍了Shell获取文件的文件名和扩展名的例子,简明版的代码实例,看了就懂,需要的朋友可以参考下 basename example.tar.gz .tar.gz # => examp ...