安全 linux linux 安装命令
《信息安全》Linux/Unix安全机制概述
Unix操作系统的安全问题,一直都是我们用户关心的一个大问题。那么,我们也做了很多的努力来保障我们的Unix操作系统的安全。我们将会在文章中给大家讲解一下Unix操作系统的基本安全机制的知识。
Unix操作系统的基本安全机制
1.用户帐号
用户帐号就是用户在Unix操作系统上的合法身份标志,其最简单的形式是用户名/口令。在Unix操作系统内部,与用户名/口令有关的信息存储在/etc/passwd文件中,一旦当非法用户获得passwd文件时,虽然口令是被加密的密文,但如果口令的安全强度不高,非法用户即可采用“字典攻击”的方法枚举到用户口令,特别是当网络系统有某一入口时,获取passwd文件就非常容易。
2.文件系统权限
Unix操作系统文件系统的安全主要是通过设置文件的权限来实现的。每一个Unix操作系统文件和目录都有18种不同的权限,这些权限大体可分为 3类,即此文件的所有者、组和其他人的使用权限如只读、可写、可执行、允许SUID和SGID等。需注意的是权限为允许SUID、SGID和可执行文件在程序运行中,会给进程赋予所有者的权限,若被入侵者利用,就会留下隐患,给入侵者的成功入侵提供了方便。
3.日志文件
日志文件是用来记录系统使用状况的。Unix操作系统中比较重要的日志文件有3种:
(1)/usr/adm/lastlog文件。此文件用于记录每个用户最后登录的时间(包括成功和未成功的),这样用户每次登录后,只要查看一下所有帐号的最后登录时间就可以确定本用户是否曾经被盗用。
(2)/etc/utmp和/etc/wtmp文件。utmp文件用来记录当前登录到系统的用户,Wtmp文件则同时记录用户的登录和注销。
(3)/usr/adm/acct文件。此文件用于记录每个用户运行的每条命令,通常我们称之为系统记帐。
好了,这次我们就介绍到这里,希望大家可以对Unix操作系统的基本安全机制有更多的了解。
Linux中的几种安全防护技术
系统安全性对于用户来说至关重要,Linux用户也不例外。笔者就自己使用Linux的经历,总结了一些增强Linux安全
防护的小窍门,在此介绍给大家。
1.为LILO增加开机口令
----在/etc/lilo.conf文件中增加选项,从而使LILO启动时要求输入口令,以加强系统的安全性。具体设置如下:
----boot=/dev/hda
----map=/boot/map
----install=/boot/boot.b
----time-out=60#等待1分钟
----prompt
----default=linux
----password=
----#口令设置
----image=/boot/vmlinuz-2.2.14-12
----label=linux
----initrd=/boot/initrd-2.2.14-12.img
----root=/dev/hda6
----read-only
----此时需注意,由于在LILO中口令是以明码方式存放的,所以还需要将
----lilo.conf的文件属性设置为只有root可以读写。
----# chmod 600/etc/lilo.conf
----当然,还需要进行如下设置,使
----lilo.conf的修改生效。
----#/sbin/lilo-v
2.设置口令最小长度和
----最短使用时间
----口令是系统中认证用户的主要手段,系统安装时默认的口令最小长度通常为5,但为保证口令不易被猜测攻击,
可增加口令的最小长度,至少等于8。为此,需修改文件/etc/login.defs中参数PASS_MIN_LEN。同时应限制口令使
用时间,保证定期更换口令,建议修改参数PASS_MIN_DAYS。
3.用户超时注销
----如果用户离开时忘记注销账户,则可能给系统安全带来隐患。可修改/etc/profile文件,保证账户在一段时间
没有操作后,自动从系统注销。
----编辑文件/etc/profile,在“HISTFILESIZE=”行的下一行增加如下一行:
----TMOUT=600
----则所有用户将在10分钟无操作后自动注销。
4.禁止访问重要文件
----对于系统中的某些关键性文件如inetd.conf、services和lilo.conf等可修改其属性,防止意外修改和被普通
用户查看。
----首先改变文件属性为600:
----# chmod 600/etc/inetd.conf
----保证文件的属主为root,然后还可以将其设置为不能改变:
----# chattr+i/etc/inetd.conf
----这样,对该文件的任何改变都将被禁止。
----只有root重新设置复位标志后才能进行修改:
----# chattr-i/etc/inetd.conf
5.允许和禁止远程访问
----在Linux中可通过/etc/hosts.allow和/etc/hosts.deny这2个文件允许和禁止远程主机对本地服务的访问。
通常的做法是:
----(1)编辑hosts.deny文件,加入下列行:
----# Deny access to everyone.
----ALL: ALL@ALL
----则所有服务对所有外部主机禁止,除非由hosts.allow文件指明允许。
----(2)编辑hosts.allow文件,可加入下列行:
----#Just an example:
----ftp: 202.84.17.11 xinhuanet.com
----则将允许IP地址为202.84.17.11和主机名为xinhuanet.com的机器作为Client访问FTP服务。
----(3)设置完成后,可用tcpdchk检查设置是否正确。
6.限制Shell命令记录大小
----默认情况下,bash shell会在文件$HOME/.bash_history中存放多达500条命令记录(根据具体的系统不同,默
认记录条数不同)。系统中每个用户的主目录下都有一个这样的文件。在此笔者强烈建议限制该文件的大小。
----您可以编辑/etc/profile文件,修改其中的选项如下: HISTFILESIZE=30或HISTSIZE=30
7.注销时删除命令记录
----编辑/etc/skel/.bash_logout文件,增加如下行:
----rm-f$HOME/.bash_history
----这样,系统中的所有用户在注销时都会删除其命令记录。
----如果只需要针对某个特定用户,如root用户进行设置,则可只在该用户的主目录下修改/$HOME/.bash_history
文件,增加相同的一行即可。
8.禁止不必要的SUID程序
----SUID可以使普通用户以root权限执行某个程序,因此应严格控制系统中的此类程序。
----找出root所属的带s位的程序:
----# find/-type f−perm−04000−o−perm−02000-print|less
----禁止其中不必要的程序:
----# chmod a-s program_name
9.检查开机时显示的信息
----Linux系统启动时,屏幕上会滚过一大串开机信息。如果开机时发现有问题,需要在系统启动后进行检查,可输
入下列命令:
----#dmesg>bootmessage
----该命令将把开机时显示的信息重定向输出到一个文件bootmessage中。
10.磁盘空间的维护
----经常检查磁盘空间对维护Linux的文件系统非常必要。而Linux中对磁盘空间维护使用最多的命令就是df和du了。
----df命令主要检查文件系统的使用情况,通常的用法是:
----#df-k
----Filesystem 1k-blocks Used Available Use% Mounted on
----/dev/hda3 1967156 1797786 67688 96%/
----du命令检查文件、目录和子目录占用磁盘空间的情况,通常带-s选项使用,只显示需检查目录占用磁盘空间的总计,
而不会显示下面的子目录占用磁盘的情况。
----% du-s/usr/X11R6/*
----34490/usr/X11R6/bin
----1/usr/X11R6/doc
----3354/usr/X11R6/include
Linux系统安全吗
我只想说你所谓的BUG真让人哭笑不得。操作系统至少要对一个用户透明以便对系统的维护管理和运营,否则全是低级用户,系统就是一个黑箱,谁都看不见里面,有问题和冲突也没法看见没法处理。就算你真的删除了超级用户,那么对系统的开发者来说,系统依然是透明的,就不怕他们偷窥你?难不成把他们消灭掉?
Linux本身是一个优秀安全的系统,我作为超级管理员,可以修改删除普通用户的口令,甚至删除他的账户。但普通用户也可以有他自己的私密文件,我只能删除,却不能查看或更改。当然我可以利用黑客手段对用户的加密文件进行破解,但这就是另一回事,任何操作系统都无法拒绝黑客,普通用户一样可以利用黑客手段窃取他人的加密信息。
互联网上的数据传输都是加密进行的,尤其是存储在网站服务器上的私人资料更是加强保护的。至于有些网站使用明文存储用户资料,或是使用低强度的加密算法,这只能怪网站的做法不好,不能说Linux系统不好,换Windows也是这样的。
网络的信息安全本身就是有限度的,其依赖于使用者,管理者的素质,网络结构,网络服务机制,传输手段,法制规范等等。不可以偏概全,杞人忧天。