zoukankan      html  css  js  c++  java
  • 小措施提高Linux服务器安全

    禁止root远程登录

    作为默认系统管理账号root是最容易攻击的目标。禁止通过ssh远程登录是绝对必须的。

    方法:

    编辑 /etc/ssh/sshd_config

    PermitRootLogin no

    同时,请为管理员建立个人账户,并分配到sudoers用户组(默认为%admin)

    $ sudo adduser example_user
    $ sudo usermod –a -G admin example_user

    修改SSHD默认端口

    远程服务SSHD的默认端口22也是端口扫描的重点目标,修改为其他端口(通常为1024以上)可避免大部分攻击。 方法: 编辑 /etc/ssh/sshd_config

    Port 8822 #default 22
    vi /etc/sysconfig/iptables 
    -A INPUT -m state –state NEW -m tcp -p tcp –-dport 80 -j ACCEPT(允许80端口通过防火墙) 
    -A INPUT -m state –state NEW -m tcp -p tcp –-dport 3306 -j ACCEPT(允许3306端口通过防火墙)

    使用SCP代替FTP

    FTP虽然方便,但是安全性一直被诟病。

    后台文件管理时,用加密的SCP方式可以更好的解决这个问题。

    SCP利用了SSHD的服务,所以不需要在服务器另外配置,直接调整账号权限即可。

    Windows下可以使用软件winscp连接服务器。

    官方网站: http://winscp.net

    安装denyhosts

    Denyhost可以帮你自动分析安全日志,直接禁止可疑主机暴力破解。

    Debian用户可以直接使用apt安装

    $ sudo apt-get install denyhosts

    官方网站: http://denyhosts.sourceforge.net/

    谨慎控制目录和文件权限,灵活使用用户组

    例如,如果监控程序munin需要访问网站日志,请不要修改日志文件的权限设置,而是将munin加入www-data用户组

    $ sudo usermod -a -G www-data munin

    为系统程序使用专用账号

    尽量为每个系统程序使用专用账号,避免使用root

    如mysql, munin 等,灵活使用 sudo -u example_user 等命令切换执行用户和用户组

    从官方网站下载putty

    Putty是非常流行的windows平台远程工具,但不要贪图方便随意下载。

    如此重要且免费的软件,请从官方网站下载,并且最好进行完整性校验。

    官方网站:http://www.chiark.greenend.org.uk/~sgtatham/putty/

    防止IP欺骗

    编辑/etc/host.conf文件并增加如下几行来防止IP欺骗攻击。

    order bind,hosts
    multi off
    nospoof on

     注释掉操作系统不需要使用的用户和用户组

    Centos 6.4操作系统安装好之后,我们需要针对一些不需要使用的用户和用户组来进行设置,减少可能发生的安全问题。

    /etc/passwd原始内容如下:

    [root@localhost ~]# vi /etc/passwd

    root:x:0:0:root:/root:/bin/bash
    bin:x:1:1:bin:/bin:/sbin/nologin
    daemon:x:2:2:daemon:/sbin:/sbin/nologin
    adm:x:3:4:adm:/var/adm:/sbin/nologin
    lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
    sync:x:5:0:sync:/sbin:/bin/sync
    shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
    halt:x:7:0:halt:/sbin:/sbin/halt
    mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
    uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin
    operator:x:11:0:operator:/root:/sbin/nologin
    games:x:12:100:games:/usr/games:/sbin/nologin
    gopher:x:13:30:gopher:/var/gopher:/sbin/nologin
    ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
    nobody:x:99:99:Nobody:/:/sbin/nologin
    dbus:x:81:81:System message bus:/:/sbin/nologin
    usbmuxd:x:113:113:usbmuxd user:/:/sbin/nologin
    vcsa:x:69:69:virtual console memory owner:/dev:/sbin/nologin
    rpc:x:32:32:Rpcbind Daemon:/var/cache/rpcbind:/sbin/nologin
    rtkit:x:499:497:RealtimeKit:/proc:/sbin/nologin
    avahi-autoipd:x:170:170:Avahi IPv4LL Stack:/var/lib/avahi-autoipd:/sbin/nologin
    pulse:x:498:496:PulseAudio System Daemon:/var/run/pulse:/sbin/nologin
    haldaemon:x:68:68:HAL daemon:/:/sbin/nologin
    ntp:x:38:38::/etc/ntp:/sbin/nologin
    apache:x:48:48:Apache:/var/www:/sbin/nologin
    saslauth:x:497:76:"Saslauthd user":/var/empty/saslauth:/sbin/nologin
    postfix:x:89:89::/var/spool/postfix:/sbin/nologin
    abrt:x:173:173::/etc/abrt:/sbin/nologin
    rpcuser:x:29:29:RPC Service User:/var/lib/nfs:/sbin/nologin
    nfsnobody:x:65534:65534:Anonymous NFS User:/var/lib/nfs:/sbin/nologin
    gdm:x:42:42::/var/lib/gdm:/sbin/nologin
    sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
    tcpdump:x:72:72::/:/sbin/nologin
    ldap:x:55:55:LDAP User:/var/lib/ldap:/sbin/nologin

    注释掉以下用户
    #userdel adm:x:3:4:adm:/var/adm:/sbin/nologin
    #userdel lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
    #userdel sync:x:5:0:sync:/sbin:/bin/sync
    #userdel shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
    #userdel halt:x:7:0:halt:/sbin:/sbin/halt
    #userdel uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin
    #userdel operator:x:11:0:operator:/root:/sbin/nologin
    #userdel games:x:12:100:games:/usr/games:/sbin/nologin
    #userdel gopher:x:13:30:gopher:/var/gopher:/sbin/nologin
    #userdel ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin

    /etc/group原始内容如下:

    [root@localhost ~]# vi /etc/group

    root:x:0:
    bin:x:1:bin,daemon
    daemon:x:2:bin,daemon
    sys:x:3:bin,adm
    adm:x:4:adm,daemon
    tty:x:5:
    disk:x:6:
    lp:x:7:daemon
    mem:x:8:
    kmem:x:9:
    wheel:x:10:
    mail:x:12:mail,postfix
    uucp:x:14:
    man:x:15:
    games:x:20:
    gopher:x:30:
    video:x:39:
    dip:x:40:
    ftp:x:50:
    lock:x:54:
    audio:x:63:
    nobody:x:99:
    users:x:100:
    dbus:x:81:
    usbmuxd:x:113:
    utmp:x:22:
    utempter:x:35:
    desktop_admin_r:x:499:
    desktop_user_r:x:498:
    floppy:x:19:
    vcsa:x:69:
    rpc:x:32:
    rtkit:x:497:
    avahi-autoipd:x:170:
    cdrom:x:11:
    tape:x:33:
    dialout:x:18:
    wbpriv:x:88:
    pulse:x:496:
    pulse-access:x:495:
    fuse:x:494:
    haldaemon:x:68:haldaemon
    ntp:x:38:
    apache:x:48:
    saslauth:x:76:
    postdrop:x:90:
    postfix:x:89:
    abrt:x:173:
    rpcuser:x:29:
    nfsnobody:x:65534:
    gdm:x:42:
    stapusr:x:156:
    stapsys:x:157:
    stapdev:x:158:
    sshd:x:74:
    tcpdump:x:72:
    slocate:x:21:
    ldap:x:55:

    注释掉以下用户组
    
    #groupdel adm:x:4:adm,daemon
    #groupdel lp:x:7:daemon
    #groupdel uucp:x:14:
    #groupdel games:x:20:
    #groupdel dip:x:40:

     服务器禁止ping

    vi /etc/rc.d/rc.local #在文件末尾增加下面这一行
    echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all   
    参数0表示允许 1表示禁止

  • 相关阅读:
    你可能不知道的 30 个 Python 语言的特点技巧
    正则替换sql为动态sql
    列表按指定个数分割后格式化输出
    多线程队列下载天涯帖子
    多线程下载图片
    sublime text3 运行python配置
    01_什么是接口测试
    02_Fiddler使用
    01_Fiddler安装
    05_功能测试
  • 原文地址:https://www.cnblogs.com/suihui/p/4321885.html
Copyright © 2011-2022 走看看