当前位置:Linux教程 - Linux - Solaris系统的安全设置基本技巧

Solaris系统的安全设置基本技巧



         1 安装patches。
    安装patches对系统稳定和安全十分重要。看系统中安装了那些补丁
    %showrev –p 更新更安全的补丁在 sunsolve.sun.com
    2 设置用户默认登录权限
    umask 027 777-027=750 -rwxr-x---
    修改/etc/profile文件 umask 022 改为 umask 027
    3 Root 远程访问 telnet ftp
    /etc/default/login文件中 CONSOLE=/dev/console
    对2.6以#号注释掉CONSOLE=/dev/console 不可以用root 直接telnet
    对2.7以#号注释掉CONSOLE=/dev/console 不可以用root 直接telnet
    /etc/ftpusers文件中 加入root帐号 不能以root用户远程登录ftp
    4取消rlogin、rsh和rcp
    删除/etc/hosts.equiv 和/.rhosts文件和在/etc/inetd.conf文件中所有以“r”开
    头的服务。重新启动inetd守护进程
    %kill –HUP inetdID

    5 一些不需要的帐号
    删除lock帐号,注释掉sys,uucp,nuucp,listen帐号
    最好的方法是在/etc/shadow文件中的passwd上加上“NP”
    /etc目录中的文件应授予的权限
    %chmod –R g-w /etc
    6 禁止automounter
    automounter 是由/etc/auto_*设置的,为了禁止automounter,修改这些文件
    或将/etc/rc2.d/S74autofs文件改名 K14autofs
    7 NFS服务的设置
    NFS server端
    NFS是由/etc/dfs/dfstab文件控制,为了禁止NFS服务的后台程序
    将/etc/rc2.d/S15nfs.server文件改名 K15nfs.server
    NFS client端
    将/etc/rc2.d/S73nfs.client文件改名 K13nfs.client
    /etc/dfs/dfstab 文件有几个选项
    share –F nfs –o [rw/ro] /目录名
    rw是client端有读写权限, ro是client端只有读权限 [建议使用ro选项]
    8 带s位的程序setuid setgid
    hacker通常用带s位的程序来获得root的权限
    %find / -perm –4000 –exec ls –lab {} “;” 用此命令查看带s位的程序,查看
    是否有可疑的程序

    9 Inetd守护进程
    在/etc/inetd.conf文件中什么服务可以被禁止
    以下服务可以被禁止
    name , shell , login, exec, comsat, talk
    rusersd printer finger uucp 所有以“r”开头的服务
    其中finger和uucp存在着严重的安全隐患,应该注意。
    10 路由
    系统使用动态路由接受后台进程象in.routed和in.rdisc容易收到不正确的路
    由信息而收到攻击,使路由不能正常连接到其他网络。使用静态路由。
    /etc/init.d/inetinit
    两个功能:1.配置网络信息服务
    2.配置路由 /etc/defaultrouter 文件存在则静态路由,否则动态
    路由-启动in.routed和in.rdisc
    11 Rpcbind
    rpc(远程过程调用)提供远程呼叫,依靠远程系统的ip地址和远程用户的ID
    进行验证,这样很容易伪造和改变。
    禁止启动rpc /etc/rc2.d/S71rpc文件改名K71rpc

    12 NIS
    NIS是不安全的服务,使用和设置NIS+会更安全

    13 防止由于Buffer溢出可以执行任意命令
    hacker进入系统后大部分是利用buffer overflow取得root shell
    为了防止基于堆栈的缓冲区溢出,可以增加以下设置
    在/etc/system文件中加入
    set noexec_user_stack=1 防止在堆栈中执行
    set noexec_user_stack_log=1 当某人试图运行增加一个记录
    14 Crontab
    删除/var/spool/cron/crontabs 目录中除了root文件外所有文件。
    15 使anonymous ftp 和ftp server更安全
    1. 在/etc/passwd文件中
    ftp:x:30000:30000:Anonymous FTP:/ftp目录:/nosuchshell
    2. 在/etc/shadow文件中
    ftp:NP:6445::::::
    3. FTP-server的配置文件/etc/ftpaccess
    class local real * 重定义真实用户为local
    class remote guest,anonymous * 重定义匿名用户为remote
    limit local 100 Any /ftp目录/msgs/limit.local 限制登录用户数
    limit remote 100 Any / ftp目录/msgs/limit.remote 限制登录用户数
    banner /ftp目录/msgs/msg.banner
    loginfails 2 重试次数
    readme README* login
    readme README* cwd=*
    message /ftp目录/msgs/welcome.msg login local remote
    message /ftp目录/msgs/cwd.msg cwd=* remote
    compress yes local,remote
    tar yes remote,local
    log commands real
    log transfers anonymous,real,guest inbound,outbound
    shutdown /ftp目录/msgs/shutmsg

    16 考虑不必要的启动文件
    在/etc/rc2.d目录中建议将一些不必要的文件改名,使之不能Autostart
    S47asppp S70uucp S71rpc S73nfs.client S74autofs
    S80lp S88sendmail
    改名为以K开头的文件

    17 telnet
    在Sloaris中不能设置验证ip地址来限制telnet ftp ..etc的访问。
    需要安装tcp-wrapper软件来实现ip验证
    在/etc/目录中加入hosts.allow和hosts.deny文件进行限制。

    发布人:fei 来自: