为您找到与linux系统安全加固与防护相关的共200个结果:
Linux系统由于其出色的性能和稳定性、开放源代码的灵活性和可扩展性,以及较低廉的成本,而受到计算机工业界的广泛关注和应用。其系统的安全性就必须要加强,那么linux操作系统如何加固安全?下面大家与读文网小编一起来学习一下吧。
一、磁盘分区
1、如果是新安装系统,
对磁盘分区应考虑安全性:
1)根目录(/)、用户目录(/home)、临时目录(/tmp)和/var目录应分开到不同的磁盘分区;
2)以上各目录所在分区的磁盘空间大小应充分考虑,避免因某些原因造成分区空间用完而导致系统崩溃;
2、对于/tmp和/var目录所在分区,大多数情况下不需要有suid属性的程序,所以应为这些分区添加nosuid属性;
方法一:修改/etc/fstab文件,添加nosuid属性字。例如:
/dev/hda2 /tmp ext2 exec,dev,nosuid,rw 0 0
方法二:如果对/etc/fstab文件操作不熟,建议通过linuxconf程序来修改。
*运行linuxconf程序;
*选择"File systems"下的"Access local drive";
*选择需要修改属性的磁盘分区;
*选择"No setuid programs allowed"选项;
*根据需要选择其它可选项;
*正常退出。(一般会提示重新mount该分区)
二、安装
1、对于非测试主机,不应安装过多的软件包。这样可以降低因软件包而导致出现安全漏洞的可能性。
2、对于非测试主机,在选择主机启动服务时不应选择非必需的服务。例如routed、ypbind等。
三、安全配置与增强
内核升级。起码要升级至2.2.16以上版本。
GNU libc共享库升级。(警告:如果没有经验,不可轻易尝试。可暂缓。)
关闭危险的网络服务。echo、chargen、shell、login、finger、NFS、RPC等
关闭非必需的网络服务。talk、ntalk、pop-2等
常见网络服务安全配置与升级
确保网络服务所使用版本为当前最新和最安全的版本。
取消匿名FTP访问
去除非必需的suid程序
使用tcpwrapper
使用ipchains防火墙
日志系统syslogd
一些细节:
1.操作系统内部的log file是检测是否有网络入侵的重要线索,当然这个假定你的logfile不被侵入者所破坏,如果你有台服务器用专线直接连到Internet上,这意味着你的IP地址是永久固定的地址,你会发现有很多人对你的系统做telnet/ftp登录尝试,试着运行#more /var/log/secure | grep refused 去检查。
2. 限制具有SUID权限标志的程序数量,具有该权限标志的程序以root身份运行,是一个潜在的安全漏洞,当然,有些程序是必须要具有该标志的,象passwd程序。
3.BIOS安全。设置BIOS密码且修改引导次序禁止从软盘启动系统。
4. 用户口令。用户口令是Linux安全的一个最基本的起点,很多人使用的用户口令就是简单的‘password'',这等于给侵入者敞开了大门,虽然从理论上说没有不能确解的用户口令,只要有足够的时间和资源可以利用。比较好的用户口令是那些只有他自己能够容易记得并理解的一串字符,并且绝对不要在任何地方写出来。
5./etc/exports 文件。如果你使用NFS网络文件系统服务,那么确保你的/etc/exports具有最严格的存取权限设置,不意味着不要使用任何通配符,不允许root写权限,mount成只读文件系统。编辑文件/etc/exports并且加:例如:
/dir/to/export host1.mydomain.com(ro,root_squash)
/dir/to/export host2.mydomain.com(ro,root_squash)
/dir/to/export 是你想输出的目录,host.mydomain.com是登录这个目录的机器名,
ro意味着mount成只读系统,root_squash禁止root写入该目录。
为了让上面的改变生效,运行/usr/sbin/exportfs -a
[NextPage]
6.确信/etc/inetd.conf的所有者是root,且文件权限设置为600 。
[root@deep]# chmod 600 /etc/inetd.conf
ENSURE that the owner is root.
[root@deep]# stat /etc/inetd.conf
File: "/etc/inetd.conf"
Size: 2869 Filetype: Regular File
Mode: (0600/-rw-------) Uid: ( 0/ root) Gid: ( 0/ root)
Device: 8,6 Inode: 18219 Links: 1
Access: Wed Sep 22 16:24:16 1999(00000.00:10:44)
Modify: Mon Sep 20 10:22:44 1999(00002.06:12:16)
Change:Mon Sep 20 10:22:44 1999(00002.06:12:16)
编辑/etc/inetd.conf禁止以下服务:
ftp, telnet, shell, login, exec, talk, ntalk, imap, pop-2, pop-3, finger,
auth, etc. 除非你真的想用它。
特别是禁止那些r命令.如果你用ssh/scp,那么你也可以禁止掉telnet/ftp。
为了使改变生效,运行#killall -HUP inetd
你也可以运行#chattr +i /etc/inetd.conf使该文件具有不可更改属性。
只有root才能解开,用命令
#chattr -i /etc/inetd.conf
7. TCP_WRAPPERS
默认地,Redhat Linux允许所有的请求,用TCP_WRAPPERS增强你的站点的安全性是举手
之劳,你可以放入
“ALL: ALL”到/etc/hosts.deny中禁止所有的请求,然后放那些明确允许的请求到
/etc/hosts.allow中,如:
sshd: 192.168.1.10/255.255.255.0 gate.openarch.com
对IP地址192.168.1.10和主机名gate.openarch.com,允许通过ssh连接。
配置完了之后,用tcpdchk检查
[root@deep]# tcpdchk
tcpchk是TCP_Wrapper配置检查工具,
它检查你的tcp wrapper配置并报告所有发现的潜在/存在的问题。
8. 别名文件aliases
编辑别名文件/etc/aliases(也可能是/etc/mail/aliases),移走/注释掉下面的行。
# Basic system aliases -- these MUST be present.
MAILER-DAEMON: postmaster
postmaster: root
# General redirections for pseudo accounts.
bin: root
daemon: root
#games: root ?remove or comment out.
#ingres: root ?remove or comment out.
nobody: root
#system: root ?remove or comment out.
#toor: root ?remove or comment out.
#uucp: root ?remove or comment out.
# Well-known aliases.
#manager: root ?remove or comment out.
#dumper: root ?remove or comment out.
#operator: root ?remove or comment out.
# trap decode to catch security attacks
#decode: root
# Person who should get root''s mail
#root: marc
最后更新后不要忘记运行/usr/bin/newaliases,使改变生效。
[NextPage]
9.阻止你的系统响应任何从外部/内部来的ping请求。
既然没有人能ping通你的机器并收到响应,你可以大大增强你的站点的安全性。你可以加下面的一行命令到/etc/rc.d/rc.local,以使每次启动后自动运行。
echo 1 >; /proc/sys/net/ipv4/icmp_echo_ignore_all
10. 不要显示出操作系统和版本信息。
如果你希望某个人远程登录到你的服务器时不要显示操作系统和版本信息,你能改变
/etc/inetd.conf中的一行象下面这样:
telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd -h
加-h标志在最后使得telnet后台不要显示系统信息,而仅仅显示login:
11.The /etc/host.conf file
编辑host.conf文件(vi /etc/host.conf)且加下面的行:
# Lookup names via DNS first then fall back to /etc/hosts.
order bind,hosts
# We don''t have machines with multiple IP addresses on the same card
(like virtual server,IP Aliasing).
multi off
# Check for IP address spoofing.
nospoof on
IP Spoofing: IP-Spoofing is a security exploit that works by tricking
computers in a trust relationship that you are someone that you really aren''t.
12. The /etc/securetty file
该文件指定了允许root登录的tty设备,/etc/securetty被/bin/login程序读取,它的
格式是一行一个被允许的名字列表,如你可以编辑/etc/securetty且注释出下面的行。
tty1
#tty2
#tty3
#tty4
#tty5
#tty6
#tty7
#tty8
-意味着root仅仅被允许在tty1终端登录。
13. 特别的帐号
禁止所有默认的被操作系统本身启动的且不需要的帐号,当你第一次装上系统时就应该做此检查,Linux提供了各种帐号,你可能不需要,如果你不需要这个帐号,就移走它,你有的帐号越多,就越容易受到攻击。
为删除你系统上的用户,用下面的命令:
[root@deep]# userdel username
为删除你系统上的组用户帐号,用下面的命令:
[root@deep]# groupdel username
在终端上打入下面的命令删掉下面的用户。
[root@deep]# userdel adm
[root@deep]# userdel lp
[root@deep]# userdel sync
[root@deep]# userdel shutdown
[root@deep]# userdel halt
[root@deep]# userdel mail
如果你不用sendmail服务器,procmail.mailx,就删除这个帐号。
[root@deep]# userdel news
[root@deep]# userdel uucp
[root@deep]# userdel operator
[root@deep]# userdel games
如果你不用X windows 服务器,就删掉这个帐号。
[root@deep]# userdel gopher
[root@deep]# userdel ftp
如果你不允许匿名FTP,就删掉这个用户帐号。
===
打入下面的命令删除组帐号
[root@deep]# groupdel adm
[root@deep]# groupdel lp
[root@deep]# groupdel mail
如不用Sendmail服务器,删除这个组帐号
[root@deep]# groupdel news
[root@deep]# groupdel uucp
[root@deep]# groupdel games
如你不用X Windows,删除这个组帐号
[root@deep]# groupdel dip
[root@deep]# groupdel pppusers
[root@deep]# groupdel popusers
如果你不用POP服务器,删除这个组帐号
[root@deep]# groupdel slipusers
====
用下面的命令加需要的用户帐号
[root@deep]# useradd username
用下面的命令改变用户口令
[root@deep]# passwd username
用chattr命令给下面的文件加上不可更改属性。
[root@deep]# chattr +i /etc/passwd
[root@deep]# chattr +i /etc/shadow
[root@deep]# chattr +i /etc/group
[root@deep]# chattr +i /etc/gshadow
[NextPage]
14. 阻止任何人su作为root.
如果你不想任何人能够su作为root,你能编辑/etc/pam.d/su加下面的行:
auth sufficient /lib/security/pam_rootok.so debug
auth required /lib/security/pam_wheel.so group=isd
意味着仅仅isd组的用户可以su作为root.
然后,如果你希望用户admin能su作为root.就运行下面的命令。
[root@deep]# usermod -G10 admin
16. 资源限制
对你的系统上所有的用户设置资源限制可以防止DoS类型攻击(denial of service attacks)
如最大进程数,内存数量等。例如,对所有用户的限制象下面这样:
编辑/etc/security/limits.con加:
* hard core 0
* hard rss 5000
* hard nproc 20
你也必须编辑/etc/pam.d/login文件加/检查这一行的存在。
session required /lib/security/pam_limits.so
上面的命令禁止core files“core 0”,限制进程数为“nproc 50“,且限制内存使用
为5M“rss 5000”。
17. The /etc/lilo.conf file
a) Add: restricted
加这一行到每一个引导映像下面,就这表明如果你引导时用(linux single),则需要一个password.
b) Add: password=some_password
当与restricted联合用,且正常引导时,需要用户输入密码,你也要确保lilo.conf
文件不能被不属于root的用户可读,也免看到密码明文。下面是例子:
编辑/etc/lilo.conf加:
====
boot=/dev/sda
map=/boot/map
install=/boot/boot.b
prompt
timeout=50
Default=linux
restricted ?add this line.
password=some_password ?add this line.
image=/boot/vmlinuz-2.2.12-20
label=linux
initrd=/boot/initrd-2.2.12-10.img
root=/dev/sda6
read-only
[root@deep]# chmod 600 /etc/lilo.conf (不再能被其他用户可读).
[root@deep]# /sbin/lilo -v (更新lilo配置).
[root@deep]# chattr +i /etc/lilo.conf(阻止该文件被修改)
18. 禁止 Control-Alt-Delete 重启动机器命令
[root@deep]# vi /etc/inittab
ca::ctrlaltdel:/sbin/shutdown -t3 -r now
To
#ca::ctrlaltdel:/sbin/shutdown -t3 -r now
[root@deep]# /sbin/init q
19. 重新设置/etc/rc.d/init.d/目录下所有文件的许可权限
[root@deep]# chmod -R 700 /etc/rc.d/init.d/*
仅仅root可以读,写,执行上述所有script file.
20. The /etc/rc.d/rc.local file
默认地,当你login到linux server时,它告诉你linux版本名,内核版本名和服务器
主机名。它给了你太多的信息,如果你就希望得到提示login: ,编辑
/etc/rc.d/rc.local放#在下面的行前面:
--
# This will overwrite /etc/issue at every boot. So, make any changes you
# want to make to /etc/issue here or you will lose them when you reboot.
#echo "" >; /etc/issue
#echo "$R" >;>; /etc/issue
#echo "Kernel $(uname -r) on $a $(uname -m)" >;>; /etc/issue
#
#cp -f /etc/issue /etc/issue.net
#echo >;>; /etc/issue
--
然后,做下面的事情:
[root@deep]# rm -f /etc/issue
[root@deep]# rm -f /etc/issue.net
[root@deep]# touch /etc/issue
[root@deep]# touch /etc/issue.net
21. 被root拥有的程序的位。
移走那些被root拥有程序的s位标志,当然有些程序需要这个,用命令‘chmod a-s’完成这个。
注:前面带(*)号的那些程序一般不需要拥有s位标志。
[root@deep]# find / -type f ( -perm -04000 -o -perm -02000 ) -exec ls –lg {} ;
-rwsr-xr-x 1 root root 33120 Mar 21 1999 /usr/bin/at
*-rwsr-xr-x 1 root root 30560 Apr 15 20:03 /usr/bin/chage
*-rwsr-xr-x 1 root root 29492 Apr 15 20:03 /usr/bin/gpasswd
-rwsr-xr-x 1 root root 3208 Mar 22 1999 /usr/bin/disable-paste
-rwxr-sr-x 1 root man 32320 Apr 9 1999 /usr/bin/man
-r-s--x--x 1 root root 10704 Apr 14 17:21 /usr/bin/passwd
-rws--x--x 2 root root 517916 Apr 6 1999 /usr/bin/suidperl
-rws--x--x 2 root root 517916 Apr 6 1999 /usr/bin/sperl5.00503
-rwxr-sr-x 1 root mail 11432 Apr 6 1999 /usr/bin/lockfile
-rwsr-sr-x 1 root mail 64468 Apr 6 1999 /usr/bin/procmail
-rwsr-xr-x 1 root root 21848 Aug 27 11:06 /usr/bin/crontab
-rwxr-sr-x 1 root slocate 15032 Apr 19 14:55 /usr/bin/slocate
*-r-xr-sr-x 1 root tty 6212 Apr 17 11:29 /usr/bin/wall
*-rws--x--x 1 root root 14088 Apr 17 12:57 /usr/bin/chfn
*-rws--x--x 1 root root 13800 Apr 17 12:57 /usr/bin/chsh
*-rws--x--x 1 root root 5576 Apr 17 12:57 /usr/bin/newgrp
*-rwxr-sr-x 1 root tty 8392 Apr 17 12:57 /usr/bin/write
-rwsr-x--- 1 root squid 14076 Oct 7 14:48 /usr/lib/squid/pinger
-rwxr-sr-x 1 root utmp 15587 Jun 9 09:30 /usr/sbin/utempter
*-rwsr-xr-x 1 root root 5736 Apr 19 15:39 /usr/sbin/usernetctl
*-rwsr-xr-x 1 root bin 16488 Jul 6 09:35 /usr/sbin/traceroute
-rwsr-sr-x 1 root root 299364 Apr 19 16:38 /usr/sbin/sendmail
-rwsr-xr-x 1 root root 34131 Apr 16 18:49 /usr/libexec/pt_chown
-rwsr-xr-x 1 root root 13208 Apr 13 14:58 /bin/su
*-rwsr-xr-x 1 root root 52788 Apr 17 15:16 /bin/mount
*-rwsr-xr-x 1 root root 26508 Apr 17 20:26 /bin/umount
*-rwsr-xr-x 1 root root 17652 Jul 6 09:33 /bin/ping
-rwsr-xr-x 1 root root 20164 Apr 17 12:57 /bin/login
*-rwxr-sr-x 1 root root 3860 Apr 19 15:39 /sbin/netreport
-r-sr-xr-x 1 root root 46472 Apr 17 16:26 /sbin/pwdb_chkpwd
[root@deep]# chmod a-s /usr/bin/chage
[root@deep]# chmod a-s /usr/bin/gpasswd
[root@deep]# chmod a-s /usr/bin/wall
[root@deep]# chmod a-s /usr/bin/chfn
[root@deep]# chmod a-s /usr/bin/chsh
[root@deep]# chmod a-s /usr/bin/newgrp
[root@deep]# chmod a-s /usr/bin/write
[root@deep]# chmod a-s /usr/sbin/usernetctl
[root@deep]# chmod a-s /usr/sbin/traceroute
[root@deep]# chmod a-s /bin/mount
[root@deep]# chmod a-s /bin/umount
[root@deep]# chmod a-s /bin/ping
[root@deep]# chmod a-s /sbin/netreport
你可以用下面的命令查找所有带s位标志的程序:
[root@deep]# find / -type f ( -perm -04000 -o -perm -02000 ) -exec ls -lg {} ;
>; suid-sgid-results
把结果输出到文件suid-sgid-results中。
[NextPage]
为了查找所有可写的文件和目录,用下面的命令:
[root@deep]# find / -type f ( -perm -2 -o -perm -20 ) -exec ls -lg {} ; >; ww-files-results
[root@deep]# find / -type d ( -perm -2 -o -perm -20 ) -exec ls -ldg {} ; >; ww-directories-results
用下面的命令查找没有拥有者的文件:
[root@deep]# find / -nouser -o -nogroup >; unowed-results
用下面的命令查找所有的.rhosts文件:
[root@deep]# find /home -name .rhosts >; rhost-results
建议替换的常见网络服务应用程序
WuFTPD
WuFTD从1994年就开始就不断地出现安全漏洞,黑客很容易就可以获得远程root访问(Remote Root Access)的权限,而且很多安全漏洞甚至不需要在FTP服务器上有一个有效的帐号。最近,WuFTP也是频频出现安全漏洞。
它的最好的替代程序是ProFTPD。ProFTPD很容易配置,在多数情况下速度也比较快,而且它的源代码也比较干净(缓冲溢出的错误比较少)。有许多重要的站点使用ProFTPD。sourceforge.net就是一个很好的例子(这个站点共有3,000个开放源代码的项目,其负荷并不小啊!)。一些Linux的发行商在它们的主FTP站点上使用的也是ProFTPD,只有两个主要Linux的发行商(SuSE和Caldera)使用WuFTPD。
ProFTPD的另一个优点就是既可以从inetd运行又可以作为单独的daemon运行。这样就可以很容易解决inetd带来的一些问题,如:拒绝服务的攻击(denial of service attack),等等。系统越简单,就越容易保证系统的安全。WuFTPD要么重新审核一遍全部的源代码(非常困难),要么完全重写一遍代码,否则WuFTPD必然要被ProFTPD代替。
Telnet
Telnet是非常非常不安全的,它用明文来传送密码。它的安全的替代程序是OpenSSH。
OpenSSH在Linux上已经非常成熟和稳定了,而且在Windows平台上也有很多免费的客户端软件。Linux的发行商应该采用OpenBSD的策略:安装OpenSSH并把它设置为默认的,安装Telnet但是不把它设置成默认的。对于不在美国的Linux发行商,很容易就可以在Linux的发行版中加上OpenSSH。美国的Linux发行商就要想一些别的办法了(例如:Red Hat在德国的FTP服务器上(ftp.redhat.de)就有最新的OpenSSH的rpm软件包)。
Telnet是无可救药的程序。要保证系统的安全必须用OpenSSH这样的软件来替代它。
Sendmail
最近这些年,Sendmail的安全性已经提高很多了(以前它通常是黑客重点攻击的程序)。然而,Sendmail还是有一个很严重的问题。一旦出现了安全漏洞(例如:最近出现的Linux内核错误),Sendmail就是被黑客重点攻击的程序,因为Sendmail是以root权限运行而且代码很庞大容易出问题。
几乎所有的Linux发行商都把Sendmail作为默认的配置,只有少数几个把Postfix或Qmail作为可选的软件包。但是,很少有Linux的发行商在自己的邮件服务器上使用Sendmail。SuSE和Red Hat都使用基于Qmail的系统。
Sendmail并不一定会被别的程序完全替代。但是它的两个替代程序Qmail和Postfix都比它安全、速度快,而且特别是Postfix比它容易配置和维护。
su
su是用来改变当前用户的ID,转换成别的用户。你可以以普通用户登录,当需要以root身份做一些事的时候,只要执行“su”命令,然后输入root的密码。su本身是没有问题的,但是它会让人养成不好的习惯。如果一个系统有多个管理员,必须都给他们root的口令。
su的一个替代程序是sudo。Red Hat 6.2中包含这个软件。sudo允许你设置哪个用户哪个组可以以root身份执行哪些程序。你还可以根据用户登录的位置对他们加以限制(如果有人“破”了一个用户的口令,并用这个帐号从远程计算机登录,你可以限制他使用sudo)。Debian也有一个类似的程序叫super,与sudo比较各有优缺点。
让用户养成良好的习惯。使用root帐号并让多个人知道root的密码并不是一个好的习惯。这就是www.apache.org被入侵的原因,因为它有多个系统管理员他们都有root的特权。一个乱成一团的系统是很容易被入侵的。
named
大部分Linux的发行商都解决了这个问题。named以前是以root运行的,因此当named出现新的漏洞的时候,很容易就可以入侵一些很重要的计算机并获得root权限。现在只要用命令行的一些参数就能让named以非root的用户运行。而且,现在绝大多数Linux的发行商都让named以普通用户的权限运行。命令格式通常为:named -u ; -g ;
INN
在INN的文档中已经明确地指出:“禁止这项功能(verifycancels),这项功能是没有用的而且将被除掉”。大约在一个月前,一个黑客发布了当“verifycancels”生效的时候入侵INN的方法。Red Hat是把“verifycancels”设为有效的。任何setuid/setgid的程序或网络服务程序都要正确地安装并且进行检查以保证尽量没有安全漏洞。
安全守则
1. 废除系统所有默认的帐号和密码。
2. 在用户合法性得到验证前不要显示公司题头、在线帮助以及其它信息。
3. 废除“黑客”可以攻击系统的网络服务。
4. 使用6到8位的字母数字式密码。
5. 限制用户尝试登录到系统的次数。
6. 记录违反安全性的情况并对安全记录进行复查。
7. 对于重要信息,上网传输前要先进行加密。
8. 重视专家提出的建议,安装他们推荐的系统“补丁”。
9. 限制不需密码即可访问的主机文件。
10.修改网络配置文件,以便将来自外部的TCP连接限制到最少数量的端口。不允许诸如tftp,sunrpc,printer,rlogin或rexec之类的协议。
11.用upas代替sendmail。sendmail有太多已知漏洞,很难修补完全。
12.去掉对操作并非至关重要又极少使用的程序。
13.使用chmod将所有系统目录变更为711模式。这样,攻击者们将无法看到它们当中有什么东西,而用户仍可执行。
14.只要可能,就将磁盘安装为只读模式。其实,仅有少数目录需读写状态。
15.将系统软件升级为最新版本。老版本可能已被研究并被成功攻击,最新版本一般包括了这些问题的补救。
看过“ linux操作系统安全加固 ”
浏览量:6
下载量:0
时间:
由于Linux操作系统良好的网络功能,因此在因特网中大部分网站服务器都是使用的Linux作为主操作系统的。那么,作为一名Linux用户,我们该如何通过合理的方法来防范Linux的安全呢?下面读文网小编搜集和整理了一些防范Linux安全的几则措施,现在把它们贡献出来,恳请各位网友能不断补充和完善。
1. BIOS安全
设置BIOS密码且修改引导次序禁止从软盘启动系统。
2. 用户口令
用户口令是Linux安全的一个基本起点,很多人使用的用户口令过于简单,这等于给侵入者敞开了大门,虽然从理论上说,只要有足够的时间和资源可以利用,就没有不能破解的用户口令。但选取得当的口令是难于破解的,较好的用户口令是那些只有他自己容易记得并理解的一串字符,并且绝对不要在任何地方写出来。
3. 默认账号
应该禁止所有默认的被操作系统本身启动的并且不必要的账号,当你第一次安装系统时就应该这么做,Linux提供了很多默认账号,而账号越多,系统就越容易受到攻击。
可以用下面的命令删除账号。
或者用以下的命令删除组用户账号。
4. 口令文件
chattr命令给下面的文件加上不可更改属性,从而防止非授权用户获得权限。
5. 禁止Ctrl+Alt+delete重新启动机器命令
修改/etc/inittab文件,将"ca::ctrlaltdel:/sbin/shutdown -t3 -r now"一行注释掉。然后重新设置/etc/rc.d/init.d/目录下所有文件的许可权限,运行如下命令:
这样便仅有root可以读、写或执行上述所有脚本文件。
6. 限制su命令
如果你不想任何人能够用su作为root,可以编辑/etc/pam.d/su文件,增加如下两行:
这时,仅isd组的用户可以用su作为root。此后,如果你希望用户admin能够用su作为root,可以运行如下命令:
7. 删减登录信息
默认情况下,登录提示信息包括Linux发行版、内核版本名和服务器主机名等。
对于一台安全性要求较高的机器来说这样泄漏了过多的信息。
可以编辑/etc/rc.d/rc.local将输出系统信息的如下行注释掉。
然后,进行如下操作:
浏览量:2
下载量:0
时间:
Linux不论在功能上、价格上或性能上都有很多优点,然而,作为开放式操作系统,它不可避免地存在一些安全隐患。那么你知道Linux系统安全性能怎么提高吗?小编带来了Linux系统安全性能提高的具体方法,下面大家跟着读文网小编一起来学习一下吧。
从计算机安全的角度看,世界上没有绝 对密不透风、百分之百安全的计算机系统,Linux系统也不例外。采用以上的安全守则,虽然可以使Linux系统的安全性大大提高,使顺手牵羊型的黑客和 电脑玩家不能轻易闯入,但却不一定能阻挡那些身怀绝技的武林高手,因此,企业用户还需要借助防火墙等其他安全工具,共同防御黑客入侵,才能确保系统万无一 失。
看过“ Linux系统安全性能怎么提高 ”
浏览量:2
下载量:0
时间:
Linux操作系统的安全性是有目共睹的。但是世上万物不可能十全十美那么,作为一名Linux用户,我们该如何通过合理的方法来防范Linux的安全呢?下面读文网小编搜集和整理了一些防范Linux安全的几则措施,现在把它们贡献出来,恳请各位网友能不断补充和完善。
1、禁止使用ping命令
ping命令是计算机之间进行相互检测线路完好的一个应用程序,计算机间交流数据的传输没有经过任何的加密处理,因此我们在用ping命令来检测某一个服务器时,可能在因特网上存在某个非法分子,通过专门的黑客程序把在网络线路上传输的信息中途窃取,并利用偷盗过来的信息对指定的服务器或者系统进行攻击,为此我们有必要在Linux系统中禁止使用Linux命令。在linux里,如果要想使ping没反应也就是用来忽略icmp包,因此我们可以在Linux的命令行中输入如下命令:echo 1 > /proc/sys/net/ipv4/icmp_echo_igore_all ;如果想恢复使用ping命令,就可以输入echo 0 > /proc/sys/net/ipv4/icmp_echo_igore_all命令。
2、注意对系统及时备份
为了防止系统在使用的过程中发生以外情况而难以正常运行,我们应该对Linux完好的系统进行备份,最好是在一完成Linux系统的安装任务后就对整个系统进行备份,以后可以根据这个备份来验证系统的完整性,这样就可以发现系统文件是否被非法修改过。如果发生系统文件已经被破坏的情况,也可以使用系统备份来恢复到正常的状态。备份信息时,我们可以把完好的系统信息备份在CD-ROM光盘上,以后可以定期将系统与光盘内容进行比较以验证系统的完整性是否遭到破坏。如果对安全级别的要求特别高,那么可以将光盘设置为可启动的并且将验证工作作为系统启动过程的一部分。这样只要可以通过光盘启动,就说明系统尚未被破坏过。
3、改进登录服务器
将系统的登录服务器移到一个单独的机器中会增加系统的安全级别,使用一个更安全的登录服务器来取代Linux自身的登录工具也可以进一步提高安全。在大的Linux网络中,最好使用一个单独的登录服务器用于syslog服务。它必须是一个能够满足所有系统登录需求并且拥有足够的磁盘空间的服务器系统,在这个系统上应该没有其它的服务运行。更安全的登录服务器会大大削弱入侵者透过登录系统窜改日志文件的能力。
4、取消root命令历史记录
在linux下,系统会自动记录用户输入过的命令,而root用户发出的命令往往具有敏感的信息,为了保证安全性,一般应该不记录或者少记录root的命令历史记录。为了设置系统不记录每个人执行过的命令,我们可以在linux的命令行下,首先用cd命令进入到/etc命令,然后用编辑命令来打开该目录下面的profile文件,并在其中输入如下内容:
HISTFILESIZE=0
HISTSIZE=0
当然,我们也可以直接在命令行中输入如下命令:ln -s /dev/null ~/.bash_history 。5、为关键分区建立只读属性
Linux的文件系统可以分成几个主要的分区,每个分区分别进行不同的配置和安装,一般情况下至少要建立/、/usr/local、/var和/home等分区。/usr可以安装成只读并且可以被认为是不可修改的。如果/usr中有任何文件发生了改变,那么系统将立即发出安全报警。当然这不包括用户自己改变/usr中的内容。/lib、/boot和/sbin的安装和设置也一样。在安装时应该尽量将它们设置为只读,并且对它们的文件、目录和属性进行的任何修改都会导致系统报警。
当然将所有主要的分区都设置为只读是不可能的,有的分区如/var等,其自身的性质就决定了不能将它们设置为只读,但应该不允许它具有执行权限。
6、杀掉攻击者的所有进程
假设我们从系统的日志文件中发现了一个用户从我们未知的主机登录,而且我们确定该用户在这台主机上没有相应的帐号,这表明此时我们正在受到攻击。为了保证系统的安全被进一步破坏,我们应该马上锁住指定的帐号,如果攻击者已经登录到指定的系统,我们应该马上断开主机与网络的物理连接。如有可能,我们还要进一步查看此用户的历史记录,再仔细查看一下其他用户是否也已经被假冒,攻击者是否拥有有限权限;最后应该杀掉此用户的所有进程,并把此主机的IP地址掩码加入到文件hosts.deny中。
7、改进系统内部安全机制
我们可以通过改进Linux操作系统的内部功能来防止缓冲区溢出,从而达到增强Linux系统内部安全机制的目的,大大提高了整个系统的安全性。但缓冲区溢出实施起来是相当困难的,因为入侵者必须能够判断潜在的缓冲区溢出何时会出现以及它在内存中的什么位置出现。缓冲区溢出预防起来也十分困难,系统管理员必须完全去掉缓冲区溢出存在的条件才能防止这种方式的攻击。正因为如此,许多人甚至包括Linux Torvalds本人也认为这个安全Linux补丁十分重要,因为它防止了所有使用缓冲区溢出的攻击。但是需要引起注意的是,这些补丁也会导致对执行栈的某些程序和库的依赖问题,这些问题也给系统管理员带来的新的挑战。
8、对系统进行跟踪记录
为了能密切地监视黑客的攻击活动,我们应该启动日志文件,来记录系统的运行情况,当黑客在攻击系统时,它的蛛丝马迹都会被记录在日志文件中的,因此有许多黑客在开始攻击系统时,往往首先通过修改系统的日志文件,来隐藏自己的行踪,为此我们必须限制对/var/log文件的访问,禁止一般权限的用户去查看日志文件。当然,系统中内置的日志管理程序功能可能不是太强,我们应该采用专门的日志程序,来观察那些可疑的多次连接尝试。另外,我们还要小心保护好具有根权限的密码和用户,因为黑客一旦知道了这些具有根权限的帐号后,他们就可以修改日志文件来隐藏其踪迹了。
9、使用专用程序来防范安全
有时,我们通过人工的方法来监视系统的安全比较麻烦,或者是不周密,因此我们还可以通过专业程序来防范系统的安全,目前最典型的方法为设置陷井和设置蜜罐两种方法。所谓陷井就是激活时能够触发报警事件的软件,而蜜罐(honey pot)程序是指设计来引诱有入侵企图者触发专门的报警的陷井程序。通过设置陷井和蜜罐程序,一旦出现入侵事件系统可以很快发出报警。在许多大的网络中,一般都设计有专门的陷井程序。陷井程序一般分为两种:一种是只发现入侵者而不对其采取报复行动,另一种是同时采取报复行动。
10、将入侵消灭在萌芽状态
入侵者进行攻击之前最常做的一件事情就是端号扫瞄,如果能够及时发现和阻止入侵者的端号扫瞄行为,那么可以大大减少入侵事件的发生率。反应系统可以是一个简单的状态检查包过滤器,也可以是一个复杂的入侵检测系统或可配置的防火墙。我们可以采用诸如Abacus Port Sentry这样专业的工具,来监视网络接口并且与防火墙交互操作,最终达到关闭端口扫瞄攻击的目的。当发生正在进行的端口扫瞄时,Abacus Sentry可以迅速阻止它继续执行。但是如果配置不当,它也可能允许敌意的外部者在你的系统中安装拒绝服务攻击。正确地使用这个软件将能够有效地防止对端号大量的并行扫瞄并且阻止所有这样的入侵者。
11、严格管理好口令
前面我们也曾经说到过,黑客一旦获取具有根权限的帐号时,就可以对系统进行任意的破坏和攻击,因此我们必须保护好系统的操作口令。通常用户的口令是保存在文件/etc/passwd文件中的,尽管/etc/passwd是一个经过加密的文件,但黑客们可以通过许多专用的搜索方法来查找口令,如果我们的口令选择不当,就很容易被黑客搜索到。因此,我们一定要选择一个确保不容易被搜索的口令。另外,我们最好能安装一个口令过滤工具,并借用该工具来帮助自己检查设置的口令是否耐得住攻击。
浏览量:2
下载量:0
时间:
Linux操作系统由于其开放源代码的特性,可在一定程度上避免后门程序的隐患,这对于关注信息保密性的用户而言非常重要。下面大家与读文网小编一起来学习一下linux操作系统的安全性吧。
1、用户/文件权限的划分
用户权限在Windows操作系统里也不陌生,但是Linux操作系统的用户权限和文件权限要比Windows操作系统里严格有效。比较明显的一个案例就是,即便是你在Windows操作系统里设置了多用户,但是不同的用户之间通过一定的方式,还是能够互访文件的,这就失去了权限的意义。
LINUX文件权限针对的对象分三类(互斥的关系):
1. user(文件的拥有者)
2. group(文件拥有者所在的组,但不包括user)
3. other(其它用户,即user和group以外的)
LINUX用一个3位二进制数对应着文件的3种权限(1表示有该权限,0表示无):
第1位 读 r 100 4
第2位 写 w 010 2
第3位 执行 x 001 1
查看权限
#ls -l
第一列,一共10位(drwxrwxrwx),就代表了文件的权限:
1)第一个d代表是一个目录,如果显示“-”,则说明不是一个目录
2)2-4代表user的权限
3)5-7代表group的权限
4)8-10代表other的权限
对于后9位:
r 代表可读(read),其值是4
w 代表可写(write),其值是2
x 代表可执行(execute),其值是1
- 代表没有相应权限,其值是0
修改文件权限
# chmod [ugoa][+-=][rwx] 文件名
1)用户
u 代表user
g 代表group
o 代表other
a 代表全部的人,也就是包括u,g和o
2)行动
+ 表示添加权限
- 表示删除权限
= 表示使之成为唯一的权限
3)权限
rwx也可以用数字表示法,不过很麻烦要自己算,比如 rw=6
常见权限
-rw—— (600) 只有所有者才有读和写的权限
-rw-r——r—— (644) 只有所有者才有读和写的权限,组群和其他人只有读的权限
-rwx—— (700) 只有所有者才有读,写,执行的权限
-rwxr-xr-x (755) 只有所有者才有读,写,执行的权限,组群和其他人只有读和执行的权限
-rwx——x——x (711) 只有所有者才有读,写,执行的权限,组群和其他人只有执行的权限
-rw-rw-rw- (666) 每个人都有读写的权限
-rwxrwxrwx (777) 每个人都有读写和执行的权限,最大权限。
也许你会说,Windows操作系统里不也内置了防火墙,Linux系统内置防火墙有什么特殊之处。其实,iptables不仅仅是一个防火墙,而且即便是一个防火墙,它与我们常见的Windows操作系统下的防火墙相比,更加的专业性能更强大。
iptables是与Linux内核集成的IP信息包过滤系统,如果Linux系统连接到因特网或LAN、服务器或连接LAN和因特网的代理服务器,则该系统有利于在Linux系统上更好地控制IP信息包过滤和防火墙配置。
netfilter/iptables IP信息包过滤系统是一种功能强大的工具,可用于添加、编辑和除去规则,这些规则是在做信息包过滤决定时,防火墙所遵循和组成的规则。这些规则存储在专用的信息包过滤表中,而这些表集成在 Linux 内核中。在信息包过滤表中,规则被分组放在我们所谓的链(chain)中。
虽然netfilter/iptables IP信息包过滤系统被称为单个实体,但它实际上由两个组件netfilter和iptables组成。
netfilter组件也称为内核空间(kernelspace),是内核的一部分,由一些信息包过滤表组成,这些表包含内核用来控制信息包过滤处理的规则集。
iptables组件是一种工具,也称为用户空间(userspace),它使插入、修改和除去信息包过滤表中的规则变得容易。除非您正在使用 Red Hat Linux 7.1 或更高版本,否则需要下载该工具并安装使用它。
netfilter/iptables 的最大优点是它可以配置有状态的防火墙,这是 ipfwadm 和 ipchains 等以前的工具都无法提供的一种重要功能。有状态的防火墙能够指定并记住为发送或接收信息包所建立的连接的状态。防火墙可以从信息包的连接跟踪状态获得该信息。在决定新的信息包过滤时,防火墙所使用的这些状态信息可以增加其效率和速度。这里有四种有效状态,名称分别为 ESTABLISHED 、 INVALID 、 NEW 和 RELATED。
状态 ESTABLISHED 指出该信息包属于已建立的连接,该连接一直用于发送和接收信息包并且完全有效。INVALID 状态指出该信息包与任何已知的流或连接都不相关联,它可能包含错误的数据或头。状态 NEW 意味着该信息包已经或将启动新的连接,或者它与尚未用于发送和接收信息包的连接相关联。最后, RELATED 表示该信息包正在启动新连接,以及它与已建立的连接相关联。
netfilter/iptables 的另一个重要优点是,它使用户可以完全控制防火墙配置和信息包过滤。您可以定制自己的规则来满足您的特定需求,从而只允许您想要的网络流量进入系统。
另外,netfilter/iptables 是免费的,这对于那些想要节省费用的人来说十分理想,它可以代替昂贵的防火墙解决方案。
SELinux是Security-Enhanced Linux的简称,是美国国家安全局NSA(The National Security Agency)和SCC(Secure Computing Corporation)开发的 Linux的一个扩张强制访问控制安全模块。原先是在Fluke上开发的,2000年以GNU GPL发布。
SELinux(Security-Enhanced Linux) 是对于强制访问控制的实现,是Linux上最杰出的新安全子系统。NSA是在Linux社区的帮助下开发了一种访问控制体系,在这种访问控制体系的限制下,进程只能访问那些在他的任务中所需要文件。SELinux 默认安装在 Fedora 和 Red Hat Enterprise Linux 上,也可以作为其他发行版上容易安装的包得到。
对于目前可用的 Linux安全模块来说,SELinux 是功能最全面,而且测试最充分的,它是在 20 年的 MAC 研究基础上建立的。SELinux 在类型强制服务器中合并了多级安全性或一种可选的多类策略,并采用了基于角色的访问控制概念。
大部分使用SELinux的人使用的都是SELinux就绪的发行版,他们都是在内核中启用SELinux的,并且提供一个可定制的安全策略,还提供很多用户层的库和工具,它们都可以使用 SELinux 的功能。
SELinux是一种基于域-类型模型(domain-type)的强制访问控制(MAC)安全系统,它由NSA编写并设计成内核模块包含到内核中,相应的某些安全相关的应用也被打了SELinux的补丁,最后还有一个相应的安全策略。
众所周知,标准的UNIX安全模型是"任意的访问控制"DAC。就是说,任何程序对其资源享有完全的控制权。假设某个程序打算把含有潜在重要信息的文件扔到/tmp目录下,那么在DAC情况下没人能阻止他!而MAC情况下的安全策略完全控制着对所有资源的访问。这是MAC和DAC本质的区别。SELinux提供了比传统的UNⅨ权限更好的访问控制。
点评:
Linux操作系统在服务器领域已经占据了很强的领地,这与其自身的免费、开源以及极高的安全性分不开的。做好Linux操作系统的维护,需要善用Linux系统高效的工具资源。只有熟练运用、熟知Linux脾性才能将这个默默无闻的宝物发挥到极致。
看过“ linux操作系统安全性 ”
浏览量:2
下载量:0
时间:
众所周知,网络安全是一个非常重要的课题,而服务器是网络安全中最关键的环节。Linux被认为是一个比较安全的Internet服务器,作为一种开放源代码操作系统,一旦Linux系统中发现有安全漏洞,Internet上来自世界各地的志愿者会踊跃修补它。下面大家与读文网小编一起来学习一下linux操作系统安全设置吧。
1. 交换机的安全
启用VLAN技术:交换机的某个端口上定义VLAN ,所有连接到这个特定端口的终端都是虚拟网络的一部分,并且整个网络可以支持多个VLAN。VLAN通过建立网络防火墙使不必要的数据流量减至最少,隔离各个VLAN间的传输和可能出现的问题,使网络吞吐量大大增加,减少了网络延迟。在虚拟网络环境中,可以通过划分不同的虚拟网络来控制处于同一物理网段中的用户之间的通信。这样一来有效的实现了数据的__,而且配置起来并不麻烦,网络管理员可以逻辑上重新配置网络,迅速、简单、有效地平衡负载流量,轻松自如地增加、删除和修改用户,而不必从物理上调整网络配置。
2. 路由器的安全
根据路由原理安全配置路由器路由器是整个网络的核心和心脏, 保护路由器安全还需要网管员在配置和管理路由器过程中采取相应的安全措施。
(1)堵住安全漏洞
限制系统物理访问是确保路由器安全的最有效方法之一。限制系统物理访问的一种方法就是将控制台和终端会话配置成在较短闲置时间后自动退出系统。避免将调制解调器连接至路由器的辅助端口也很重要。一旦限制了路由器的物理访问,用户一定要确保路由器的安全补丁是最新的。
(2)避免身份危机
入侵者常常利用弱口令或默认口令进行攻击。加长口令、选用30到60天的口令有效期等措施有助于防止这类漏洞。另外,一旦重要的IT员工辞职,用户应该立即更换口令。用户应该启用路由器上的口令加密功能。
(3)禁用不必要服务
近来许多安全事件都凸显了禁用不需要本地服务的重要性。需要注意的是,一个需要用户考虑的因素是定时。定时对有效操作网络是必不可少的。即使用户确保了部署期间时间同步,经过一段时间后,时钟仍有可能逐渐失去同步。用户可以利用名为网络时。
浏览量:2
下载量:0
时间:
有网友问到:“linux系统有没有什么安全软件”,其实很多人不明白为什么大家都说Linux的安全性不是很高吗?怎么还要安全软件?下面大家与读文网小编一起来学习一下吧。
首先,Linux比其它操作系统更稳定更安全。理论上Linux是有可能被病毒侵害的。但实际上 Linux机器几乎不可能遭受病毒的攻击。所以我这里的问题是为什么要为Linux准备防病毒软件,为了更好理解,我准备了以下理由:
Linux平台安装杀毒软件的原因:
● 从Linux平台扫描Windows驱动
● 通过网络扫描Windows工作站
● 在Linux服务器中扫描接收和发送的邮件
● 扫描发送给其它机器的重要文件
下面向你推荐最好的免费的Linux平台杀毒软件
1、ClamAV 杀毒
ClamAV 杀毒是Linux平台最受欢迎的杀毒软件,ClamAV属于免费开源产品,支持多种平台,如:Linux/Unix、MAC OS X、Windows、OpenVMS。ClamAV是基于病毒扫描的命令行工具,但同时也有支持图形界面的ClamTK工具。ClamAV主要用于邮件服务器扫描邮件。它有多种接口从邮件服务器扫描邮件,支持文件格式有如:ZIP、RAR、TAR、GZIP、BZIP2、HTML、DOC、PDF,、SIS CHM、RTF等等。ClamAV有自动的数据库更新器,还可以从共享库中运行。命令行的界面让ClamAV运行流畅,你不必以后台进程的方式运行,当你想扫描时只需输入扫描命令指定文件或目录就行,更多信息点击这里。
2、Avast Linux 家庭版
对于你的计算机来说,Avast是最好的防病毒解决方案之一。Avast Linux家庭版是免费的,只能用户家庭或者非商业用途。简单易用的用户界面和其它特性使得Avast变得逐渐流行起来,同样支持GUI和命令行两种工具。所有用户都能轻松地操作,因为它有简单界面(初级用户)高级界面(高级用户),Avast有以下一些特性:自动更新、内置邮件扫描器等,你可以从这个网址找到更多信息。
3、Avria
另一个Linux下最好的杀毒软件是Avria免费杀毒版,Avria提供可扩展配置,控制你的计算机成为可能。它有一些很强大的特性,例如:简单的脚本安装方式、命令行扫描器、自动更新(产品、引擎、VDF)、自我完整性程序检查等等。你可以从这个PDF中找到更多关于安装和特性的信息。
4、AVG 免费版杀毒
现在有超过10亿用户使用AVG杀毒,同样是Linux机器中不错的杀毒专家,免费版提供的特性比高级版要少。AVG目前还不支持图形界面。提供防病毒和防间谍工具,AVG运行速度很快,占用系统资源很少,支持主流Linux版本如:Debian、Ubuntu、Red hat、Cent OS、FreeBSD等等,更多信息可查看它的特性及下载页面。
5、F-PROT 杀毒
F-PORT属于Linux用户中的一种新的杀毒解决方案,对家庭用户免费。它有使用克龙(cron)工具的任务调度的特性,能在指定时间执行扫描任务。同时它还可以扫描USB HDD、Pendrive、CD-ROM、网络驱动、指定文件或目录、引导区病毒扫描、镜像。更多信息你可以查看F-PORT的特性页面,可以从这里下载。
从以上讨论中可看出,每种杀毒软件都有它自己的特性,有些支持良好的图形界面,有些更适合命令行扫描,根据这些特性选择一款最适合你自己的吧!
看过“ linux系统安全软件 ”
浏览量:2
下载量:0
时间:
Linux是一种类Unix的操作系统。从理论上讲,Unix本身的设计并没有什么重大的安全缺陷。然而,作为开放式操作系统,它不可避免地存在一些安全隐患。那么怎么提高Linux系统安全?下面跟着读文网小编一起来了解一下吧。
1.选择全磁盘加密(FDE)
无论哪种操作系统所使用,我们建议您加密整个硬盘。
如果你对饿笔记本电脑丢失或被盗,用一个简单的登陆密码并不能保护你的数据安全,一个小偷可以利用USB秘钥的方式直接进入你的Linux系统窃取数据,而不需通过密码。
通过加密硬盘驱动器,可以确保您的数据安全,因为小偷如果没有FDE密码就不能够读取什么。
FDE加密的知识你的主文件夹,你不必担心临时文件,交换文件或者其他目录的文件,在你没有意识的情况下被访问。
在Ubuntu和Fedora和许多的Linux发行版,全瓷盘加密是在安装时使用的权利。你可以在安装的时候选择是否启动它。
当然,记得要选择一个正确的密码!
2.软件跟上更新
同样,无论你使用哪种操作系统,你都应该保持操作系统中的应用程序,如Web浏览器,PDF阅读器和视频播放器等软件是最新的。
大多数的Linux发行版实现是非常容易的。
在Ubuntu上,默认情况下,系统会自动安装更新。
捏可以仔细检查系统的设置——软件更新——更新。
你要确保重要的安全更新选择是打开的。
3.学习使用Linux的防火墙
Linux内核包含一个防火墙组件叫做iptables,它给你一个强大的方式来管理网络流量,并保持了很多各种各样的网络攻击。
在Ubuntu上你也将有一个称为单纯性防火墙(UFW)应用程序,前端程序简化了设置的iptables。
默认情况下UFW是禁用的,但你可以通过做打开它在命令提示符下:
要了解更多关于iptables和它能做什么,你可能尝试一个图形化配置工具,如GUFW或UFW前端。
在Fedora上,你会发现FirewallD,这是默认启用的替代防火墙管理工具FirewallD,称为防火墙配置;您可以从命令提示符下安装:
4.拧紧了安全浏览器
许多免费的扩展插件可以改善你的浏览器,但是这同样也带来了安全隐私的问题,不管你使用的Mozilla Firefox浏览器,谷歌Chrome或其他浏览器。
5.使用防病毒软件
之所以最后提这一点,是因为这个方式拥有很多争议。
有些人会告诉你,在Linux操作系统中安全防毒软是毫无意义的。其实这是一个非常错误的观念。
为什么不呢?如果你通过一个受感染的文件感染到其它文件,那么如果你有杀毒软件,就能够保护你的系统不再被攻击。降低了你被攻击的危险。
以上就是提高Linux系统安全的五大方法,只要我们根据上面介绍的方法在平时多加注意和运用就能提高系统的安全性,防范于未然。
浏览量:2
下载量:0
时间:
用户们总会用层出不穷的方法给自己惹上麻烦。他们会使用共享软件使自己暴露在入侵者面前或者忘记使用电压保护装置。与您的用户分享这个傻事清单,能够避免他们犯这些原本可以避免发生的错误。下面是读文网小编为大家整理的系统安全的防护技巧,希望大家能够从中有所收获!
紧张的新手经常会害怕某个错误操作会永久破坏计算机。幸运的是,结果并没有想象的那么严重。虽然如此,但是用户还是经常给计算机以及您的网络创造各种麻烦。以下是一些 您和您的用户能够引以为戒,远离可预防的问题的常见错误。
许多家庭用户会毫不犹豫的将电脑接上漂亮的新电缆或者DSL调制解调器开始上网,而没有意识到他们正将自己暴露在病毒和入侵者面前。无论是宽带调制 解调器或者路由器中内置的防火墙,还是调制解调器或路由器与电脑之间的独立防火墙设备,或者是在网络边缘运行防火墙软件的服务器,或者是电脑上安装的个人 防火墙软件(如 Windows XP中内置的ICF/ Windows 防火墙,或者类似Kerio或ZoneAlarm的第三方防火墙软件),总之,所有与互联网相连的计算机都应该得到防火墙的保护。
笔记本电脑上安装的个人防火墙的好处在于,当用户带着电脑上路或者插入酒店DSL或电缆端口,或者与无线热点相连接时,已经有了防火墙。拥有防火墙不是全部,你还需要确认 防火墙已经开启,并且配置得当,能够发挥保护作用。
浏览量:3
下载量:0
时间:
现在互联网的重要性越来越大,很多人也对一些技术很感兴趣,那么你知道Linux网站安全加固吗?下面是读文网小编整理的一些关于Linux网站安全加固的相关资料,供你参考。
php安全配置:
1. 确保运行php的用户为一般用户,如www
2. php.ini参数设置
open_basedir可将用户访问文件的活动范围限制在指定的区域,通常是其家目录的路径,也可用符号"."来代表当前目录。注意用open_basedir指定的限制实际上是前缀,而不是目录名。
举例来说: 若"open_basedir = /home/wwwroot", 那么目录"/home/wwwroot"和"/home/wwwroot1"都是可以访问的。所以如果要将访问限制在仅为指定的目录,请用斜线结束路径名。
注意:
从网上获取的资料来看,open_basedir会对php操作io的性能产生很大的影响。研究资料表明,配置了php_basedir的脚本io执行速度会比没有配置的慢10倍甚至更多,请大家自己衡量
open_basedir也可以同时设置多个目录, 在Windows中用分号分隔目录,在任何其它系统中用冒号分隔目录。当其作用于Apache模块时,父目录中的open_basedir路径自动被继承。
mysql安全配置:
1. MySQL版本的选择
在正式生产环境中,禁止使用4.1系列的MySQL数据库。至少需要使用5.1.39或以上版本。
2. 网络和端口的配置
在数据库只需供本机使用的情况下,使用–skip-networking参数禁止监听网络 。
3. 确保运行MySQL的用户为一般用户,如mysql,注意存放数据目录权限为mysql
4. 开启mysql二进制日志,在误删除数据的情况下,可以通过二进制日志恢复到某个时间点
5. 认证和授权
(1) 禁止root账号从网络访问数据库,root账号只允许来自本地主机的登陆。
(2) 删除匿名账号和空口令账号
web服务器安全配置:
确保运行Nginx或者Apache的用户为一般用户,如www,注意存放数据目录权限为www
防止sql注入代码
if ( $query_string ~* ".*[;'<>].*" ){ return 404;}
关闭存放数据上传等目录的PHP解析
location ~* ^/(attachments|data)/.*.(php|php5)${deny all ;}
针对Apache:关闭图片目录/上传等目录的PHP解析
order allow,deny
Deny from all
木马查杀与防范:
php木马快速查找命令
grep -r --include=*.php '[^a-z]eval($_POST' /home/wwwroot/
grep -r --include=*.php 'file_put_contents(.*$_POST[.*]);' /home/wwwroot/
利用find mtime查找最近两天或者发现木马的这几天,有哪些PHP文件被修改
find -mtime -2 -type f -name *.php
防范:
1. 做好之前的安全措施,比如禁用相关PHP函数
2. 改变目录和文件属性
3. 为防止跨站 感染,需要做虚拟主机目录隔离
(1) nginx 的简单实现方法
利用nginx跑多个虚拟主机,习惯的php.ini的open_basedir配置:
open_basedir = ./:tmp:/home/wwwroot/
注:/home/wwwroot/是放置所有虚拟主机的web路径
黑客 可以利用任何一个站点的webshell进入到/home/wwwroot/目录下的任何地方,这样对各个虚拟主机的危害就很大
例如: /data/www/wwwroot目录下有2个虚拟主机
修改php.ini
open_basedir = ./:/tmp:/home/wwwroot/www.a.cn:/home/wwwroot/b.cn
这样用户上传webshell就无法跨目录访问了。
(2) Apache的实现方法,控制跨目录访问
在虚拟机主机配置文件中加入
php_admin_value open_basedir "/tmp:/home/wwwroot/www.a.cn
看过文章“Linux网站安全加固”
浏览量:3
下载量:0
时间:
今天读文网小编就要为大家上一堂关于Linux系统安全配置的课,希望对此感兴趣或者要学这些命令的童鞋可以跟着小编往下看。
从计算机安全的角度看,世界上没有绝对密不透风、百分之百安全的计算机系统,Linux系统也不例外。采用以上的安全守则,虽然可以使Linux系统的安全性大大提高,使顺手牵羊型的黑客和电脑玩家不能轻易闯入,但却不一定能阻挡那些身怀绝技的武林高手,因此,企业用户还需要借助防火墙等其他安全工具,共同防御黑客入侵,才能确保系统万无一失。
浏览量:3
下载量:0
时间:
win7怎样通过360安全卫士防黑加固系统安全系数?系统防黑加固能够扫描检测电脑容易被黑客攻击而存在的“软肋”问题,如远程注册表服务、Teinet服务和隐藏的盘符共享和数据库密码等等安全弱点,而360安全卫士是自带防黑加固功能,下面读文网小编就教你win7通过360安全卫士防黑加固系统安全系数的方法。
1、下载360安全卫士并安装,然后打开主界面,点击右下方的“更多”选项;
2、在电脑安全选项下面找到防黑加固;
3、点击防黑加固进入;
4、点击立即检测,这时候软件就会检测出系统目前存在的问题,具体可以通过检测结果看出来。然后就根据当前的状态以及加固建议,对问题进行处理。
5、立即处理后点击完成就行了;
6、这里只是一般简系统安全处理的方法,日常使用的时候要养成好的操作习惯,不要加载那些不安全的控件等。
浏览量:2
下载量:0
时间:
没有哪个计算机系统是绝对安全的,如果没有系统安全保护意识,就很容易被黑客攻击,导致信息泄露,那么我们要如何增强系统的安全呢?下面读文网小编就给大家介绍下强化Linux系统安全的方法,一起来学习下吧。
时常有人说,Linux比Windows更安全。但与网络衔接的任何计算机是不能够相对安全的。正如我们须要经常留意院子的围墙能不能稳固一样,对操作系统也须要我们经常维护和强化。在此,我们仅谈论多个用户可以用来强化系统的大体步骤。
本文重点谈的是如何强化的疑问,不过在开端强化之前,用户须要对以下三个疑问有一个清醒的看法,一个疑问是这个系统用于什么目的,二是它须要运转哪些软件,三是用户须要防护哪些破绽或威胁。这三个疑问顺次为因果联系,即前一个疑问是后一个疑问的原由,后一个疑问是前一个的结果。
从一个已知的安全形态开端强化一个系统是完全能够的,但在实践上这种强化也可以够从一个“裸体”系统开端。这意味着用户将拥有对系统盘重新分区的时机,将一切的数据文件与操作系统文件分分开来未尝不是一个慎重的安全方法。
下一步是配置一个最小的装置,当然得让系统启动,然后添加必要的可以完成任务的顺序包。这一步很主要。为什么须要最少化装置呢?原由在于机器中的代码越少,可被运用的破绽就会越少:谁也不能运用并不存在的破绽,是不是?你还须要给操作系统打补丁,并且还得给运转在这个系统上的一切使用顺序打补丁。
不过,要留意,假设有人可以从物理上接近所访问的机器,他就有能够从光盘或其它媒体启动计算机,并获取系统的访问权。因而,用户最好配置一下系统的BIOS,限定仅能从硬盘启动,并且要用一个强壮的口令来维护这种配置。
下一步是编译一下自己的系统内核,这里照旧要强调仅包括那些你须要的局部。一旦你自己定制的系统构建终了,重新启动进入内核,那你所拥有内核的被攻击的能够性将极大地降低。但强化系统的方法不限于此,好戏还在后头。
浏览量:2
下载量:0
时间:
现如今,电脑的使用越来越普遍,几乎每家每户都有电脑,而电脑的操作离不开操作系统,在这里,读文网小编就向大家介绍如何熟悉Linux病毒做好系统的防护。
一、当心Linux病毒
在Linux出现之初,由于其最初的优秀设计,似乎具有先天病毒免疫能力,所以当时有许多人相信不会有针对Linux的病毒出现,但是Linux终于也不能例外。1996年秋,澳大利亚一个叫VLAD的组织用汇编语言编写了据称是Linux系统下的第一个病毒的Staog,它专门感染二进制文件,并通过三种方式去尝试得到root权限。当然,设计Staog病毒只是为了演示和证明Linux有被病毒感染的潜在危险,它并没有对感染的系统进行任何损坏行动。
2001年,一个名为Ramen的Linux蠕虫病毒出现了。Ramen病毒可以自动传播,无需人工干预,虽然它没有对服务器进行任何破坏,但是它在传播时的扫描行为会消耗大量的网络带宽。Ramen病毒是利用了Linux某些版本(Redhat6.2和 7.0)的rpc.statd和wu-ftp这两个安全漏洞进行传播的。
同年的另一个针对Linux的蠕虫病毒Lion则造成了实际的危害,当时Lion通过互联网迅速蔓延,并给部分用户的电脑系统造成了严重破坏。Lion病毒能通过电子邮件把一些密码和配置文件发送到互联网上的某个邮箱中,攻击者在收集到这些文件后就可能通过第一次突破时的缺口再次进入整个系统,进行更进一步的破坏活动,比如获机密信息、安装后门等。当用户的Linux系统感染了这个病毒,很有可能因为不能判断入侵者如何改动了系统而选择重新格式化硬盘。而且,一台Linux主机在感染了Lion病毒后就会自动开始在互联网上搜寻别的受害者。事后的反馈表明Lion病毒给许多Linux用户造成了的严重的损失。
其它Linux平台下病毒还有OSF.8759、Slapper、Scalper、Unux.Svat和BoxPoison等,当然,大多数普通的Linux用户几乎没有遇到过它们。这是因为直到目前,Linux上的病毒还非常少,影响的范围也很小。但随着Linux用户的增加,越来越多的Linux系统连接到局域网和广域网上,自然增加了受攻击的可能,可以预见到会有越来越多的Linux病毒出现,因此如何防范Linux病毒就成为每个Linux用户现在就应该开始注意的事情了。
二、抓住弱点,个个击破
Linux的用户也许听说甚至遇到过一些Linux病毒,这些Linux病毒的原理和发作症状各不相同,所以采取的防范方法也各不相同。为了更好地防范Linux病毒,我们先对已知的一些Linux病毒进行分类。
从目前出现的Linux病毒来看,可以归纳到以下几个病毒类型中去:
1、感染ELF格式文件的病毒
这类病毒以ELF格式的文件为主要感染目标,通过汇编或者C可以写出能感染ELF文件的病毒。Lindose病毒就是一能感染ELF文件的病毒,当它发现一个ELF文件时,将检查被感染的机器类型是否为Intel80386。如果是,则查找该文件中是否有一部分的大小大于2784字节(或十六进制AEO),如果有,病毒就会用自身代码覆盖它并添加宿主文件的相应部分的代码,同时将宿主文件的入口点指向病毒代码部分。
防范:由于Linux下有良好的权限控制机制,所以这类病毒要有足够的权限才能进行传播。在防范此类病毒时,我们要注意管理好自己Linux系统中的各种文件的权限,特别要注意的是在做日常操作时不要使用root账号,最好不要以root身份运行来历不明的可执行文件,以免无意中触发了含病毒的文件从而传染到整个系统中。
2、脚本病毒
脚本病毒是指使用shell等脚本语言编写的病毒。此类病毒编写较为简单,不需要具有很高深的知识,很容易就实现对系统进行破坏,比如删除文件、破坏系统正常运行、甚至下载安装木马等。但它传播性不强,通常是在本机上造成破坏。
防范:防范此类病毒也是要注意不要随便运行来源不明的脚本,同时,要严格控制对root权限的使用。
3、蠕虫病毒
Linux下的蠕虫病毒与Windows下的蠕虫病毒类似,可以独立运行,并将自身传播到另外的计算机上去。在Linux平台下的蠕虫病毒通常利用一些Linux系统和服务的漏洞来进行传播,比如,Ramen病毒就是利用了Linux某些版本(Redhat6.2和7.0)的rpc.statd和wu-ftp这两个安全漏洞进行传播的。
防范:防范此类病毒要堵住蠕虫病毒发作的源头,从已经出现的几个Linux病毒爆发事件来看,它们都是利用了Linux已经公布了的几个安全漏洞,如果用户及时采取了对应的安全措施就不会受到它们的影响。不过遗憾的是,许多Linux的管理员并没有紧密跟踪与自己系统和服务相关的最新信息,所以还是给病毒有可乘之机。
用户要做好本机的安全工作,特别要关心Linux的安全漏洞信息,一旦有新的Linux安全漏洞出现,就要及时采取安全措施。此外,还可以配合防火墙规则来限制蠕虫病毒的传播。
4、后门程序
后门程序也可以被看成广义的病毒,在Linux平台上也非常活跃。Linux后门利用系统服务加载、共享库文件注射、rootkit工具包、甚至可装载内核模块(LKM)等技术来实现,许多Linux平台下的后门技术与入侵技术相结合,非常隐蔽,难以清除。
防范:防范此类病毒可以借助一些软件来进行,有一些软件可以帮助用户找出系统中的各种后门程序。
5、其它病毒
在Linux平台除了面对针对Linux的病毒之外,还要注意到许多Windows病毒会存在于Linux的文件系统中,当然,这类windows病毒是不会在Linux中发作的,但它们有机会传递到Windows系统中。
比如,Linux的Samba服务器可以作为整个网络中的文件服务器,当有用户将含有Windows病毒的文件上传到Samba服务器后,Samba服务器就成为一个病毒携带者,虽然它不会感染这种Windows病毒,但是其它访问过Samba服务的人就有可能从中感染到病毒。
防范:为了整体的安全,在Linux系统中也需要能查找和杀除Windows病毒。这就需要使用一些专门的反病毒软件。
三、多方入手,剿杀Linux病毒
与Windows的病毒相比,从数量上看,Linux的病毒几乎可以忽略不计,但是Linux病毒的制造者们并不会停止,他们多是一些精通编写代码的黑客,Linux自身不可避免地存在的脆弱点很有可能会被他们利用从而编写出各式各样的新Linux病毒来。虽然,Linux病毒还没有开始泛滥,但如果用户毫无防范概念的话,一旦某个Linux病毒暴发,就很可能造成严重的后果。所以Linux用户应该及早重视起Linux病毒这个问题。
最后,对Linux平台下病毒的防范总结出以下几条建议,仅供参考:
(1)做好系统加固工作。
(2)留心安全公告,及时修正漏洞。
(3)日常操作不要使用root权限进行。
(4)不要随便安装来历不明的各种设备驱动程序。
(5)不要在重要的服务器上运行一些来历不明的可执行程序或脚本。
(6)尽量安装防毒软件,并定期升级病毒代码库。
(7)对于连接到Internet的Linux服务器,要定期检测Linux病毒。蠕虫和木马是否存在。
(8)对于提供文件服务的Linux服务器,最好部署一款可以同时查杀Windows和Linux病毒的软件。
(9)对于提供邮件服务的
浏览量:2
下载量:0
时间:
计算机病毒(Computer Virus)在《中华人民共和国计算机信息系统安全保护条例》中被明确定义计算机病毒--熊猫烧香,病毒指“编制者在计算机程序中插入的破坏计算机功能或者破坏数据,影响计算机使用并且能够自 我复制的一组计算机指令或者程序代码”。以下是读文网网小编为大家整理的关于linux操作系统如何实现对计算机病毒的防护的相关知识,希望对大家有所帮助!
如果要保护系统的安全,针对黑客入侵我们要做的第一步应该就是把预防工作提前做好。作为一名系统管理员一定要保证自己管理的系统在安全上没有漏洞。这样就不会给非法用户可乘之机。
1、充分利用Linux和Unix系统中内置的检查命令来检测系统。例如,下面的几个命令在Linux和Unix系统中就很有用处:
-who,查看谁登陆到系统中;
-w,查看谁登陆到系统中,且在做什么操作;
-last,显示系统曾经被登陆的用户和TTYS;
-history,显示系统过去被运行的命令;
-netstat,可以查看现在的网络状态;
-top,动态实时察看系统的进程;
-finger,查看所有的登陆用户;
2、定期检查系统中的日志、文件、时间和进程信息。如:
-检查/var/log/messages日志文件查看外部用户的登陆状况;
-检查用户目录下/home/username下的登陆历史文件(如:.history 文件);
-检查用户目录下/home/username的.rhosts、.forward远程登陆文件;
-用“find / -ctime -2 -ctime +1 -ls”命令来查看不到两天以内修改的一些文件;
-用“ls -lac”命令去查看文件真正的修改时间;
-用“cmp file1 file2”命令来比较文件大小的变化;
-保护重要的系统命令、进程和配置文件以防止入侵者替换获得修改系统的权利。
当然为了保证系统的绝对安全,除了做好预防和进行安全检查工作外,还要养成一个保证系统、网络安全的好习惯。这就是定期定时做好完整的数据备份。有了完整的数据备份,在遭到攻击或系统出现故障时也能迅速恢复系统。
对于病毒入侵的安全防范
如今DOS、Windows 9X/Me/NT/2000/XP系统下的病毒很流行,但人们几乎没听说过在Linux或Unix系统中有病毒,甚至有人认为Linux或Unix系统中没有病毒存在。其实这是一个很大的错误认识。事实上世界上第一个计算机病毒就是Unix病毒。如果Linux系统中一旦发生病毒泛滥,后果将不堪设想。现在很多种病毒都用标准的C程序来编写,以适应任何类的Linux和Unix操作系统。并且它们可以用make程序来跨平台编译。
尽管Windows NT/2000和Linux、Unix的系统是有着非常高级的保护机制的系统,可以预防大多数的病毒的传染,但不是所有的。因此,对于Linux系统来说,不是没有计算机病毒的危害存在。比如Morris、Ramen、Lion等蠕虫病毒都先后曾经对Linux甚至Unix系统进行过攻击。
一般大多数的Linux网络主要是由一台或多台安装Linux操作系统的服务器做Web Server或FTP Server,通常也会有Mail Server。目前工作站端大多是安装了Windows 9X/Me/NT/2000/XP等操作系统的计算机。对这种Linux网络计算机病毒防护主要还是基于工作站的单机防护。可以在Linux服务器上安装Samba服务,利用病毒扫描工具从某个安全的工作站定期对服务器磁盘上的文件进行扫描,从而达到病毒防护的目的。
计算机病毒是计算机制造商和政府最头痛的问题,据估计目前约有数千种病毒在计算机上流行,而每天又会出三种新的计算机病毒。目前,大多数计算机都使用软件来防治病毒,使用病毒防火墙的却不到一半,这使得计算机被感染的机会在不断增加。通常这些计算机病毒的感染来自企业内部网,这意味着公司中也许有许多计算机已遭受感染。在防不胜防的情况之下,只有时常注意计算机健康,没有异常情况发生,才是确保资料不被破坏的最好方法。
总而言之,做好系统安全工作是非常重要的,对企业来说是刻不容缓的。
浏览量:3
下载量:0
时间:
U盘是一种能够方便用户便携式存储数据的设备,U盘在我们的生活中较为广泛被使用,不过有些用户在win7系统下使用U盘时进行备份或转移资料后,在不使用U盘时,使用安全弹出U盘时出现电脑自动重启的问题,那么你知道win7系统安全弹出U盘出现电脑重启怎么办吗?下面是读文网小编整理的一些关于win7系统安全弹出U盘出现电脑重启的相关资料,供你参考。
1、返回到桌面位置,找到“这台电脑”图标,直接鼠标右键点击这台电脑,在出现的菜单里面选中选择设备管理器选项。
2、这样就能够打开win8系统设备管理器窗口,在窗口里面依次点击并展开左边菜单里面的通用串行总线控制器,然后鼠标右键点击里面的第一个usb root hub,接着点击“禁用”选项,就可以断开u盘连接。
3、需要重新启用u盘的话,先打开设备管理器,鼠标右键点击已禁用的usb root hub,此时显示的是启用,最后直接单击“启用”按钮进行重新启用连接u盘就行了。
win7系统安全弹出U盘出现电脑重启的相关
浏览量:3
下载量:0
时间:
如果没有设置DNS服务器的话,那么系统就不能正常上网了。,那么Linux系统怎么查看和修改DNS配置呢?下面读文网小编就为大家带来了Linux系统查看和修改DNS配置的方法。
1:查看/etc/resolv.con文件
[root@localhost ~]# cat /etc/resolv.conf
nameserver 192.168.xxx.xxx
#search localdomain
[root@localhost ~]#
2:使用nslookup命令查看DNS信息
[root@localhost ~]# nslookup 127.0.0.1 | grep Server
Server: 192.168.xxx.xxx
[root@localhost ~]#
3:使用dig命令来查看DNS信息
[root@localhost ~]# dig
; 《《》》 DiG 9.3.6-P1-RedHat-9.3.6-16.P1.el5 《《》》
;; global options: printcmd
;; Got answer:
;; -》》HEADER《《- opcode: QUERY, status: NOERROR, id: 36888
;; flags: qr rd ra; QUERY: 1, ANSWER: 13, AUTHORITY: 0, ADDITIONAL: 3
;; QUESTION SECTION:
;。 IN NS
;; ANSWER SECTION:
。 86163 IN NS m.root-servers.net.
。 86163 IN NS a.root-servers.net.
。 86163 IN NS j.root-servers.net.
。 86163 IN NS l.root-servers.net.
。 86163 IN NS e.root-servers.net.
。 86163 IN NS d.root-servers.net.
。 86163 IN NS k.root-servers.net.
。 86163 IN NS f.root-servers.net.
。 86163 IN NS h.root-servers.net.
。 86163 IN NS c.root-servers.net.
。 86163 IN NS g.root-servers.net.
。 86163 IN NS b.root-servers.net.
。 86163 IN NS i.root-servers.net.
;; ADDITIONAL SECTION:
a.root-servers.net. 3599 IN A 112.4.20.71
b.root-servers.net. 86163 IN A 192.228.79.201
i.root-servers.net. 86173 IN A 192.36.148.17
;; Query time: 8 msec
;; SERVER: 192.168.xxx.xxx#53(192.168.xxx.xxx)
;; WHEN: Sat Apr 16 07:34:37 2016
;; MSG SIZE rcvd: 289
[root@localhost ~]# dig | grep SERVER: | awk -F# ‘{ print $1 }’ | awk -F: ‘{ print $2 }’
192.168.xxx.xxx
4:其它一些方法查看DNS信息
在网上看到还有一些其他方法,查看服务器的DNS配置信息,如下所示,不过这些方法,由于环境限制,我没有验证过,仅供参考。
nm-tool | grep DNS
nmcli dev list iface eth0 | grep IP4
浏览量:3
下载量:0
时间: