#!/bin/bash

######the system first start configuretion #####for install 

####copy right by donglei##############

#1、配置sysctl

mv /etc/sysctl.conf  /etc/sysctl.bak

echo "############################the new config for sysctl ###########

net.ipv4.ip_forward = 0

net.ipv4.conf.default.rp_filter = 1

net.ipv4.conf.default.accept_source_route = 0

kernel.sysrq = 0

kernel.core_uses_pid = 1

net.ipv4.tcp_syncookies = 1

kernel.msgmnb = 65536

kernel.msgmax = 65536

kernel.shmmax = 68719476736

kernel.shmall = 4294967296

kern.maxfiles = 65536

kern.maxfilesperproc = 32768

net.core.rmem_default = 262144

net.core.wmem_default = 262144

net.core.rmem_max = 262144

net.core.wmem_max = 262144

net.inet.udp.checksum = 1

net.inet.tcp.syncookies = 1

net.ipv4.tcp_synack_retries = 2

net.ipv4.tcp_syn_retries = 2

net.ipv4.tcp_keepalive_time = 30

net.ipv4.tcp_keepalive_probes = 2

net.ipv4.tcp_keepalive_intvl = 2

net.ipv4.tcp_fin_timeout = 30

net.ipv4.tcp_tw_reuse = 1 

kernel.sem = 250 32000 100 128

fs.file-max = 65536

net.ipv4.ip_local_port_range = 1024 65000" >> /etc/sysctl.conf

chmod 644 /etc/sysctl.conf

#2、配置ipv6

echo "##########ipv6-disabled########### 

alias net-pf-10 off

alias ipv6 off" >> /etc/modprobe.d/dist.conf

echo "##############ipv6-disabled#########

NETWORKING_IPV6=no" >> /etc/sysconfig/network

/sbin/chkconfig ip6tables off

#3、配置系统时钟

echo "##############system_clock###########

01 * * * * root ntpdate 172.17.1.150; hwclock --systohc" >>/etc/crontab

#4、配置bash环境,每次命令行显示当前位置和时间,当前仅仅针对root设置

echo "export  PS1='\033[1;33m\H \033[1;34m[\w] \033[1;35m\D{%D %T}\n\[\033[1;36m\]\u@pts/\l \[\033[00m\]\$ '" >> /root/.bashrc 

#5、配置系统服务启动项

for i in `ls /etc/rc3.d/S*`

do

servi=`echo $i|cut -c 15-`

case $servi in

cpuspeed | crond | irqbalance | microcode_ctl | sendmail)

;;

*)

echo "change $servi to off" >>./log.log

chkconfig $servi off

service $servi stop

;;

esac

done

#6、配置系统默认语言环境

mv /etc/sysconfig/i18n  /etc/sysconfig/i18n.bak

echo "#########set new language by admin#######

LANG="zh_CN.UTF-8"

SUPPORTED="zh_CN.UTF-8:zh_CN:zh:en_US.UTF-8:en_US:en"

SYSFONT="latarcyrheb-sun16" " >/etc/sysconfig/i18n

chmod 644 /etc/sysconfig/i18n

#7、配置selinux

sed -i -e 's/^SELINUX=.*/LANG="SELINUX=disabled/' -e 's/^SELINUXTYPE=.*/SELINUXTYPE=disabled/' /etc/sysconfig/selinux

#8、关闭iptables

service iptables stop 

chkconfig iptables off

#9、配置root用户不能直接登录系统

mv /etc/ssh/sshd_config /etc/ssh/sshd_config.bak

grep -Ev '^$|^#' /etc/ssh/sshd_config.bak >/etc/ssh/sshd_config

chmod 600 /etc/ssh/sshd_config

sed /PermitRootLogin/d /etc/ssh/sshd_config 

sed /ClientAliveCountMax/d /etc/ssh/sshd_config 

echo "######ssh security config#######

PermitRootLogin no

ClientAliveCountMax 10 " >>/etc/ssh/sshd_config

service sshd restart

LINUX 系统初始化脚本的更多相关文章

  1. Linux系统初始化脚本

    #查看centos的版本号 CentOS_version=`cut -d /etc/centos-release | cut -d` #改变PS3格式 PS3="Please enter t ...

  2. centos7 系统初始化脚本

    现在自己的本地虚拟机系统,直接安装的是centos7.2 mini版,安装完成发现好多东西都没有安装,所以写了一个简单的系统初始化脚本,让自己可以省一些力气,哈哈 人懒主要是. 下面贴出写的脚本,脚本 ...

  3. Linux系统初始化流程

    POST-->BIOS(Boot Sequence)-->MBR(bootloader)-->Kernel(initrd)-->/sbin/init(/etc/inittab) ...

  4. Linux系统初始化过程及运行级别简介

    Linux开机过程: 1 开机自检(BIOS):初始化硬件,查找启动介质 2 MBR引导 3 GRUB引导菜单:GRUB程序安装在Bootloader 4 加载内核(kernel) 5 运行INIT进 ...

  5. shell实现增加删除Linux系统用户脚本(密码为随机)

    README shell环境下运行脚本,根据需求选择相应的功能. List \t\t create the userlist 这一步是必须执行的,脚本会识别本地当前目录下的文件 Useradd \t\ ...

  6. linux系统初始化——文件系统初始化步骤

    linux文件系统初始化步骤 System V init启动过程 概括地讲,Linux/Unix系统一般有两种不同的初始化启动方式. 1) BSD system init 2) System V in ...

  7. Linux系统初始化配置项(centos7)

    主机刚安装完系统,会做一些配置上的优化. 修改时区 通过命令将时区设置为亚洲/上海. timedatectl set-timezone Asia/Shanghai #centos7 cp /usr/s ...

  8. Centos7系统初始化脚本

    前言: 因公司业务增加,陆续新增服务器,时不时的来几台,手动地一台台对服务器初始化操作感觉太麻烦. 于是乎,根据初始化需求整合了一个初始化脚本,实现批量脚本初始化操作. 说明: 本脚本根据自身需求编写 ...

  9. linux系统备份脚本

    前言 之前写过<<linux系统简单备份的脚本>>, 最开始一直用着,后来觉得有必要改进下它,不管是从操作方式上还是脚本的工作方式上.之所以这么看重备份,是因为我经历过磁盘损坏 ...

随机推荐

  1. GatewayWorker 版本升级过程和注意点

    公司开发用到WorkerMan框架,开发RPC服务,用于拉取用户信息和协助用户注册. workman 官网:http://www.workerman.net/workerman 老版本: worker ...

  2. sass的用法小结(一)

    1. 使用变量; sass让人们受益的一个重要特性就是它为css引入了变量.你可以把反复使用的css属性值 定义成变量,然后通过变量名来引用它们,而无需重复书写这一属性值.或者,对于仅使用过一 次的属 ...

  3. OUTLOOK网站直接点击发送邮件

    下面的样式是用文字来做链接的:<a href="mailto:邮箱地址" alt="点击此链接给我写信">网页上显示的文字</a> 下面 ...

  4. 路飞学城Python-Day10

    [37.函数-命名空间]命名空间又称为name space,顾名思义就是存放名字的地方,存什么名字呢?举例说明,若变量 x = 1,存放于内存中,那名字x存放在哪里呢?名称空间正式存放名字x和1绑定关 ...

  5. S-T表学习笔记

    $O(nlogn)$构造$O(1)$查询真是太强辣 然而不支持修改= = ShØut! #include<iostream> #include<cstring> #includ ...

  6. Artisan 命令

    php artisan key:generate 生成 App Key php artisan make:controller 生成控制器 php artisan make:model 生成模型 ph ...

  7. go语言简单的执行shell命令

    package main import(     "fmt"     "os/exec"     "os"     "string ...

  8. 小巧的ssh客户端

    所用到的知识点 os 模块 文件操作 循环 字符串操作 字典 #!/use/bin/python #coding=utf8 import os print '\033[1;32;40m welcome ...

  9. 洛谷 P2960 [USACO09OCT]Milkweed的入侵Invasion of the Milkweed

    P2960 [USACO09OCT]Milkweed的入侵Invasion of the Milkweed 题目描述 Farmer John has always done his best to k ...

  10. Error:Execution failed for task ':app:dexDebug'. > com.android.ide.common.process.ProcessException总结

    最新项目中遇到了 Error:Execution failed for task ':app:dexDebug'. > com.android.ide.common.process.Proces ...