zoukankan      html  css  js  c++  java
  • ubuntu 16.04.1 LTS 初始化

    gcc环境
    ------------------
    sudo apt-get update &&
    sudo apt-get install build-essential software-properties-common -y &&
    sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y &&
    sudo apt-get update &&
    sudo apt-get install gcc-snapshot -y &&
    sudo apt-get update &&
    sudo apt-get install gcc-6 g++-6 -y &&
    sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-6 60 --slave /usr/bin/g++ g++ /usr/bin/g++-6 &&
    sudo apt-get install gcc-4.8 g++-4.8 -y &&
    sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 60 --slave /usr/bin/g++ g++ /usr/bin/g++-4.8


    编译安装lrzsz
    ---------------------
    cd /tmp
    wget http://www.ohse.de/uwe/releases/lrzsz-0.12.20.tar.gz
    tar zxvf lrzsz-0.12.20.tar.gz && cd lrzsz-0.12.20
    ./configure && make && make install
    ln -s /usr/local/bin/lrz /usr/bin/rz
    ln -s /usr/local/bin/lsz /usr/bin/sz
    rm -rf /tmp/lrzsz*


    上传初始化脚本和startup.tar.gz,并执行
    ----------------------------------------
    Os_Init_Optimization.sh

    #!/bin/bash

    #解压缩startup.tar.gz包
    cd /tmp && tar -zxf startup.tar.gz

    #下载工具及时间同步工具
    apt-get install -y wget
    apt-get install -y ntpdate
    ntpdate -d cn.pool.ntp.org
    date

    #修改时区
    ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime


    echo "##### update server time #####" >> /var/spool/cron/crontabs/root
    echo "*/10 * * * * /usr/sbin/ntpdate cn.pool.ntp.org > /dev/null 2>&1 && /sbin/clock -w > /dev/null 2>&1" >> /var/spool/cron/crontabs/root
    echo "" >> /var/spool/cron/crontabs/root
    echo "##### history #####" >> /var/spool/cron/crontabs/root
    echo "*/5 * * * * /usr/local/gacp/worksh/history.sh > /dev/null 2>&1" >> /var/spool/cron/crontabs/root
    echo "" >> /var/spool/cron/crontabs/root
    echo "##### Logs #####" >> /var/spool/cron/crontabs/root
    echo "00 00 * * * /usr/local/gacp/worksh/del_100day_before_logs.sh > /dev/null 2>&1" >> /var/spool/cron/crontabs/root
    echo "00 00 * * * /usr/local/gacp/worksh/log_rotate.sh > /dev/null 2>&1" >> /var/spool/cron/crontabs/root
    echo "" >> /var/spool/cron/crontabs/root

    #file size
    sed -i 'N;14iulimit -SHn 65535' /etc/rc.local
    cat >> /etc/security/limits.conf << EOF
    * soft nofile 60000
    * hard nofile 65535
    EOF

    #sysctl.conf
    cat >> /etc/sysctl.conf <<eof

    # NEW ADD
    net.ipv4.tcp_tw_reuse = 1
    net.ipv4.tcp_tw_recycle = 1

    net.ipv4.tcp_syn_retries = 1
    net.ipv4.tcp_fin_timeout = 30
    net.ipv4.tcp_keepalive_time = 600
    net.ipv4.tcp_syncookies = 1
    net.ipv4.ip_local_port_range = 1024 65535
    net.ipv4.tcp_max_syn_backlog = 65535
    net.ipv4.tcp_max_tw_buckets = 65535

    net.core.wmem_default = 8388608
    net.core.rmem_default = 8388608
    net.core.rmem_max = 16777216
    net.core.wmem_max = 16777216
    net.core.netdev_max_backlog = 131070
    net.core.somaxconn = 20480
    eof

    /sbin/sysctl -p


    DATE=`date +%Y%m%H`

    #add lsyw user
    /usr/sbin/useradd lsyw
    echo 'lsyw:xxxxx' | /usr/sbin/chpasswd

    #ssh
    DATE=`date +%Y%m%H`
    ssh_cf="/etc/ssh/sshd_config"

    cp $ssh_cf $ssh_cf.$DATE
    sed -i "s/Port 22/Port 50000/" $ssh_cf
    sed -i 's/^PermitRootLogin yes/PermitRootLogin no/' $ssh_cf
    sed -i '$aAllowUsers lsyw' $ssh_cf
    systemctl restart ssh

    #防爆破登录
    apt-get install -y fail2ban

    mv /etc/fail2ban/jail.conf /etc/fail2ban/jail.conf.$DATE
    cp -ap .file/jail.conf /etc/fail2ban/

    mkdir /usr/local/gacp/worksh -p
    cp -ap ./file/history.sh ./file/log_rotate.sh ./file/del_100day_before_logs.sh /usr/local/gacp/worksh/


    防火墙iptable
    ----------------------
    由于Ubuntu使用iptable比较特殊,不能在脚本中操作,需要依下面步骤操作:

    1. 为了保存iptables规则,需要安装两个包
    apt-get install iptables-persistent netfilter-persistent

    2. 修改防火墙:vi /etc/iptables/rules.v4
    -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
    -A INPUT -p icmp -j ACCEPT
    -A INPUT -i lo -j ACCEPT
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 50000 -j ACCEPT
    -A INPUT -j REJECT --reject-with icmp-host-prohibited
    -A FORWARD -j REJECT --reject-with icmp-host-prohibited

    3. 应用防火墙规则:
    iptables-restore < /etc/iptables/rules.v4

    4. 重启fail2ban
    systemctl restart fail2ban

    chkconfig 替代 sysv-rc-conf
    -------------------------------------
    安装: apt-get install -y sysv-rc-conf
    sysv-rc-conf --list
    sysv-rc-conf 服务 --levels 2345 on

  • 相关阅读:
    SharePoint 2010 User Profile Sync Service自动停止
    如何区别多个svchost.exe?
    Log Parser分析IIS log的一个简单例子
    Timeout expired. The timeout period elapsed prior to obtaining a connection from the pool. This may have occurred because all pooled connections were in use and max pool size was reached.
    Windows中右键点击文件夹, 结果找不到共享选项卡, 怎么办?
    介绍SOS中的SaveModule命令
    SharePoint中Draft版本的文档不会收到document added的Alert Email
    和我一起学Windows Workflow Foundation(1)创建和调试一个WF实例
    门户网站
    C#基础—— check、lock、using语句归纳
  • 原文地址:https://www.cnblogs.com/zhaojonjon/p/7682227.html
Copyright © 2011-2022 走看看