在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 行的基本语法是:

[消息类型].[优先级]     [处理方案]       --->  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

《Linux信息安全实用教程》学习笔记的更多相关文章

  1. js学习笔记:webpack基础入门(一)

    之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...

  2. PHP-自定义模板-学习笔记

    1.  开始 这几天,看了李炎恢老师的<PHP第二季度视频>中的“章节7:创建TPL自定义模板”,做一个学习笔记,通过绘制架构图.UML类图和思维导图,来对加深理解. 2.  整体架构图 ...

  3. PHP-会员登录与注册例子解析-学习笔记

    1.开始 最近开始学习李炎恢老师的<PHP第二季度视频>中的“章节5:使用OOP注册会员”,做一个学习笔记,通过绘制基本页面流程和UML类图,来对加深理解. 2.基本页面流程 3.通过UM ...

  4. 2014年暑假c#学习笔记目录

    2014年暑假c#学习笔记 一.C#编程基础 1. c#编程基础之枚举 2. c#编程基础之函数可变参数 3. c#编程基础之字符串基础 4. c#编程基础之字符串函数 5.c#编程基础之ref.ou ...

  5. JAVA GUI编程学习笔记目录

    2014年暑假JAVA GUI编程学习笔记目录 1.JAVA之GUI编程概述 2.JAVA之GUI编程布局 3.JAVA之GUI编程Frame窗口 4.JAVA之GUI编程事件监听机制 5.JAVA之 ...

  6. seaJs学习笔记2 – seaJs组建库的使用

    原文地址:seaJs学习笔记2 – seaJs组建库的使用 我觉得学习新东西并不是会使用它就够了的,会使用仅仅代表你看懂了,理解了,二不代表你深入了,彻悟了它的精髓. 所以不断的学习将是源源不断. 最 ...

  7. CSS学习笔记

    CSS学习笔记 2016年12月15日整理 CSS基础 Chapter1 在console输入escape("宋体") ENTER 就会出现unicode编码 显示"%u ...

  8. HTML学习笔记

    HTML学习笔记 2016年12月15日整理 Chapter1 URL(scheme://host.domain:port/path/filename) scheme: 定义因特网服务的类型,常见的为 ...

  9. DirectX Graphics Infrastructure(DXGI):最佳范例 学习笔记

    今天要学习的这篇文章写的算是比较早的了,大概在DX11时代就写好了,当时龙书11版看得很潦草,并没有注意这篇文章,现在看12,觉得是跳不过去的一篇文章,地址如下: https://msdn.micro ...

  10. ucos实时操作系统学习笔记——任务间通信(消息)

    ucos另一种任务间通信的机制是消息(mbox),个人感觉是它是queue中只有一个信息的特殊情况,从代码中可以很清楚的看到,因为之前有关于queue的学习笔记,所以一并讲一下mbox.为什么有了qu ...

随机推荐

  1. Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列之自签TLS证书及Etcd集群部署(二)

    0.前言 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 一.服务器设置 1.把每一 ...

  2. Initializing the FallBack certificate failed . TDSSNIClient initialization failed

    安装SQL后服务不能启动,报错: 2014-03-24 14:33:10.06 spid13s     Error: 17190, Severity: 16, State: 1.2014-03-24 ...

  3. 模型构建<3>:交叉验证

    交叉验证是模型比较选择的一种常用方法,本文对此进行总结梳理. 1.交叉验证的基本思想 交叉验证(cross validation)的基本思想就是重复地利用同一份数据. 2.交叉验证的作用 1)通过划分 ...

  4. BZOJ 3483 SGU505 Prefixes and suffixes(字典树+可持久化线段树)

    [题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=3483 [题目大意] 给出一些串,同时给出m对前缀后缀,询问有多少串满足给出的前缀后缀模 ...

  5. BZOJ 4066 简单题(KD树)

    [题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=4066 [题目大意] 要求维护矩阵内格子加点和矩阵查询 [题解] 往KD树上加权值点,支 ...

  6. 2018-2019-2 20162318《网络攻防技术》Exp5 MSF基础应用

    1.实验内容 1.一个主动攻击实践,如ms08_067 2. 一个针对浏览器的攻击,如ms11_050) 3. 一个针对客户端的攻击,如Adobe 4. 成功应用任何一个辅助模块 2.基础问题回答 2 ...

  7. poj 1436 线段树

    题意:给你N条线段(垂直于x轴)的两个y坐标还有x坐标,问相互看到的三元组有多少个.有点纠结就是,如果两个连线之间正好有一条线段的某个端点,这个也是不能计算的,所以这个端点就有意义了,所以就用上面那个 ...

  8. Git_从远程库克隆

    上次我们讲了先有本地库,后有远程库的时候,如何关联远程库. 现在,假设我们从零开发,那么最好的方式是先创建远程库,然后,从远程库克隆. 首先,登陆GitHub,创建一个新的仓库,名字叫gitskill ...

  9. 使用matplotlib的示例:调整字体-设置colormap和colorbar

    使用matplotlib的示例:调整字体-设置colormap和colorbar # -*- coding: utf-8 -*- #********************************** ...

  10. hdu2158

    最短区间版大家来找碴 Time Limit: 5000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total ...