您的位置:首页 > 运维架构 > Linux

linux安全配置

2005-05-19 09:40 232 查看
linux rpm tips
rpm -ivh xxx.i386.rpm (install)
rpm -e xxx (uninstall)
rpm -Uvh xxx.i386.rpm (update)
rpm -q xxx (query)
rpm -qi (query infomation)
rpm -ql (query & list file)
rpm --checksig xxx (check the 签名)
rpm -ivh --rebuild xxx.src.rpm (安装以原代码发布的rpm包)
 
安装完linux 需要卸载的软件包(无法选择不安装)
rpm -e softname
[pump/apmd/lsapnptools/redhat-logos/mt-st/kernel-pcmcia-cs/Setserial/redhat-release/
eject/kudzu/gd/raidtools/pciutils/mailcap/setconsols/gnupg]
(某些视情况而定)
终端使用颜色
vi /etc/profile
add:
#enable colour is
eval 'dircolors /etc/DIR_COLORS -b'
export LS_OPTIONS='-s -F -T 0 --color=yes'
:wq!
vi /etc/bashrc
add:
alias ls='ls --color=auto'
:wq!
# source /etc/profile /etc/bashrc



强制口令长度:
vi /etc/login.defs
PASS_MIN_LEN 5 -> PASS_MIN_LEN 8
日期
PASS_MAX_DAYS   99999
PASS_MIN_DAYS   0
 
禁止控制台访问
#!/bin/sh
cd /etc/pam.d
for i in *;
do
 sed '/[^#].*pam_console.so/s/^/#/' <$i> foo && mv foo $i
done
 
配置inetd
建议先禁止所有服务
然后保证inetd.conf不可改变
chattr +i /etc/inetd.conf
 
配置简单的访问规则
先编辑
/etc/hosts.deny
加入:ALL:ALL@ALL 禁止所有访问 (可以加上PARANOID参数,进行域名解析)
再编辑 /etc/hosts.allow
加上允许远程登陆的ip
daemon:ip or hostname
然后运行 tcpdchk 命令来配置TCP_WAPPERS。

编辑/etc/aliases
注释decode
运行 /usr/bin/newaliases 使配置生效
sendmail 配置
编辑 /etc/sendmail.cf  使之无法用expn,vrfy来刺探系统用户名

O PrivacyOptions=autwarnings
改为
O PrivacyOptions=authwarnings,noexpn,novrfy (或者改为 O PrivacyOptions=goaway 同样效果)
编辑 /etc/sendmail.cf  修改回显banner
O SmtpGreetingMessage=$j Sendmail $v/$Z; $b NO UCE C=CN L=SZ
O SmtpGreetingMessage=mail sever; $b NO UCE C=CN L=SZ
 
使ping无响应
添加 "echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all"到/etc/rc.d/rc.local
1表示关闭ping echo
0表示启用ping echo

不显示系统登陆提示信息
telnet  stream  tcp     nowait  root    /usr/sbin/tcpd  in.telnetd -h
加个-h
 
禁止ip原路由
for i in /proc/sys/net/ipv4/conf/*/accept_source_route;do
echo 0 >$i
done
此脚本将禁止所有interface的原路由包
 
syn cookie
防止syn flood
echo 1 > /proc/sys/net/ipv4/tcp_syncookie
 
/etc/services file
chattr +i /etc/services
 
/etc/securetty file
comment out the tty2-tty8 only allow root login from tty1
 
/etc/passwd;/etc/shadow;/etc/group;/etc/gshadow file
chattr +i this file
 
防止任何人都su成root
编辑/etc/pam.d/su 文件
[root@Linux jane]# cat /etc/pam.d/su
#%PAM-1.0
#auth   sufficient      /lib/security/pam_rootok.so debug
#auth   required        /lib/security/pam_wheel.so group=wheel
auth       required     /lib/security/pam_pwdb.so shadow nullok
account    required     /lib/security/pam_pwdb.so
password   required     /lib/security/pam_cracklib.so
password   required     /lib/security/pam_pwdb.so shadow use_authtok nullok
session    required     /lib/security/pam_pwdb.so
session    optional     /lib/security/pam_xauth.so
[root@Linux jane]#
去掉 第一第二行的注释(#),此时只有wheel组用户可以su root,再编辑/etc/group文件,控制wheel组用户。
 
资源限制
1.编辑/etc/security/limits.conf
加入
* hard core 0 #禁止创建core文件
* hard rss 5000 #除了root外,其他用户最多有5m内存
* hard nproc 20 #最多进程数限制在20
*号表示所有登陆系统的用户
2.编辑/etc/pam.d/login
加入
session required /lib/security/pam_limits.so
  
控制mount的文件系统
编辑/etc/fstab
[root@Linux jane]# cat /etc/fstab
/dev/hda2               /                       ext2    defaults        1 1
/dev/hda1               /mnt/C                  vfat    defaults        1 0
/dev/hda6               /home                   ext2    nosuid,nodev        1 2
/dev/cdrom              /mnt/cdrom              iso9660 noauto,owner,ro 0 0
/dev/hda5               /usr/local              ext2    defaults        1 2
/dev/fd0                /mnt/floppy             auto    noauto,owner    0 0
none                    /proc                   proc    defaults        0 0
none                    /dev/pts                devpts  gid=5,mode=620  0 0
/dev/hda7               swap                    swap    defaults        0 0
[root@Linux jane]#
/dev/hda6               /home                   ext2    nosuid,nodev        1 2
表示/home目录不允许存在设备块文件(nodev).不允许设定文件的suid,sgid许可位(nosuid)
如果加上noexec
/dev/hda6               /home                   ext2    nosuid,nodev,noexec        1 2
则表示此文件系统上不允许有任何可执行二进制文件
  
配置安全的lilo.conf:
设置timeout=00
设置single模式密码
restricted
password=xxxxxx
注意给每个kernel都应配置密码
chattr +i /etc/lilo.conf
 
使ctrl+alt+del关机无效
编辑/etc/inittab
注释掉
ca::ctrlaltdel:/sbin/shutdown -t3 -r now -> #ca::ctrlaltdel:/sbin/shutdown -t3 -r now
# /sbin/init q
  
带"s"位的程序
查找所有带s位的程序
find / -type f /( -perm -04000 -o -perm -02000 /) -print
find /home/httpd -type f -perm -4000 -exec chmod 744 {} /; -print
查找特殊文件名字
find / -name ".. " -print -xdev
find / -name ".*" -print -xdev | cat -v
查找任何人都有写权限的文件和目录
find / -type f /( -perm -2 -o -perm -20 /) -print
find / -type f /( -perm -2 -o -perm -20 /) -user root -group root -print
find / -type d /( -perm -2 -o -perm -20 /) -print
查找没有主人的文件
find / -nouser -o -nogroup (不用在乎/dev下面的文件)
查找.rhosts文件
find / -name .rhosts -print
 
linux 网络配置
安装多块网卡
isa的3c509卡,一块io是0x300,一块是0x320
编辑/etc/conf.modules
alias eth0 3c590
alias eth1 3c590
options 3c509 io=0x300,0x320
PCI的3c509卡
编辑/etc/conf.modules
alias eth0 3c590
alias eth1 3c590
某些情况下.isa卡需要配置lilo.conf
由lilo来传递配置参数给kernel
append="ether="0,0,eth1
 
linux下网络设备配置文件在
/etc/sysconfig/network-scripts/目录下的ifcfg-ethx 文件
可以直接修改此文件来改网络配置
DEVICE=name 物理设备的名字
IPADDR=addr 该卡的ip地址
NETMASK=mask 网络掩码
BROADCAST=addr 广播地址
ONBOOT=yes/no 启动时是否激活
BOOTPROTO=proto proto取值:
                     none 无须启动协议
                     bootp 使用bootp协议
                     dhcp 使用dhcp协议
USERCTL=yes/no  是否允许非root用户控制该设备
 
/etc/hosts.conf文件指定如何解析主机名
order bind,hosts 指主机名的查询顺序.先由dns再由/etc/hosts文件
multi on 指在/etc/hosts文件中可以指定多个地址
ospoof on 指不允许对该服务器进行ip欺骗
/etc/sysconfig/network 文件
该文件用来指定服务器上的网络配置信息
NETWORK=yes/no  网络是否被配置
FORWARD_IPV4=yes/no  是否开启ip转发功能
HOSTNAME="hostname"  表示服务器的主机名
GATEWAY="ip"  网关地址
GATEWAYDEV="dev"  网关设备名
网络配置
ifconfig eth0 ip netmask 255.255.255.0
route add default gw gw-ip
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息