代码拉取完成,页面将自动刷新
同步操作将从 s1302888/linux_kvm 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
yum install vsftpd
sed -i "s/root/#root/" /etc/vsftpd/user_list /etc/vsftpd/ftpusers
systemctl enable vsftpd
service vsftpd restart
systemctl stop firewalld.service
systemctl disable firewalld.service
/usr/sbin/setenforce 0
yum -y install xinetd
yum -y install telnet-server
yum -y install telnet
systemctl enable xinetd.service
systemctl enable telnet.socket
systemctl start telnet.socket
systemctl start xinetd.service
sed -i 's/disable.*/disable=no/' /etc/xinetd.d/telnet
echo " pts/0 pts/1 pts/2 pts/3 pts/4 pts/5 pts/6 pts/7 pts/8 pts/9 pts/10 pts/11" >> /etc/securetty
yum -y install httpd
yum -y install gcc
yum -y install git
yum -y install openssl
yum -y install openssl-devel
yum -y install php
yum -y install mysql
yum -y install php-mysql
# gd库是php处理图形的扩展库,gd库提供了一系列用来处理图片的api
yum -y install php-gd
yum -y install php-xml
yum -y install php-mbstring
yum -y install php-pear
yum -y install php-xmlrpc
yum -y install mysql-connector-odbc
yum -y install mysql-devel
yum -y install libdbi-dbd-mysql
yum -y install sendmail sendmail-cf
# Dovecot 是一个开源的IMAP和POP3邮件服务器
yum -y install dovecot
#sasl是一个胶合库,通过这个库把应用层与形式多式样的认证系统整合到一起
yum -y install cyrus-sasl
#安装named包,用来配置域名服务器
yum -y install bind
yum -y install bind-chroot
# 通过验证配置可以发现,基本配置只能在规定的ip范围内使用,所以需要通过SASL实现基于用户帐号的访问
yum install cyrus-sasl
# mysql的安装是为了论坛,不装也可以
service mysqld start
vi /etc/systemd/system/mysqld.service
systemctl daemon-reload
systemctl enable mysqld.service
systemctl start mysqld.service
yum install mysqld
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
rpm -ivh mysql-community-release-el7-5.noarch.rpm
yum install mysql-server
service mysqld restart
yum install mysql-community-server
service mysqld restart
cd ~
ssh-keygen -t dsa
ssh-copy-id -i ~/.ssh/id_dsa.pub root@172.16.67.139
scp -r root@172.16.67.139:/var/www/html/ /var/www/
# 重命名主机名
hostname dtitoolsbak.com
cp /etc/named.conf /etc/named.conf.bak
sed -i 's/127.0.0.1/any/' /etc/named.conf
sed -i 's/listen-on-v6/#listen-on-v6/' /etc/named.conf
sed -i 's/{ localhost; }/{ any; }/' /etc/named.conf
# sed中要加入TAB键,需要加\\t
sed -i '20i \\tallow-query-cache { any; };' /etc/named.conf
sed -i '44i \\tforwarders {\n 192.168.14.2;\n 192.168.14.3;\n };' /etc/named.conf
echo "zone \"baktools.com\" IN {
type master;
file \"baktools.com.zone\";
allow-update { none; };
};">> /etc/named.rfc1912.zones
echo "zone \"16.172.in-addr.arpa\" IN {
type master;
file \"baktools.com.rev\";
allow-update { none; };
};">> /etc/named.rfc1912.zones
cd /var/named
cp named.localhost baktools.com.zone
sed -i 's/@ rname.invalid./baktools.com. root.baktools.com./' /var/named/baktools.com.zone
# 删除8,9,10行
sed -i '8d' /var/named/baktools.com.zone
sed -i '8d' /var/named/baktools.com.zone
sed -i '8d' /var/named/baktools.com.zone
# 加上-e参数使转义生效
echo -e '@\tIN NS\tns.baktools.com.
@\tIN MX 10 mail.baktools.com.
# 如若/etc/hosts中没有设baktools.com的别名,则需要在该文件中加上自己ip地址,否则dns服务器无法识别baktools.com自身
@\tIN A\t172.16.67.143
ns\tIN A\t172.16.67.143
mail\tIN A\t172.16.67.143
' >>/var/named/baktools.com.zone
cp baktools.com.zone baktools.com.rev
sed -i '9d' /var/named/baktools.com.rev
sed -i '9d' /var/named/baktools.com.rev
sed -i '9d' /var/named/baktools.com.rev
sed -i '9i 143\tIN PTR\tbaktools.com.' /var/named/baktools.com.rev
echo "zone \"uss.no1\" IN {
type master;
file \"uss1.zone\";
};">> /etc/named.rfc1912.zones
cp named.localhost uss1.zone
sed -i 's/@ rname.invalid./uss.no1. root.uss.no1./' /var/named/uss1.zone
sed -i '8d' /var/named/uss1.zone
sed -i '8d' /var/named/uss1.zone
sed -i '8d' /var/named/uss1.zone
echo -e "@\tIN A\t172.16.67.148
@\tIN NS\tns.baktools.com.
">> /var/named/uss1.zone
echo "zone \"cdb.no1\" IN {
type master;
file \"cdb1.zone\";
};">> /etc/named.rfc1912.zones
cp named.localhost cdb1.zone
sed -i 's/@ rname.invalid./cdb.no1. root.cdb.no1./' /var/named/cdb1.zone
sed -i '8d' /var/named/cdb1.zone
sed -i '8d' /var/named/cdb1.zone
sed -i '8d' /var/named/cdb1.zone
echo -e "@\tIN A\t172.16.67.144
@\tIN NS\tns.baktools.com.
">> /var/named/cdb1.zone
echo "zone \"uss.db\" IN {
type master;
file \"ussdb.zone\";
};">> /etc/named.rfc1912.zones
cp named.localhost ussdb.zone
sed -i 's/@ rname.invalid./uss.db. root.uss.db./' /var/named/ussdb.zone
sed -i '8d' /var/named/ussdb.zone
sed -i '8d' /var/named/ussdb.zone
sed -i '8d' /var/named/ussdb.zone
echo -e "@\tIN A\t172.16.67.140
@\tIN NS\tns.baktools.com.
">> /var/named/ussdb.zone
echo "zone \"cdb.db\" IN {
type master;
file \"cdbdb.zone\";
};">> /etc/named.rfc1912.zones
cp named.localhost cdbdb.zone
sed -i 's/@ rname.invalid./cdb.db. root.cdb.db./' /var/named/cdbdb.zone
sed -i '8d' /var/named/cdbdb.zone
sed -i '8d' /var/named/cdbdb.zone
sed -i '8d' /var/named/cdbdb.zone
echo -e "@\tIN A\t172.16.67.138
@\tIN NS\tns.baktools.com.
">> /var/named/cdbdb.zone
echo "zone \"ocdb-oip\" IN {
type master;
file \"ocdb-oip.zone\";
};">> /etc/named.rfc1912.zones
cp named.localhost ocdb-oip.zone
sed -i 's/@ rname.invalid./ocdb-oip. root.ocdb-oip./' /var/named/ocdb-oip.zone
sed -i '8d' /var/named/ocdb-oip.zone
sed -i '8d' /var/named/ocdb-oip.zone
sed -i '8d' /var/named/ocdb-oip.zone
echo -e "@\tIN A\t172.16.67.148
@\tIN NS\tns.baktools.com.
">> /var/named/ocdb-oip.zone
# 到此为止域名服务器配置完毕,需要重启named并开机启动named,然后需要修改/etc/resolv.conf,在第一行上加上nameserver 172.16.67.143
# 凡是用到域名服务器的机器都需要修改
systemctl start named
systemctl enable named
# /var/name下存放的是正解反解的资料档案库
# TTL:快取记忆时间 ORIGIN:域名称
# SOA:master/slave认证参数
# NS:主机名称 A:ip地址
# 文档的首行开始,前面不可有空白否则代表延续前一个domain
# @符号代表zone的意思比如写在named.centos.vbird这个文档中,@就代表centos.vbird
# .符号代表一个完整主机名称(FQDN)
# 从主机名称查询到IP的流程称为:正解
# 从IP反解析到主机名称的流程称为:反解
# 不管整洁反解,每个域的记录就是一个区域(zone)
# 正解zone通常具有以下几个标志:
# SOA:就是开始验证(start of authority)的缩写
# NS:就是名称服务器(NAME SERVER)的缩写,记录的资料是DNS服务器
# A:就是地址(Address)的缩写,记录的是对应的IP地址
# 反解zone除了NS以及SOA之外,最重要的就是PTR(pointer 的缩写)
# 当DNS服务器在自己的资料库找不到所需的资料时会去查找.,这个记录.的zone的类型,就被称为hint类型
# 一部简单的正解服务器,起码要有两个zone才行,一个是hint,一个是关于自己域的正解zone
# 和DNS架构相关联的三个文档:
# /etc/hosts 主机名,别名都在这里面设置
# /etc/resolv.conf 这个就是DNS服务器IP的记录处
# /etc/nsswitch.conf 这个配置文件是用来决定是先要使用/etc/hosts还是/etc/resolv.conf
# 查询域的三个指令: host, nslookup, dig
# nslookup命令,是Linux里非常常用的网络命令,简而言之就是“查DNS信息用的”。
# dig查询是未来的主流,三个最常用的参数:
# +trace:从.开始追踪IP信息,从这个指令可以非常清晰的看到DNS的解析过程
# -t:用来查询mx,ns,soa等相关信息
# -x:用于查询反解的相关信息
# 如果你的Linux系统没有nslookup命令,那么八成是你没有安装bind-utils包
# 进入交互模式,总共有两种方法。
# 第一种方法,直接输入nslookup命令,不加任何参数,则直接进入交互模式,此时nslookup会连接到默认的域名服务器(即/etc/resolv.conf的第一个dns地址)。
# 第二种方法,是支持选定不同域名服务器的。需要设置第一个参数为“-”,然后第二个参数是设置要连接的域名服务器主机名或IP地址。
# exit 退出nslookup的交互模式
# set port=[value]
# 众所周知,DNS默认的服务端口是53。当某些特殊情况,此端口改变时,可以通过本命令来设置。
# set type=[value]也可以写成set querytype=[value],用于更改信息查询类型。
# 默认情况下,nslookup是查询域名所对应的A记录,而如果你想查询其对应的MX记录等信息时,就需要专门设置type值了。
# A:查看主机的IPv4地址
# AAAA:查看主机的IPv6地址
# ANY:查看关于主机域的所有信息
# ANY:查看关于主机域的所有信息
# CNAME:查找与别名对应的正式名字
# HINFO:查找主机的CPU与操作系统类型
# MINFO:查找邮箱信息
# MX:查找邮件交换信息
# NS:查找主机域的域名服务器
# PTR:查找与给定IP地址匹配的主机名
# RP:查找域负责人记录
# SOA:查找域内的SOA地址
# UINFO:查找用户信息
# Internet的邮件系统是通过几个复杂的部分连接而成的,像outlook,foxmail都是用来收信和发信的,称之为MUI:mail user agent邮件用户代理
# MUA并非直接将邮件发送至收件人手中,而是通过MTA:Mail Transfer Agent,邮件传输代理代为传递,Sendmail和Postfix就是扮演MTA的角色
# 一封邮件从MUA发出后,可能通过一个或多个MTA传递,最终到达MDA:Mail Delivery Agent,邮件投递代理
# 邮件到达MDA后,就存放在某个文件或特殊的数据库里,我们将这个长期保存邮件的地方称之为邮箱
# 所以一封邮件的流程是:发件人:MUA --发送--> MTA -> 若干个MTA... -> MTA -> MDA <--收取-- MUA:收件人
# MUA到MTA,以及MTA到MTA之间使用的协议就是SMTP协议,而收邮件时,MUA到MDA之间使用的协议最常用的是POP3或IMAP
# 通常MTA和MDA并不是同一台服务器,所以在Outlook等软件里,我们需要分别填写SMTP发送服务器的地址和POP3接收服务器的地址
cd /etc/mail
cp sendmail.cf sendmail.cf.bak
sed -i 's/Addr=127.0.0.1/Addr=0.0.0.0/' /etc/mail/sendmail.mc
sed -i 's/LOCAL_DOMAIN(\`localhost.localdomain')dnl/LOCAL_DOMAIN(\`baktools.com')dnl/' /etc/mail/sendmail.mc
# 将mc的代码编译到cf,先修改mc文件
m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
sed -i 's/#protocols = imap pop3 lmtp/protocols = imap pop3 lmtp/' /etc/dovecot/dovecot.conf
sed -i 's/#disable_plaintext_auth = yes/disable_plaintext_auth = no/' /etc/dovecot/conf.d/10-auth.conf
sed -i 's/# mail_location = mbox:~/mail_location = mbox:~/' /etc/dovecot/conf.d/10-mail.conf
sed -i 's/first_valid_uid = 1000/#first_valid_uid = 1000/' /etc/dovecot/conf.d/10-mail.conf
sed -i 's/ssl = required/ssl = no/' /etc/dovecot/conf.d/10-ssl.conf
# 中继文件,需要加上mail服务器地址
echo "Connect:baktools.com RELAY
Connect:baktools RELAY
" >> /etc/mail/access
# 本地域文件,加上mail服务器地址
echo "baktools
baktools.com
" >> /etc/mail/local-host-names
# /etc/sysconfig/saslauthd 需要查看下是否是 MECH=shadow
#SASL设置用户密码,以便邮箱登陆
testsaslauthd -u bakroot -p c8kdu3new
systemctl start sendmail.service
systemctl enable sendmail.service
systemctl start dovecot.service
systemctl enable dovecot.service
systemctl start saslauthd
systemctl enable saslauthd
# 若是服务器不能发邮件,则需要在各个服务器的/etc/mail/access加上如下内容,将邮件服务器的域名加上去就可以了
#Connect:baktools.com RELAY
#Connect:baktools RELAY
js跨域问题:
AllowOverride all
Options all
Order allow,deny
Allow from all
Header set Access-Control-Allow-Origin *
# 修改/etc/httpd/conf/httpd.conf
# ServerName 服务器主机名,可以是DNS域名,也可以是IP地址
# ServerAdmin 设置管理员邮箱
# DocumentRoot 网页默认存放目录
# DirectoryIndex 设置主页文件的名字
# 新添加一个用户tools(是什么名称无所谓,只要新添加一个用户即可)
adduser tools
#修改 httpd.conf 第66,67行,将其替换为
User tools
Group apache
#user 就用新添加的用户名,用户组为apache
#允许跨点跨域只要加上Access-Control-Allow-Origin这个参数
#修改256行这个段的代码
<Directory "/var/www/cgi-bin">
AllowOverride all
Options all
Order allow,deny
Allow from all
Header set Access-Control-Allow-Origin *
</Directory>
# 由于我们使用的是tools用户,所以需要在tools下生成dsa密钥
su - tools
ssh-keygen -t dsa
#将公钥复制到150服务器上
ssh-copy-id -i ~/.ssh/id_dsa.pub root@172.16.67.150
#将公钥复制到148服务器上
ssh-copy-id -i ~/.ssh/id_dsa.pub root@172.16.67.148
#将公钥复制到144服务器上
ssh-copy-id -i ~/.ssh/id_dsa.pub root@172.16.67.144
#将公钥复制到146服务器上
ssh-copy-id -i ~/.ssh/id_dsa.pub root@172.16.67.146
#将公钥复制到145服务器上
ssh-copy-id -i ~/.ssh/id_dsa.pub root@172.16.67.145
scp -r root@172.16.67.139:/var/www/cgi-bin/* /var/www/cgi-bin/
scp -r root@172.16.67.139:/opt/customer /opt/
scp -r root@172.16.67.139:/root/installation_package /root/installation_package
rpm -hiv oracle-instantclient11.2-basic-11.2.0.2.0.x86_64.rpm
rpm -hiv oracle-instantclient11.2-devel-11.2.0.2.0.x86_64.rpm
rpm -hiv oracle-instantclient11.2-sqlplus-11.2.0.2.0.x86_64.rpm
#添加e1用户
useradd e1
#给e1设置密码
passwd e1
#添加isys用户
useradd isys
# 新建一本oracle.sh,在文件中设置三个环境变量
echo "export ORACLE_HOME=/usr/lib/oracle/11.2/client64
export C_INCLUDE_PATH=/usr/include/oracle/11.2/client64
export LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64/lib
" >> /etc/profile.d/oracle.sh
#新建oracle.conf,在文件中设置好oracle的路径
echo "/usr/lib/oracle/11.2/client64/lib
" >> /etc/ld.so.conf.d/oracle.conf
mkdir -p /usr/lib/oracle/11.2/client64/network/admin /usr/lib/oracle/11.2/client64/log/diag/clients
mkdir -p /opt/oracle
cd /opt/oracle
#修改oracle文件夹的用户和用户群
chown e1:isys .
mkdir -p bin product/10.1.0
cd product/10.1.0
#建立软链接
ln -s /usr/lib/oracle/11.2/client64 client_1
# oracle的连接配置文件都在这个文件夹下,所以需要复制过来
scp -r root@172.16.67.139:/usr/lib/oracle/11.2/client64/network/admin/* /usr/lib/oracle/11.2/client64/network/admin/
# 安装postgresql yum repository 安装源
yum -y install http://yum.postgresql.org/9.5/redhat/rhel-7-x86_64/pgdg-redhat95-9.5-3.noarch.rpm
# 安装库
yum -y install postgresql95-server postgresql95-contrib postgresql95-devel
cd /opt
mkdir -p trs/lib/
scp -r root@172.16.67.139:/opt/trs/lib/TRS.pm /opt/trs/lib/TRS.pm
sed -i "s/error_to.*/error_to ='bakroot@baktools.com'/" /opt/customer/etc/init.conf
sed -i "s/warn_to.*/warn_to ='bakroot@baktools.com'/" /opt/customer/etc/init.conf
sed -i "s/from.*/from ='bakroot@baktools.com'/" /opt/customer/etc/init.conf
sed -i "s/debug_bcc.*/debug_bcc ='bakroot@baktools.com'/" /opt/customer/etc/init.conf
sed -i "s/$mail->{to} = .*/$mail->{to} = 'bakroot@baktools.com';/" /opt/customer/lib/perl/Mafi/Mail.pm
mkdir isys
chown tools:tools isys
su - tools
curl -kL http://install.perlbrew.pl | bash
~/perl5/perlbrew/bin/perlbrew install perl-5.22.3
cd /opt/isys
ln -s ~/perl5/perlbrew/perls/perl-5.22.3/bin bin
~/perl5/perlbrew/bin/perlbrew switch perl-5.22.3
source ~/perl5/perlbrew/etc/bashrc
cpanm CGI
cpanm Jcode
cpanm JSON
cpanm Date::Calc
cpanm DBI
cpanm Crypt::CBC
cpanm Config::Simple
cpanm Crypt::Blowfish
cpanm DBD::Oracle
export POSTGRES_HOME=/usr/pgsql-9.5
cpanm DBD::Pg
cpanm LWP::UserAgent
cpanm Crypt::TripleDES
cpanm LWP::Protocol::https
每次重启过后,resolv.conf又会恢复回初始值,这是因为重启后,系统自动会将/etc/sysconfig/network-script/ifcfg-eth0的dns,domain
值赋给resolv.conf,所以修改时要将ifcfg-eth0的dns一起修改掉
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。