centos6.x 初始化脚本

前端之家收集整理的这篇文章主要介绍了centos6.x 初始化脚本前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
  1. #!/bin/bash
  2. #:***********************************************
  3. #:Program:centos6_init_shell
  4. #:
  5. #:Author:yanconggod
  6. #:
  7. #:History:2017-01-10
  8. #:
  9. #:Version:1.0
  10. #:***********************************************
  11. cat<<EOF
  12. +--------------------------------------------------------------+
  13. |===WelcometoSysteminit===|
  14. +--------------------------------------------------------------+
  15. EOF
  16.  
  17. DATE=`date+%Y_%m_%d:%H_%M_%S`
  18. INIT_LOG=system_init_$DATE.log
  19.  
  20. #0.yumresourceconfig
  21. #mv/etc/yum.repos.d/*/tmp/
  22. #wget-P/etc/yum.repos.d/http://yum.xxx.xxx/{CentOS-Base.repo,epel.repo}
  23. yumcleanall
  24. yuminstallvimgccgcc-c++openssl-develpython-devellrzsztreeftptelnet-y
  25.  
  26. #1.del_user_group_config
  27. USER=(admlpshutdownhaltuucpoperatorgamesgopher)
  28. foriin`echo${USER[*]}`
  29. do
  30. ifgrep-qs"$i"/etc/passwd;then
  31. /usr/sbin/userdel$i
  32. else
  33. echo"$iisnoexist"
  34. fi
  35. done
  36. GROUP=(admlpdip)
  37. foriiin`echo${GROUP[*]}`
  38. do
  39. ifgrep-qs"$ii"/etc/group;then
  40. /usr/sbin/groupdel$ii
  41. else
  42. echo"$iiisnoexist"
  43. fi
  44. done
  45. if["$?"=="0"];then
  46. echo"$DATE[del_user_group_config]is[success]">>/root/${INIT_LOG}
  47. fi
  48. #2.add_users_config
  49. #指定UID,密码不能明文显示
  50. /usr/sbin/useradd-u1001-m-G10yanconggod
  51. sed-i'/yanconggod/s#\!\!#\$6\$nRS2zBCw\$9AuQZSdYJezLTyzinOQzfcp1je2EGAD5oL7d3JeAeSXKoVGd920\.vX\/dPFuyP\/C2VexJQa5PpPD\/wRfE0m\.9A\/#g'/etc/shadow
  52.  
  53. USER1=(yanconggod)
  54. forylin`echo${USER1[*]}`
  55. do
  56. ifgrep-qs"$yl"/etc/passwd;then
  57. echo"$DATE$ylisaddedsuccess">>/root/${INIT_LOG}
  58. fi
  59. done
  60. #3.sudoer_config
  61. sed-i's/Defaultsrequiretty/#Defaultsrequiretty/g'/etc/sudoers
  62. echo-e"User_AliasSYSADMINS=yanconggod">>/etc/sudoers
  63. echo-e"SYSADMINSALL=(ALL)NOPASSWD:ALL">>/etc/sudoers
  64. echo"$DATE[sudoer_config]is[success]">>/root/${INIT_LOG}
  65. #4.limits_config
  66. echo"*softnofile65535">>/etc/security/limits.conf
  67. echo"*hardnofile65535">>/etc/security/limits.conf
  68. echo"*softnoproc65535">>/etc/security/limits.conf
  69. echo"*hardnoproc65535">>/etc/security/limits.conf
  70. sed-i'/1024/s/1024/65535/g'/etc/security/limits.d/90-nproc.conf
  71. echo"$DATE[limits_config]is[success]">>/root/${INIT_LOG}
  72. #5.sysctl_config
  73. echo"net.ipv4.tcp_syncookies=1">>/etc/sysctl.conf
  74. echo"net.ipv4.tcp_fin_timeout=30">>/etc/sysctl.conf
  75. echo"net.ipv4.tcp_tw_recycle=1">>/etc/sysctl.conf
  76. echo"net.ipv4.tcp_tw_reuse=1">>/etc/sysctl.conf
  77. echo"net.ipv4.tcp_max_syn_backlog=4096">>/etc/sysctl.conf
  78. echo"net.core.netdev_max_backlog=10240">>/etc/sysctl.conf
  79. echo"net.ipv4.icmp_echo_ignore_broadcasts=1">>/etc/sysctl.conf
  80. echo"net.core.somaxconn=2048">>/etc/sysctl.conf
  81. echo"net.core.wmem_default=8388608">>/etc/sysctl.conf
  82. echo"net.core.rmem_default=8388608">>/etc/sysctl.conf
  83. echo"net.core.rmem_max=16777216">>/etc/sysctl.conf
  84. echo"net.core.wmem_max=16777216">>/etc/sysctl.conf
  85. echo"net.ipv4.conf.all.rp_filter=1">>/etc/sysctl.conf
  86. echo"net.ipv4.tcp_keepalive_time=300">>/etc/sysctl.conf
  87. echo"net.ipv4.tcp_synack_retries=2">>/etc/sysctl.conf
  88. echo"net.ipv4.tcp_syn_retries=2">>/etc/sysctl.conf
  89. echo"net.ipv4.ip_local_port_range=500065000">>/etc/sysctl.conf
  90. sysctl-p
  91. echo"$DATE[sysctl_config]is[success]">>/root/${INIT_LOG}
  92. #6.history_config
  93. echo"exportHISTSIZE=2000">>/etc/profile
  94. source/etc/profile
  95. echo"$DATE[history_config]is[success]">>/root/${INIT_LOG}
  96. #7.pass_lengthandlogincountlimit
  97. #sed-i'25s/99999/90/g'/etc/login.defs
  98. #sed-i'27s/5/8/g'/etc/login.defs
  99. sed-i'5iauthrequired/lib64/security/pam_tally2.sodeny=5unlock_time=300'/etc/pam.d/system-auth
  100. #8.disable_selinux_config
  101. sed-i's/SELINUX=enforcing/SELINUX=disabled/'/etc/selinux/config
  102. setenforce0
  103. echo"$DATE[disable_selinux_config]is[success]">>/root/${INIT_LOG}
  104. #9.ntp_config
  105. ntp_config_count=`crontab-l|grepntpdate|wc-l`
  106. if[${ntp_config_count}-eq0];then
  107. cat<<EOF>>/var/spool/cron/root
  108. */5****/usr/sbin/ntpdate-sntp1.aliyun.com>/dev/null2>&1
  109. EOF
  110.  
  111. fi
  112.  
  113.  
  114. if[$?=0];then
  115. echo"$DATE[ntp_config]is[success]">>/root/${INIT_LOG}
  116. fi
  117. #10.maxlogins_config
  118. echo"yanconggod-maxlogins10">>/etc/security/limits.conf
  119. echo"$DATE[maxlogins_config]is[success]">>/root/${INIT_LOG}
  120. #11.disbled_ipv6_config
  121. cat>>/etc/modprobe.d/disableipv6.conf<<EOF
  122. aliasnet-pf-10off
  123. optionsipv6disable=1
  124. EOF
  125.  
  126. echo"$DATE[disble_ipv6_config]is[success]">>/root/${INIT_LOG}
  127. #12.character_config
  128. cat>>/etc/sysconfig/i18n<<EOF
  129. LANG="en_US.UTF-8"
  130. SYSFONT="latarcyrheb-sun16"
  131. EOF
  132.  
  133. #13.disable_service_config
  134. foriinauditdblk-availabilityip6tablesiptableslvm2-monitornetfsudev-post
  135. do
  136. chkconfig$ioff
  137. #iptables-F
  138. #iptables-X
  139. done
  140. echo"$DATE[disable_service_config]is[success]">>/root/${INIT_LOG}
  141. #15.DNSconfig
  142. MASK=`ifconfig|grep-w"inet"|grep-v127.0.0.1|awk-F':''{print$2}'|sed's/Bcast$//g'|awk-F'.''{print$1"."$2}'`
  143.  
  144. echo$MASK
  145. if[$MASK="10.0"-o$MASK="10.1"]
  146. then
  147. cat>/etc/resolv.conf<<EOF
  148. nameserver10.0.0.1
  149. #nameserver1.1.1.2
  150. #nameserver1.1.1.3
  151. EOF
  152.  
  153. else
  154. :
  155. fi
  156. #16.sshd_config
  157. sed"s/#Port22/Port22/g"/etc/ssh/sshd_config-i
  158. sed"s/^#Protocol2/Protocol2/g"/etc/ssh/sshd_config-i
  159. sed"s/#UseDNSyes/UseDNSno/g"/etc/ssh/sshd_config-i
  160. #sed's/#PermitRootLoginyes/PermitRootLoginno/g'/etc/ssh/sshd_config-i
  161. #sed's/GSSAPIAuthenticationyes/GSSAPIAuthenticationno/g'/etc/ssh/sshd_config-i
  162. #sed's/GSSAPIAuthenticationyes/GSSAPIAuthenticationno/g'/etc/ssh/ssh_config-i
  163. /etc/init.d/sshdrestart
  164. echo"$DATE[sshd_config]is[success]">>/root/${INIT_LOG}
  165. #17.reboot_system
  166. read-p"Doyouwanttorebootthesystem?"want
  167. case$wantin
  168.  
  169. yes)
  170. echo"rebootnow!"
  171. reboot
  172. ;;
  173.  
  174. no)
  175. echo"initover!"
  176. ;;
  177.  
  178. *)
  179. echo"pleaseuseageyesorno!thanks"
  180. ;;
  181.  
  182. esac

猜你在找的CentOS相关文章