#!/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. RocketMQ学习笔记(1)----RocketMQ的简介

    1. 什么是RocketMQ? 是一个队列模型的消息中间件,具有高性能.高可靠.高实时.分布式特点. Producer.Consumer.队列都可以分布式.  Producer 吐一些队列轮流収送消息 ...

  2. 解决Windows下git需要每次都要ssh-add的问题

    顽皮的很: 不知道怎么回事,每次打开git提交代码都需要ssh-add一下秘钥才可以正常提交: 不然就报错权限之类的问题: 怎么才能更方便一些? 卸了重装!我没试... 再或者是在 git 的安装目录 ...

  3. pyinstall 常见错误

    字符编码错误: https://blog.csdn.net/weixin_42426496/article/details/81102665 https://blog.csdn.net/qq_4206 ...

  4. nginx编译支持HTTP2.0

    nginx编译支持HTTP2.0 nginx编译支持HTTP2.0 wget https://www.openssl.org/source/openssl-1.1.0i.tar.gz #openssl ...

  5. python_模块学习

    '''import sysprint(sys.path) #打印环境变量 #运行结果为:['D:\\PyCharm Community Edition 2018.2.2\\NewYear\\untit ...

  6. POJ——T2553 The Bottom of a Graph

    http://poj.org/problem?id=2553 Time Limit: 3000MS   Memory Limit: 65536K Total Submissions: 10987   ...

  7. 继续过Hard题目.周五

      # Title Editorial Acceptance Difficulty Frequency   . 65 Valid Number     12.6% Hard    . 126 Word ...

  8. javascript jquery 推断对象为空的方式

    java中存在非常多空指针的问题,须要常常做预防和推断,如若不然,控制台出现恼人的异常,让人信心备受打击,早期敲代码的时候没有经验,不能依据异常信息找到问题的根源,唯一做的事情就是祈祷,千万别出现什么 ...

  9. NPOI操作Excel 004:写入空Excel(添加保存提示框)

    前文说道写入excel的样例,当中保存Excle后须要添加提示框.让用户自己选择保存路径,做改动例如以下. 引用的dll等前面已经说过了, 直接看代码: protected void Btn_Writ ...

  10. 关于nth-of-type和nth-child的关系

    一开始写样式的时候喜欢全部元素都来个class,后面发现这样一个页面下来很多个class,起名字起到发慌,然后老师说该多用 逻辑关系来写样式,就是这种第几个孩子啊这种,不知道你们有没有这种烦恼,要用的 ...