1、自动化配置dns服务器
A主机:vim dns.sh #!/bin/bash# 自动化部署dns# 1、下载bind# 2、修改配置文件# vim /etc/named.conf # listen-on port 53 { 127.0.0.1;any; }; 修改(定位替换)# allow-query { localhost;any; }; 修改(定位替换)# vim /etc/named.rfc1912.zones (最后追加)# zone "baibai.com" IN {# type master;# file "baibai.com.zone";# allow-update { none; };#};# 3、创建zone文件# cd /var/named/# cp -p named.localhost baibai.com.zone# 4、修改zone文件# vim baibai.com.zone # www A 10.0.0.100 (最后追加)# 5、重启服务# systemctl restart namedyum -y install bindsed -i '/listen-on/ s/127.0.0.1;/127.0.0.1;any;/' /etc/named.confsed -i '/allow-query/ s/localhost;/localhost;any;/' /etc/named.confsed -i '$a zone "a.com" IN {' /etc/named.rfc1912.zonessed -i '$a type master;' /etc/named.rfc1912.zonessed -i '$a file "a.com.zone";' /etc/named.rfc1912.zonessed -i '$a allow-update { none; };' /etc/named.rfc1912.zonessed -i '$a };' /etc/named.rfc1912.zonescd /var/named/cp -p named.localhost a.com.zonesed -i '$a www A 10.0.0.100' /var/named/a.com.zonesystemctl restart namedsh dns.shB主机:vim dnscs.sh #!/bin/bash#测试机测试dnsyum -y install bind-utilsecho "nameserevr 10.0.0.12" > /etc/resolv.confnslookup www.a.comsh dnscs.sh
2、自动化配置rsync服务
A主机:ssh-keygen ssh-copy-id vim rsync.sh#!/bin/bash# 自动化部署rsync# 先自己做免密# 1、下载rsync和inotify-tools软件 yum -y install rsync inotify-tools# 2、创建共享目录与共享文件 mkdir rsync touch rsync/file{0..4}# 3、修改配置文件 vim /etc/rsyncd.conf (最后面追加)# [app]# path=/root/rsync/ //项目路径# log file=/var/log/rsync.log //项目日志文件路径# 4、重启rsync服务 systemctl restart rsyncd# 5、写一个监控脚本 先创建一个文件 touch inotify.sh vim inotify.sh (直接最后追加插入)# #!/bin/bash# /usr/bin/inotifywait -mrq -e modify,delete,create,attrib,move /root/rsync | while read events# do# rsync -av --delete /root/rsync root@10.0.0.20:/tmp/# echo "`date +%F\ %T`出现事件$events" >> /var/log/rsync.log 2>&1# done# 6、为脚本添加执行权限 chmod +x inotify.sh # 7、执行监控脚本并放入后台 nohup ./inotify.sh &yum -y install rsyncyum -y install inotify-toolsmkdir rsynctouch rsync/file{0..4}sed -i '$a [app]' /etc/rsyncd.confsed -i '$a path=/root/rsync/' /etc/rsyncd.confsed -i '$a log file=/var/log/rsync.log' /etc/rsyncd.confsystemctl restart rsyncdtouch inotify.shecho "#" > /root/inotify.shsed -i '$a #!/bin/bash' /root/inotify.shsed -i '$a /usr/bin/inotifywait -mrq -e modify,delete,create,attrib,move /root/rsync | while read events' /root/inotify.shsed -i '$a do' /root/inotify.shsed -i '$a rsync -av --delete /root/rsync root@10.0.0.11:/tmp/' /root/inotify.shsed -i '$a done'sed -i '1d' /root/inotify.shchmod +x inotify.shnohup ./inotify.sh &sh rsync.shB主机:测试机测试rm -rf /tmp/*ls /tmp/A主机:touch /root/rsync/file5B主机:测试机测试ls /tmp/
3、自动化配置FTP服务
A主机:vim ftp.sh#!/bin/bash# 1、下载vsftpd软件包 yum -y install vsftpd# 2、开启vsftpd服务 systemctl start vsftpd# 3、修改vsftpd配置文件 vim /etc/vsftpd/vsftpd.conf (查找修改)# anonymous_enable=NO //不允许匿名访问# local_root=/data/kehu //指定用户存放文件的路径# chroot_local_user=YES //限定目录# chroot_list_enable=YES //开启用户列表文件# chroot_list_file=/etc/vsftpd/chroot_list //指定用户列表文件# 4、重启vsftpd服务 systemctl restart vsftpd# 5、创建用户 useradd kehu# 6、设置用户密码 echo kehu | passwd --stdin kehu# 7、创建存放目录 mkdir -p /data/kehu/# 8、为用户赋予所有权限 setfacl -R -m u:kehu:rwx /data/kehu/# 9、将用户放入用户列表文件中,表示不被禁锢 echo kehu >> /etc/vsftpd/chroot_listyum -y install vsftpdsystemctl start vsftpdsed -i '/anonymous_enable/ s/YES/NO/' /etc/vsftpd/vsftpd.confsed -i '/anonymous_enable/ a local_root=/data/kehu' /etc/vsftpd/vsftpd.confsed -i '/chroot_local_user=YES/ s/#//' /etc/vsftpd/vsftpd.confsed -i '/chroot_list_enable=YES/ s/#//' /etc/vsftpd/vsftpd.confsed -i '/chroot_list_file/ s/#//' /etc/vsftpd/vsftpd.confuseradd kehuecho kehu | passwd --stdin kehumkdir -p /data/kehu/setfacl -R -m u:kehu:rwx /data/kehu/echo kehu >> /etc/vsftpd/chroot_listsystemctl restart vsftpdsh ftp.shB主机:测试机测试yum -y install ftpftp 10.0.0.10kehukehu
4、自动化配置frp的服务器端与客户端
A主机:vim frp.sh#!/bin/bash# 1、确保本机中有软件包 frp_0.33.0_linux_amd64.tar.gz# 2、解压软件包 tar -zxvf frp_0.33.0_linux_amd64.tar.gz# 3、切换到解压后的目录中 cd frp_0.33.0_linux_amd64/# 4、修改配置文件 vim frps.ini (全部追加)# dashboard_user=aaa# dashboard_pwd=aaa# dashboard_port=7500# 5、启动frp服务 ./frps -c frps.ini tar -zxf frp_0.33.0_linux_amd64.tar.gzcd frp_0.33.0_linux_amd64/sed -i '$a dashboard_user=aaa' frps.inised -i '$a dashboard_pwd=aaa' frps.inised -i '$a dashboard_port=7500' frps.ini./frps -c frps.inish frp.shB主机:vim frpcs.sh#!/bin/bash# 测试机测试frp服务器# 1、解压软件包# 2、切换到目录中# 3、修改配置文件 vim frpc.ini# [common]# server_addr = 10.0.0.20# server_port = 7000# [lijiaqi]# type = tcp# local_ip = 127.0.0.1# local_port = 22# remote_port = 6064# 4、启动frp客户端服务 ./frpc -c frpc.initar -zxf frp_0.33.0_linux_amd64.tar.gzcd frp_0.33.0_linux_amd64sed -i '/server_addr/ s/127.0.0.1/10.0.0.10/' frpc.inised -i '/[ssh]/ s/ssh/baibai/' frpc.inised -i '/remote_port/ s/6000/6035/' frpc.ini./frpc -c frpc.inish frpcs.sh
5、自动化配置samba共享
A主机:vim samba.sh#!/bin/bash# 自动化配置samba共享# 1、下载samba软件 yum -y install samba# 2、修改samba配置文件 vim /etc/samba/smb.conf (直接最后追加)# [smb_share] //这是共享的名称,客户端在访问时会看到这个名称。# comment = samba service //这是对该共享的注释说明,用于提供一些描述信息,这里说明是“Samba 服务”# path = /samba //指定了实际共享的目录路径为`/bakpu`# guest ok = no //表示不允许访客访问,只有经过授权的用户才能访问# writable = yes //表示允许对该共享目录进行写入操作# 3、创建共享目录 mkdir /samba# 4、添加samba用户 useradd user01# 5、为用户设置密码 smbpasswd -a user01# 6、为用户赋予所有权限 setfacl -m u:user01:rwx /bakpu/*# 7、启动nmb服务 systemctl start nmb.service# 8、启动smb服务 systemctl start smb.service yum -y install sambased -i '$a [smb_share]' /etc/samba/smb.confsed -i '$a comment = samba service' /etc/samba/smb.confsed -i '$a path = /samba' /etc/samba/smb.confsed -i '$a guest ok = no' /etc/samba/smb.confsed -i '$a writable = yes' /etc/samba/smb.confmkdir /sambauseradd user01echo "现在请您输入你想要设置的账户密码:"smbpasswd -a user01setfacl -m u:user01:rwx /samba/systemctl start nmb.servicesystemctl start smb.serviceB主机:测试机测试1、直接windows测试(直接映射)2、linux主机测试yum -y install samba-clientsmbclient //10.0.0.10/smb_share -U user01
6、自动化配置yum仓库初始化(包括阿里云和epel)
A主机:vim yum.sh#!/bin/bash# 自动化配置yum仓库初始化(包括阿里云和epel)# 1、搭建本地仓库 # tar -cf /etc/yum.repos.d/yum.repo.tar /etc/yum.repos.d/*# rm -rf /etc/yum.repos.d/*# vim /etc/yum.repos.d/hh.repo# [hh]# name=hh# baseurl=file:///mnt# gpgcheck=0# enable=1# mount /dev/cdrom /mnt# 2、下载wget软件 yum -y install wget# 3、在阿里云官网wget下载阿里云镜像 wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo# 4、下载epel,创建epel仓库 yum -y install epel-release.noarch# 5、清除缓存 yum clean all 创建缓存 yum makecachetar -cf /etc/yum.repos.d/yum.repo.tar /etc/yum.repos.d/*rm -rf /etc/yum.repos.d/*echo "#" > /etc/yum.repos.d/hh.reposed -i '$a [hh]' /etc/yum.repos.d/hh.repo sed -i '$a name=hh' /etc/yum.repos.d/hh.reposed -i '$a baseurl=file:///mnt' /etc/yum.repos.d/hh.repo sed -i '$a gpgcheck=0' /etc/yum.repos.d/hh.repo sed -i '$a enable=1' /etc/yum.repos.d/hh.repo sed -i '1d' /etc/yum.repos.d/hh.repoyum -y install wgetwget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repoyum -y install epel-release.noarchyum clean allyum makecache
7、自动化配置nfs服务
A主机:vim nfs.sh#!/bin/bash# 自动化配置nfs服务# 1、下载nfs软件与依赖软件 yum -y install nfs-utils.x86_64 rpcbind.x86_64# 2、创建共享目录 mkdir /nfsshare# 3、编辑配置文件指定要暴露的目录 vim /etc/exports (这是个新文件,直接追加最后)# /nfsshare *(rw,sync)yum -y install nfs-utils.x86_64 rpcbind.x86_64mkdir /nfsshareecho "#" > /etc/exportssed -i '$a /nfsshare *(rw,sync)' /etc/exportssed -i '1d' /etc/exportssystemctl start nfs-serversh nfs.shB主机:测试机测试yum -y install nfs-utils.x86_64mkdir /nfsmount -t nfs 10.0.0.10:/nfsshare /nfsls /nfs
8、自动化配置ntp服务
A主机:vim ntp.sh #!/bin/bash# 自动化配置ntp服务# 1、下载ntp软件 yum -y install ntp.x86_64# 2、修改ntp配置文件 vim /etc/ntp.conf# 15行加入 restrict 10.0.0.0 mask 255.255.255.0 //允许10.0.0.0网段的主机访问# 3、与官方时间服务器同步时间 ntpdate cn.ntp.org.cn# 4、启动ntp服务 systemctl start ntpd# 5、编辑计划任务定时同步时间 crontab -e # * 4 * * * /usr/sbin/ntpdate cn.ntp.org.cnyum -y install ntp.x86_64sed -i '/restrict ::1/a restrict 10.0.0.0 mask 255.255.255.0' /etc/ntp.confntpdate cn.ntp.org.cnsystemctl start ntpdecho "您现在可以编辑一个定时任务用于定时向官方时间服务器同步时间,以防止您当前的时间服务器时间错误"echo "你可以输入以下命令来编辑一个定时任务"echo "1、crontab -e"echo "2、* 4 * * * /usr/sbin/ntpdate cn.ntp.org.cn"echo "该命令为每到4点时就进行一次时间同步"sh ntp.shB主机:测试机测试datedate -s "2014-07-28 00:00"ntpdate 10.0.0.10date