基础软件搭建

1、dnsmasq

① 安装dnsmasq

yum install -y dnsmasq

② 修改配置文件

vim /etc/dnsmasq.conf

strict-order #严格按照resolv.conf顺序进行查找

listen-address=127.0.0.1,192.168.115.120 #设置能使用此dns服务的机器  去掉则全部可用

resolv-file=/etc/dnsmasq.d/resolv.dnsmasq.conf   #指定resolv-fele路径 默认/etc/resolv.conf

addn-hosts=/etc/dnsmasq.d/dnsmasq.hosts  #额外增加host路径

conf-dir=/etc/dnsmasq.d #制定配置文件路径 可制定多个

:wq

③ resolv中设置真正的那么server

vim  /etc/dnsmasq.d/resolv.dnsmasq.conf   #设置真正的nameserver

nameserver 8.8.8.8

nameserver 114.114.114.114

wq

设置额外hosts

cp  /etc/hosts  /etc/dnsmasq.d/dnsmasq.hosts

添加需要解析的域名及指向的地址(指向多未nginx,apache等)

vim /dnsmasq.d/dnsmasq.conf

address=/ad.youku.com/127.0.0.1     #指向本机,可屏蔽网页广告

address=/ad.iqiyi.com/127.0.0.1

address=/freehao123.com/123.123.123.123  #指向123.123.123.123

wq

 

测试

dnsmasq -test  #检查语法

systemctl restart dnsmasq.service

 dig  ad.youku.com

 

 

2、yum

由于redhat6.5的yum功能是需要注册费用的,所以自带的yum并不可用,想要使用免费的yum,可以用Centos6的yum源,配置自己的yum源。(可以先用yum list检查yum源是否可用,如果出现很多安装包,说明可用,则可以跳过这一步,如果报错说明不可以)

① 查看已安装的yum包:rpm -qa|grep yum

② 卸载yum软件包:rpm -qa|grep yum|xargs rpm -e --nodeps

③ 下载yum安装文件(注意机器是32位还是64位的):

wget http://mirrors.163.com/centos/6/os/x86_64/Packages/python-urlgrabber-3.9.1-11.el6.noarch.rpm

wget http://mirrors.163.com/centos/6/os/x86_64/Packages/python-iniparse-0.3.1-2.1.el6.noarch.rpm

wget http://mirrors.163.com/centos/6/os/x86_64/Packages/yum-metadata-parser-1.1.2-16.el6.x86_64.rpm

wget http://mirrors.163.com/centos/6/os/x86_64/Packages/yum-3.2.29-81.el6.centos.noarch.rpm

wget http://mirrors.163.com/centos/6/os/x86_64/Packages/yum-plugin-fastestmirror-1.1.30-40.el6.noarch.rpm

④ 安装yum:

rpm -ivh python-urlgrabber-3.9.1-11.el6.noarch.rpm

rpm -ivh python-iniparse-0.3.1-2.1.el6.noarch.rpm

rpm -ivh yum-metadata-parser-1.1.2-16.el6.x86_64.rpm

rpm -ivh yum-plugin-fastestmirror-1.1.30-40.el6.noarch.rpm yum-3.2.29-81.el6.centos.noarch.rpm (这两个要一起安装,有依赖关系)

⑤ 更改成163的yum源:

进入源目录:cd /etc/yum.repos.d/

下载163源:wget http://mirrors.163.com/.help/CentOS6-Base-163.repo

把文件里面的$releasever全部替换为版本号6sed -i 's#$releasever#6#g' CentOS6-Base-163.repo

⑥ 清除原有缓存:yum clean all

⑦ 重建缓存,以提高搜索安装软件的速度:yum makecache

⑧ 更新系统:yum update

⑨ gcc等环境安装,后续有些软件安装需要这些基础环境

gcc安装:yum install gcc-c++

PCRE pcre-devel 安装:yum install -y pcre pcre-devel

zlib 安装:yum install -y zlib zlib-devel

OpenSSL 安装:yum install -y openssl openssl-devel

回到顶部

3JDK安装

① 由于jdk下载需要接受条款的原因,所以下载后使用FlashFXP从本地上传到服务器。

② 进入/usr/local/src,解压jdk:tar -zxvf jdk-8u172-linux-x64.tar.gz

③ 将解压的jdk移动到/usr/local/:mv jdk1.8.0_172 /usr/local/

④ 配置环境变量:

$ vim /etc/profile

在最后添加如下环境变量:

export JAVA_HOME=/usr/local/jdk1.8.0_172

export JRE_HOME=/usr/local/jdk1.8.0_172/jre

export PATH=$JAVA_HOME/bin:$PATH

export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib

保存退出后输入命令使配置生效:source /etc/profile

⑤ 验证jdk:java –version

回到顶部

4Tomcat安装

① 准备tomcat:

下载:wget  http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.30/bin/apache-tomcat-8.5.30.tar.gz

解压:tar –zxvf apache-tomcat-8.5.30.tar.gz
tomcat复制一份到/local/src/下,作为项目的服务器:cp -r apache-tomcat-8.5.30 /usr/src/tomcat-ljz

② 修改配置:

修改/conf/server.xml,在8080端口Connector增加两项。

 

修改/conf/context.xml,增加数据源

 

修改/bin/catalina.sh,在开头增加如下配置

 

③ 进入/usr/src/tomcal-ljz/bin

启动Tomcat./startup.sh

关闭Tomcat./shutdown.sh

④ Linxu防火墙设置:

/etc/sysconfig/iptables中设置允许端口:vim /etc/sysconfig/iptables

-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT 

重启防火墙:service iptables restart
之后就可以从虚拟机外部访问80/8080端口了

回到顶部

5Nginx安装

① 准备nginx:

下载:wget http://nginx.org/download/nginx-1.8.1.tar.gz

解压:tar -zxvf nginx-1.8.1.tar.gz

进入目录:cd nginx-1.8.1

② 配置nginx:

./configure --prefix=/usr/src/nginx --with-http_stub_status_module --with-http_ssl_module

--prefix=PATH :指定 nginx 的安装目录

--with-http_ssl_module :使用https协议模块

--with-http_stub_status_module :用来监控 Nginx 的当前状态

③ 编译安装:make  &&  make install

④ 查看nginx版本:

进入安装目录:cd /usr/src/nginx/sbin

查看版本:./nginx -v

⑤ 配置nginx.conf,进入conf目录:cd /usr/src/nginx/conf

将原始nginx.conf备份:cp  nginx.conf  nginx.conf.bak

使用nginx.conf替换/usr/src/nginx/conf/nginx.conf

创建门户网站目录:mkdir /usr/src/ljzsg_mt

 

检测配置文件的正确性:./nginx –t

⑥ 设置开机启动

编辑/etc/rc.localvim /etc/rc.local

添加一行:/usr/src/nginx/sbin/nginx
之后,开机会自动启动nginx

⑦ nginx 命令

进入nginx目录:cd /usr/src/nginx/sbin

启动服务:./nginx

停止服务:./nginx –s stop

重启服务:./nginx –s reopen

重新载入配置文件:./nginx –s reload

###nginx开启索引功能

location / {   
        root /data/www/file                     //指定实际目录绝对路径;   
        autoindex on;                            //开启目录浏览功能;   
        autoindex_exact_size off;            //关闭详细文件大小统计,让文件大小显示MB,GB单位,默认为b;   
        autoindex_localtime on;              //开启以服务器本地时区显示文件修改日期!   
}

####apache开启索引功能

Alias / ”/data/www/file”   
       < Directory  ”/data/www/file” >   
        Options Indexes                                               //开启目录列表索引模式   
        Order allow,deny   
        IndexOptions  NameWidth = 25   Charset = UTF -8     //设定文件名显示长度,文字字符编码   
        Allow from all   
     </ Directory >

回到顶部

6Node安装

① 准备node

下载:wget  https://nodejs.org/dist/v8.9.4/node-v8.9.4-linux-x64.tar.gz

解压:tar  –zxvf  node-v8.9.4-linux-x64.tar.gz

移动到/usr/local/mv node-v8.9.4-linux-x64 /usr/local/node-v8.9.4

② 创建软链接:

ln -s /usr/local/node-v8.9.4/bin/node /usr/local/bin/node

ln -s /usr/local/node-v8.9.4/bin/npm /usr/local/bin/npm

验证:

    node -v

    npm -v

回到顶部

7Redis安装

① 准备Redis

下载:wget http://download.redis.io/releases/redis-4.0.6.tar.gz

解压:tar -zxvf redis-4.0.6.tar.gz

移动到/usr/local/下:mv redis-4.0.6 /usr/local/ redis

进入目录:cd /usr/local/redis

② 编译:make

③ 修改配置文件:vim redis.conf

redis设置为守护进程,不然启动时会一直占着终端

daemonize  yes

 

关闭守护模式,否则外部访问不了redis,正式环境可不改.

protected-mode  no

注释掉bind,否则其它地址无法访问redis

④ 设置开机启动

编辑/etc/rc.localvim /etc/rc.local

添加一行:/usr/local/redis/src/redis-server  /usr/local/redis/redis.conf

之后,开机会自动启动redis

⑤ 启动/停止服务:

进入redis目录:cd /usr/local/redis/src

启动服务:./redis-server ../redis.conf

停止服务:./redis-cli shutdown

回到顶部

8Git安装

① 准备Git

下载:wget https://www.kernel.org/pub/software/scm/git/git-2.9.4.tar.gz

解压:tar -zxvf git-2.9.4.tar.gz

② 安装编译Git时需要的包

yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel

yum install gcc perl-ExtUtils-MakeMaker

③ 删除已有的git:yum remove git

④ 编译安装

cd /usr/local/src/git-2.9.4

安装到/usr/local/git目录:./configure --prefix=/usr/local/git

编译安装:make && make install

⑤ 创建软链并测试

ln -s /usr/local/git/bin/*  /usr/local/bin/

测试gitgit --version

回到顶部

9Maven安装

① 准备maven

下载:wget http://mirror.bit.edu.cn/apache/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz

解压:tar -zxvf apache-maven-3.3.9-bin.tar.gz

移动到/usr/localmv apache-maven-3.3.9 /usr/local/maven3

② 添加环境变量

vim /etc/profile

在最后添加如下两行:

export MAVEN_HOME=/usr/local/maven3

export PATH=$MAVEN_HOME/bin:$PATH

使环境变量生效:source /etc/profile

③ 检验maven:mvn -v

回到顶部

10Jenkins安装

jenkins war包放入Tomcat中托管运行,可在https://jenkins.io/download/下载war包。

① 准备Jenkins Tomcat容器

复制一份tomcatmv /usr/local/src/apache-tomcat-8.5.30 /usr/src/tomcat-jenkins-8090

设置端口为8090

         cd tomcat-jenkins-8090/conf/

         vim server.xml

 

修改端口,避免和ljzsg服务器的端口冲突

 

 

开放8090端口

vim /etc/sysconfig/iptables

添加:-A INPUT -m state --state NEW -m tcp -p tcp --dport 8090 -j ACCEPT

重启防火墙:service iptables restart

② 将jenkins war包放入webapps目录下

③ 启动tomcat:

cd tomcat-jenkins-8090/bin/

./startup.sh

回到顶部

部署服务

① 访问jenkins网站做一些配置:http://192.168.0.0:8090/jenkins/

显示解锁jenkins页面:第一次运行Jenkins时,会在~目录下创建一个.jenkins的隐藏文件夹来存储Jenkins的配置文件和插件库,初始化的用户名和密码也在里边,登录时需要用到。从/root/.jenkins/secrets/initialAdminPassword复制密码并填入继续。

 

② 登录成功之后跳转到插件选择页面。Jenkins作为一个框架,里边很多功能的集成是基于插件的,比如git插件可以从git获取源码,maven插件可以执行maven命令等等。我们选择左边的,自动安装可支持的插件。重要插件安装失败可以重试几次,或者手动安装。

 

 

③ 创建管理员账户

 

④ 创建任务

选择创建一个新任务,输入项目名称,勾选“构建一个自由风格的软件项目”然后点击确定,进入详细配置页面。

 

⑤ General配置

 

⑥ 选择git进行源码管理,输入远程仓库地址,点击Add添加git账号。

 

 

⑦ 构建触发器

构建触发器是指在什么条件下自动触发构建,这里我们不配置,手动触发构建。

⑧ 构建配置

选择Excecute shell

 

添加如下命令,打包项目:

LJZSG_HOME="/root/.jenkins/workspace/ljzsg_mt"

cd $LJZSG_HOME

mvn clean package

 

构建完成之后,将war包复制到tomcat下,并重启项目

 

# LJZSG根目录

LJZSG_HOME="/root/.jenkins/workspace/ljzsg_mt"

#Tomcat根目录

TOMCAT_HOME="/usr/src/tomcat-ljz"

#端口

TOMCAT_PORT=8080

#TOMCAT_PID用于检测Tomcat是否在运行

TOMCAT_PID="`lsof -n -P -t -i :${TOMCAT_PORT}`"

#如果Tomcat还在运行

warRootPath="${TOMCAT_HOME}/webapps/ROOT/"

warPath="${TOMCAT_HOME}/webapps/core/"

warFile="${TOMCAT_HOME}/webapps/core.war"

#如果文件或者文件夹存在则删除

deleteWhenExist(){

 if [ -e $1 ]; then

  rm -rf $1

 fi

}

#如果Tomcat在运行,干掉服务

if [ -n "$TOMCAT_PID" ]; then

 kill -9 $TOMCAT_PID

fi

deleteWhenExist ${warRootPath}

deleteWhenExist ${warPath}

deleteWhenExist ${warFile}

 

#拷贝新编译的包到Tomcat

cp $LJZSG_HOME/core/target/core.war ${TOMCAT_HOME}/webapps/

#启动Tomcat

${TOMCAT_HOME}/bin/startup.sh

 

⑨ 构建项目

第一次会下载maven插件和项目依赖的包,会比较慢,可手动上传jar包到maven仓库。

 

11、gitlab

1)安装gitlab yum源

vim /etc/yum.repos.d/gitlab-ce.repo

[gitlab-ce]

name=Gitlab CE Repository

baseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el$releasever/

gpgcheck=0

enabled=1

wq

yum makecache

(2)安装gitlab包

 yum install gitlab-ce

(3)修改配置

vim  /etc/gitlab/gitlab.rb

external_url ‘172.20.100.56’  #需改url地址

端口默认未8080,如果已使用,自定义其他端口

wq

4)重新启动

 gitlab-ctl reconfigure

 gitlab-ctl restart

(4)输入网站验证(配置中地址)

 http://172.20.100.56   #查看是否正常

(5)初始化admin密码

 su - git

gitlab-rails console production

 u=User.where(id:1).first

u.password='12345678'

u.password_confirmation='12345678' 

u.save  #显示true为修改成功

 

 

 

 

 

 

 

 

12、dhcp

1)DHCP工作过程

DHCP客户机在启动时,会搜寻网络中是否存在DHCP服务器。如果找到,则给DHCP服务器发送一个请求。DHCP服务器接到请求后,为DHCP客户机选择TCP/IP配置的参数,并把这些参数发送给客户端。 如果已配置冲突检测设置,则DHCP服务器在将租约中的地址提供给客户机之前会使用Ping测试作用域中每个可用地址的连通性。这可确保提供给客户的每个IP地址都没有被使用手动TCP/IP配置的另一台非DHCP计算机使用。

根据客户端是否第一次登录网络,DHCP的工作形式会有所不同。

 

1)安装dhcp

  yum search dhcp

  yum -y install dhcp

2)更改配置

 cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf

vim /etc/dhcp/dhcpd.conf 

7 option domain-name "server.com";   #域名:参见/etc/resolv.conf

  8 option domain-name-servers 172.25.10.254;  #指定dns服务器,多台用逗号隔开。

 30 subnet 172.25.10.0 netmask 255.255.255.0 { ##指定子网络及子网掩码

 31   range 172.25.10.10 172.25.10.20;   ##指定IP范围

 32   option routers 172.25.10.254      ##指定默认网关

 33 }

 34## 删除27,28行,34行及以后

wq

3)重启服务

    systemctl start dhcpd

4)客户端测试

   <1>修改网络参数

   vim /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0

BOOTPROTO=dhcp ###关键部位为dhcp

ONBOOT=yes

.....

wq

<2>重启网络

systemctl restart network   #失败可能是防火墙原因

ip a s eth0

<3>配置之后会修改的文件:

/etc/resolv.conf  #dns

 route -n    #路由查看   

/var/lib/dhcpd/dhcpd.leases   #记录的dhcp信息

 

 

 

13、svn

1)安装软件

 yum -y install subversion

 安装位置查看:rpm -ql subversion  或通过find查找

 2)创建版本目录(自定义)

  mkdir /home/svn

3)创建svn版本库(自定义)

  svnadmin create /home/svn/svn

  进入版本库

  cd  /home/svn/svn

4)修改配置

 cd conf

  anthz:用户权限管理

  passwd:用户账号密码管理

  svnserve.conf:服务器配置文件

vim authz

[groups]          #定义组的用户

  admin = admin  

  developer = test1,test2

  [/] #admin组下面的用户对svn版本有读写权限,有些写为[\],未深究

  @admin = rw

  [projectA:/dir1] #配置projectA版本库下dir1目录的访问权限

  test1 = rw  #test1 读写权限

  test2 =     #test2 没访问权限

  [projectA:/]

  test1 = rw   #test1 对projectA版本库读写权限

  test2 = r    #test2 对projectA版本库下可读权限,

wq

vim  passwd

账号 = 密码

admin=123456 #admin用户密码为123456

test1=654321

test2 =abcdef

wq

vim  svnserve.conf

[general]

anon-access = read    #匿名读权限

auth-access = write    #用户登陆写权限

password-db = passwd  #使用passwd文件

authz-db = authz       #使用authz文件

5)启动服务器

防火墙关闭或设置

systemctl stop firewall && setenforce 0

iptables -I INPUT -p tcp --dport 3690 -j ACCEPT

svnserve  -d  -r /home/svn  --listen-port 3690 #注意:设置为svn目录路径,可运行多个版本库   端口默认为3690

                             #      设置为svnserve  -d  -r /home/svn /svn 只能启用一个svn这个版本库

6)客户端访问测试

 svn://ip地址:3690/svn  --username=test1

 

命令以及问题:

svn  checkout  #检出

svn  commit -m “”  #提交

svn  diff      #本地库与远程库作对比

svn update     #更新本地库版本  也可制定版本更新 svn update  -r6

svn  status    #查看工作副本的状态

svn add test.txt  #增加test.txt到版本库中

svn revert test.txt  #撤销test.xt的修改,回到未修改状态,回复目录需加-R选项

svn merge  -r 22:21  test.txt  #撤销一个版本的修改到21版本

svn log: 用来展示svn 的版本作者、日期、路径等等。

svn diff: 用来显示特定修改的行级详细信息。

svn cat: 取得在特定版本的某文件显示在当前屏幕。

svn list: 显示一个目录或某一版本存在的文件。

svn  up :更新当前到最新版本

如:svn log -r 6:8   #查看两个版本之间的信息日志

svn log trunk/HelloWorld.html  #查看某一文件的版本修改信息,也可查看版本号

svn log -l 5 -v  #查看5条记录  查看目录需要加-v

svn list http://192.168.0.1/runoob01  #查看目录下文件

svn cat -r 版本号 rule.txt  #查看某一版本的文件

 

svn copy trunk/ branches/my_branch   #本地新建分支

svn merge ../branches/my_branch/   #合并分支到当前分支

svn copy trunk/ tags/v1.0   #创建标签tag

 

 

14、smtp

 

推荐:https://www.cnblogs.com/zydev/p/6307482.html

阿里云 Centos 6.5 32

Postfix-2.8.12.tar.gz      Postfix MTA(邮件传输代理)
Dovecot-2.1.8.tar.gz      IMAP POP3 邮件服务器
Postfixadmin-2.3.5.tar.gz    采用PHP编写的开源WEB邮箱及域名账号管理工具
Roundcubemail-0.8.1.tar.gz  采用PHP编写的开源IMAP邮件WEB客户端

安装过程

1.安装Postfix

yum -y install postfix

安装完成还需要替换系统自带的sendmail

rpm -e sendmail

或者

yum remove sendmail

修改MTA(默认邮件传输代理)

alternatives --config mta

然后直接回车即可。

检查一下是不是已经设置成功了。

alternatives --display mta

第一行可以看到mta的状态。 例如:mat - status is manual.

2.安装Dovecot

yum -y install dovecot

3.配置Postfix

编辑/etc/postfix/main.cf,可以下载下来修改,也可以使用vi进行编辑:

vi /etc/postfix/main.cf

修改如下:

myhostname = mail.lomu.me  # 75行: 取消注释,设置hostname

mydomain = lomu.me     # 83行: 取消注释,设置域名

myorigin = $mydomain    # 99行: 取消注释

inet_interfaces = all  # 116行: 修改

inet_protocols = ipv4   # 119行: 推荐ipv4,如果支持ipv6,则可以为all

mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain  # 164行: 添

mynetworks = 127.0.0.0/8, 10.0.0.0/24  # 264行: 取消注释,指定内网和本地的IP地址范围

home_mailbox = Maildir/   # 419行: 取消注释,邮件保存目录

smtpd_banner = $myhostname ESMTP   # 571行: 添加

# 添加到最后

message_size_limit = 10485760 # 规定邮件最大尺寸为10M

mailbox_size_limit = 1073741824 # 规定收件箱最大容量为1G

# SMTP认证

smtpd_sasl_type = dovecot

smtpd_sasl_path = private/auth

smtpd_sasl_auth_enable = yes

smtpd_sasl_security_options = noanonymoussmtpd_sasl_local_domain = $myhostnamesmtpd_recipient_restrictions = permit_mynetworks,permit_auth_destination,permit_sasl_authenticated,reject

修改好了之后使用/etc/rc.d/init.d/postfix start开启postfix,使用chkconfig postfix onpostfix开机启动。

service postfix start

4.配置Dovecot

修改如下:

 vi /etc/dovecot/dovecot.conf

listen = *                                      # 26行: 如果不使用IPv6,请修改为*

 

 vi /etc/dovecot/conf.d/10-auth.conf

disable_plaintext_auth = no                   # 9行: 取消注释并修改

auth_mechanisms = plain login                  # 97行: 添加

 

vi /etc/dovecot/conf.d/10-mail.conf

mail_location = maildir:~/Maildir                    # 30行: 取消注释并添加

 

vi /etc/dovecot/conf.d/10-master.conf

# 88-90行: 取消注释并添加# Postfix smtp验证

unix_listener /var/spool/postfix/private/auth {     

    mode = 0666

    user = postfix

    group = postfix

}

#####

 /etc/rc.d/init.d/dovecot start  #启动

chkconfig dovecot on

到这里,我们的邮件服务器就已经搭建成功了。

5.域名解析

最后别忘了还需要进行域名解析工作。

添加一个子域名mailA记录解析到服务器IP

再添加一个MX记录,主机记录为空,记录值为上面解析的二级域名mail.lomu.me,优先级10

注意:解析生效可能需要一段时间。

6.邮箱使用

一切都弄好以后,就可以使用Foxmail等第三方软件来收发邮件了。在这里需要说一下,系统用户就是邮件的用户,例如root,就是一个邮箱用户,邮箱是root@domain.com,密码就是root的密码,所以需要创建用户,只要使用useradd创建用户,再使用passwd设置密码。

好了,假如我们创建一个admin的用户:

# 创建用户

useradd admin#设置密码,会要求输入两次密码

passwd admin

接下来登录Foxmail,如图:

 

点击创建,进入:

  

这里需要注意,邮件账号是admin,并不是邮箱,另外我们没有配置SSL,所以也不要勾选。 接下来点击创建,如果一切正常的话,你已经成功了。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

15、nextclould

16、rsyslog

17、elk

18、nginx+lua

19、flume

20、ansible一、配置epel源

yum install http://mirrors.163.com/centos/7.4.1708/extras/x86_64/Packages/epel-release-7-9.noarch.rpm 
二、安装ansible
yum install -y ansible
三、验证安装
ansible --version 发现有个警告 需要升级gmp 解决方法如下 1、安装依赖 yum install gcc python-devel python-pip 2、升级软件 pip install --upgrade PyCrypto pip install pycrypto-on-pypi #注意最后一行 成功安装 3、再次验证ansible ansible --version 至此 ansible安装成功

###ansible命令
ansible-doc #列出已安装的模块
ansible-doc -l 查看某模块的具体用法
# ansible-doc -s command
absible-galaxy #

ansible-galaxy 指令用于方便的从https://galaxy.ansible.com/ 站点下载第三方扩展模块,我们可以形象的理解其类似于centos下的yum、python下的pip或easy_install 。如下示例:

ansible-galaxy install aeriscloud.docker

ansible-link

ansible-lint是对playbook的语法进行检查的一个工具。用法是ansible-lint playbook.yml 。

ansible-playbook

该指令是使用最多的指令,其通过读取playbook 文件后,执行相应的动作。

ansible-pull

适用于以下场景:你有数量巨大的机器需要配置,即使使用非常高的线程还是要花费很多时间;你要在一个没有网络连接的机器上运行Anisble,比如在启动之后安装。

ansible-vault

注意:重点是ansible和ansible-playbook

 

##ansible 配置文件 

/etc/ansible/ansible.cfg

ansible模块 :https://blog.csdn.net/magerguo/article/details/79496593

 

 

 

 

 

 

21、vpn

pptp vpn

 

 

 

 

加入yum

rpm -Uvh http://poptop.sourceforge.net/yum/stable/rhel6/pptp-release-current.noarch.rpm

 

1)安装软件包(软件包参考lnmp_soft

[root@proxy ~]# yum localinstall pptpd

[root@proxy ~]# rpm -qc pptpd

/etc/ppp/options.pptpd

/etc/pptpd.conf

/etc/sysconfig/pptpd

2)修改配置文件

[root@proxy ~]# vim /etc/pptpd.conf

.. ..

localip 201.1.2.5                                    //服务器本地IP

remoteip 192.168.3.1-50                            //分配给客户端的IP

 

[root@proxy ~]# vim /etc/ppp/options.pptpd

require-mppe-128                                    //使用MPPE加密数据

ms-dns 8.8.8.8                                    //DNS服务器

 

[root@proxy ~]# vim /etc/ppp/chap-secrets            //修改账户配置文件

jacob           *               123456      *

//用户名    服务器标记    密码    客户端

 

[root@proxy ~]# echo "1" > /proc/sys/net/ipv4/ip_forward    //开启路由转发

3)启动服务

[root@proxy ~]# systemctl start pptpd

[root@proxy ~]# systemctl enable pptpd

[root@proxy ~]# firewall-cmd --set-default-zone=trusted

4)FQ设置(非必需操作)

[root@proxy ~]# iptables -t nat -A POSTROUTING -s 192.168.3.0/24 \

>  -j SNAT --to-source 201.1.2.5

客户端设置

启动一台Windows虚拟机,将虚拟机网卡桥接到public2,配置IP地址为201.1.2.20

新建网络连接(具体操作如图-3所示),输入VPN服务器账户与密码(具体操作如图-4所示),连接VPN并测试网络连通性(如图-5所示)。

 

-3

 

-4

 

 

 

创建L2TP+IPSec VPN

问题

本案例要求搭建一个L2TP+IPSec VPN环境,并测试该VPN网络是否能够正常通讯,具体要求如下:

  • 使用L2TP协议创建一个支持身份验证与加密的隧道连接
  • 使用IPSec对数据进行加密
  • 为客户端分配192.168.3.0/24的地址池
  • 客户端连接的用户名为:jacob,密码为:123456
  • 预共享密钥为:randpass

 方案

准备实验所需的虚拟机环境,实验环境所需要的主机及对应的IP设置列表如表-3所示,正确配置IP地址、主机名称,并且为每台主机配置YUM源。

表-3 主机列表

 

实验拓扑如图-6所示。

 

-6

 步骤

实现此案例需要按照如下步骤进行。

步骤一:部署IPSec服务

1)安装软件包

[root@vpn ~]# yum -y install libreswan

2)新建IPSec密钥验证配置文件

[root@vpn ~]# cat /etc/ipsec.conf                //仅查看一下该主配置文件

   nat_traversal=yes    #在配置文件里加入这一行,充许传透nat建立l2tp连接
    virtual_private=%v4:10.0.0.0/8,%v4:192.168.0.0/16,%v4:172.16.0.0/12,%v4:25.0.0.0/8,%v4:100.64.0.0/10  #允许的网段

include /etc/ipsec.d/*.conf                    

//加载该目录下的所有配置文件

[root@vpn ~]# vim /etc/ipsec.d/myipsec.conf             //新建该文件  建立ipsec l2tp 服务关联的配置文件:

conn IDC-PSK-NAT     //有些为conn L2TP-PSK-NAT

 

rightsubnet=vhost:%priv        &

nbsp;               //允许建立的VPN虚拟网络

 

also=IDC-PSK-noNAT

conn IDC-PSK-noNAT

 

authby=secret         &

nbsp;                          //加密认证

 

ike=3des-sha1;modp1024        &

nbsp;               //算法

 

phase2alg=aes256-sha1;modp2048      &

nbsp;         //算法

 

   pfs=no

    auto=add

    keyingtries=3

    rekey=no

    ikelifetime=8h

    keylife=3h

    type=transport

left=201.1.2.200         &   重要,服务器本机的外网IP

nbsp;                      //

 leftprotoport=17/1701

 

right=%any          &

nbsp;                         //允许任何客户端连接

rightprotoport=17/%any

3)创建IPSec预定义共享密钥

[root@vpn ~]# cat /etc/ipsec.secrets                 //仅查看,不要修改该文件

include /etc/ipsec.d/*.secrets

 

[root@vpn ~]# vim /etc/ipsec.d/mypass.secrets        //新建该文件

201.1.2.200   %any:    PSK    "randpass"             //randpass为密钥

                                                //201.1.2.200VPN服务器的IP

4)启动IPSec服务

[root@vpn ~]# systemctl start ipsec        

[root@vpn ~]# netstat -ntulp |grep pluto

udp        0      0 127.0.0.1:4500          0.0.0.0:*           3148/pluto          

udp        0      0 192.168.4.200:4500      0.0.0.0:*           3148/pluto          

udp        0      0 201.1.2.200:4500        0.0.0.0:*           3148/pluto          

udp        0      0 127.0.0.1:500           0.0.0.0:*           3148/pluto          

udp        0      0 192.168.4.200:500       0.0.0.0:*           3148/pluto          

udp        0      0 201.1.2.200:500         0.0.0.0:*           3148/pluto          

udp6       0      0 ::1:500                 :::*                 3148/pluto

部署XL2TP服务

1)安装软件包(软件包参考lnmp_soft)

[root@vpn ~]# yum localinstall xl2tpd-1.3.8-2.el7.x86_64.rpm

2) 修改xl2tp配置文件(修改3个配置文件的内容)

[root@vpn ~]#  vim  /etc/xl2tpd/xl2tpd.conf                //修改主配置文件

[global]

.. ..    

[lns default]

.. ..

ip range = 192.168.3.128-192.168.3.254                    //分配给客户端的IP

local ip = 201.1.2.200                                //VPN服务器的IP地址

 

[root@vpn ~]# vim /etc/ppp/options.xl2tpd                //认证配置

require-mschap-v2                

 

                        //添加一行,强制要求认证

#crtscts                                                //注释或删除该行

#lock                                                //注释或删除该行

 

root@vpn ~]# vim /etc/ppp/chap-secrets                    //修改密码文件

jacob   *       123456  *                //账户名称   服务器标记   密码   客户端IP

3)启动服务

[root@vpn ~]# systemctl start xl2tpd

[root@vpn ~]# netstat  -ntulp |grep xl2tpd        

udp     0      0 0.0.0.0:1701      0.0.0.0:*          3580/xl2tpd

4)设置路由转发,防火墙

[root@vpn ~]# echo "1" > /proc/sys/net/ipv4/ip_forward

[root@vpn ~]# firewall-cmd --set-default-zone=trusted

5)FQ设置(非必需操作)

[root@vpn ~]# iptables -t nat -A POSTROUTING -s 192.168.3.0/24 \

>  -j SNAT --to-source 201.1.2.200

步骤二:客户端设置

启动一台Windows虚拟机,将虚拟机网卡桥接到public2,配置IP地址为201.1.2.20。

新建网络连接(参考案例2),输入VPN服务器账户与密码(参考案例2)。

设置Windows注册表(不修改注册表,连接VPN默认会报789错误),具体操作如下:

  • 单击"开始",单击"运行",键入"regedit",然后单击"确定"
  • 找到下面的注册表子项,然后单击它:
  • HKEY_LOCAL_MACHINE\ System\CurrentControlSet\Services\Rasman\Parameters
  • "编辑"菜单上,单击"新建"->"DWORD值"
  • "名称"框中,键入"ProhibitIpSec"
  • "数值数据"框中,键入"1",然后单击"确定"
  • 退出注册表编辑器,然后重新启动计算机

设置VPN连接的属性,预共享密钥是IPSec配置文件中填写的randpass,具体操作如图-7所示。

 

-7

连接VPN并测试网络连通性(参考案例2)。

 

 

 

 

 

 

 

22、ftp

23. Waf

(1) Cdnfly

https://www.centos.bz/2014/06/new-http-guard-release/

需要干净的系统,可能会覆盖原有的mysql,需要基础yum源

主控端安装

curl -k "https://www.centos.bz/httpguard/master.sh?$(date +%s)" -o master.sh

chmod +x master.sh

./master.sh  

被控节点安装

curl -k "https://www.centos.bz/httpguard/agent.sh?$(date +%s)" -o agent.sh

chmod +x agent.sh

./agent.sh 主控端IP

主控端ip为真实ip

主控访问

地址:http://ip:88/
用户和密码:admin guard

 

(2) Openwaf

  https://github.com/titansec/OpenWAF/tree/master/doc

(3)waf

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

23、mailx

1安装邮件发送工具mailx

yum install mailx         #安装    

2设置发送邮件的email,用于邮件发送

cat /etc/mail.rc  //内容如下

set from=xxx@sina.cn

set smtp=smtp.sina.com

set smtp-auth-user=xxx@sina.cn

set smtp-auth-password=xxxxxxx

set smtp-auth=login

3发送测试邮件

echo "zabbix test ..." |mail -s "zabbix" xxx@qq.com

 

 

24、docker

其他系统安装:https://baijiahao.baidu.com/s?id=1592846051245987256&wfr=spider&for=pc

http://www.runoob.com/docker/docker-architecture.html

安装Docker的预备条件:

64CPU架构的计算机。(暂不支持32位)

Linux3.8以上内核。

内核至少支持其中一种存储驱动:Device Manager(默认); AUFS; vfs; btrfs

内核必须支持并开启cgroupnamespace功能

- CGroups(Control Groups)-资源管理

– NameSpace-进程隔离

– SELinux安全

1)内核查看

 uname -a

如果版本过低需要升级内核

(2)移除旧版docker

Yum      remove    docker \

                  docker-client \

                  docker-client-latest \

                  docker-common \

                  docker-latest \

                  docker-latest-logrotate \

                  docker-logrotate \

                  docker-selinux \

                  docker-engine-selinux \

                  docker-engine

 

 

(3)安装系统工具

 yum install -y yum-utils device-mapper-persistent-data lvm2

 

(4)添加软件源

  yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

yum makecache fast  #跟新yum缓存

 

(5)安装和启动docker

 yum -y install docker-ce

systemctl start docker

(6)测试

 docker ps

 docker run hello-world

(7) 命令

  docker images        查看镜像

  docker  search  xxx  查找镜像

  docker   pull   xxx   下载镜像

  doker help pull        查看pull命令帮助

docker push  xxx     上传镜像

docker load < xxx.tar   导入镜像

docker  save  image_name  > xxx.tar  #导出镜像

docker  run  -it  centos bash  #使用centos镜像生产一个容器

    -i

    -t

      -d

docker ps  查看容器信息

-a    查看所有容器列表

-aq  仅显示容器id

docker history   查看镜像制作历史

docker inspect  image_name 查看镜像底层信息

docker rmi image_name 删除本地镜像

docker  tag   centos:latest   test:v1 修改镜像名称和标签

docker stop 关闭容器

docker start 启动容器

dockers restart 重启容器

doker  attach |exec  进入容器

   attach     进入容器,exit会导致容器关闭

   exec      进入容器,退出时丌会关闭容器

docker  inspect  查看容器爹那个信息

docker  top 进入容器查看进程列表

doker rm  删除容器(先关闭容器,才能删除容器

 

 

25、Mysql

rpm -qa | grep mysql

rpm -e mysql  // 普通删除模式

rpm -e --nodeps mysql  // 强力删除模式,如果使用上面命令删除时,提示有依赖的其它文件,则用该命令可以对其进行强力删除

主要要清理空目录:/var/log/mysql.log  /var/lib/mysql   /etc/my.cnf  /usr/bin/mysql

 

到官网找相关安装包下载

地址:https://dev.mysql.com/downloads/mysql/

wget  https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.15-1.el7.x86_64.rpm-bundle.tar

tar -xf    mysql-8.0.15-1.el7.x86_64.rpm-bundle.tar

rmp  -ivh    mysql-community-*.rpm

ps -ef |grep mysql

systemctl start mysqld  

vim /etc/my.cnf

skip-grant-tables  #添加跳过密码检查

systemctl start mysqld

 

mysql uroot

>alter user  “root”@”localhost” identified by “REMYshishabi@123”;

>flush privileges;

>quit

删除skip-grant-tables 字段

systemctl start mysqld  #重启服务

 

常见问题整理:

 1[ERROR] Can't start server: can't check PID filepath: No such file or directory

错误原因

一般是由于服务器强制关机导致pid文件丢失。

解决办法

/etc/my.cnf 中查看pid-file的位置

pid-file=/var/run/mysql/mysqld.pid

创建对应的目录并修改权限

mkdir -p /var/run/mysql

chown mysql.mysql /var/run/mysql

这时可以尝试重启mysql了,如果还不行继续第三步

创建一个pid文件并修改权限

touch /var/run/mysql/mysqld.pid

chown mysql.mysql /var/run/mysql/mysqld.pid

再启动MySQL

(2)Plugin 'FEDERATED' is disabled

‘mysql.plugin’不存在的原因是因为新安装的mysql服务后,一般需要执行数据库初始化操作 ,从而生成与权限相关的表,执行命令如下:

/usr/bin/mysql_install_db --user=mysql

如果执行成功刚刚的命令当然是最好的,如果报出了以下错误:

 

解决方法是:安装autoconf

yum -y install autoconf

接着执行数据库开启命令,就会成功啦!!!

service mysql start

3Error: Failed while fetching Server version! Could be due to unauthorized access.

MySQL更新版本后要需要更新数据库,否则可能出现意外,使用命令:mysql_upgrade -u root -p出现错误提示:

26 、Granfana

yum install https://s3-us-west-2.amazonaws.com/grafana-releases/release/grafana-5.1.3-1.x86_64.rpm

systemctl start grafana-server

ps -ef | grep grafana                         #查看进程

ss -tnulp  | grep 3000                        #查看端口是否正常

grafana-cli plugins list-remote                  #列出所有插件

grafana-cli plugins update-all                  #更新所有

grafana-cli plugins install alexanderzobnin-zabbix-app # 安装插件

grafana-cli plugins install alexanderzobnin-zabbix-app   #安装插件

grafana-cli plugins install grafana-clock-panel          #安装插件

systemctl restart grafana-server                      #重启服务

ls /var/lib/grafana/plugins                            #列出插件目录 可查看已安装那些插件

 

具体配置过程可参照:https://blog.csdn.net/bbwangj/article/details/81109615

 

26、Java

下载地址:

http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

tar zxvf jdk-8u121-linux-x64.tar.gz

yum install glibc.i686

Vim /etc/profile

#Java Env

export JAVA_HOME=/usr/jdk1.8.0_121

export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

export PATH=$PATH:$JAVA_HOME/bin

source /etc/profile

java -version

 

 

 

 

 

 

 

 

 

 

 

 

 

 

27、宝塔

https://www.bt.cn/

1.查看面板入口:/etc/init.d/bt default

2.关闭安全入口:rm -f /www/server/panel/data/admin_path.pl

 

28、私服

需要java环境

wget http://www.sonatype.org/downloads/nexus-latest-bundle.tar.gz

tar -xf nexus-latest-bundle.tar.gz

cd nexus-2.14.11-01/

环境变量修改#

          export RUN_AS_USER=root

export JAVA_HOME=/usr/local/software/jdk1.8.0_66

export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.ja

export PATH=.:$JAVA_HOME/bin:$RUN_AS_USER:$PATH

刷新环境变量:source /etc/profile

cd bin/

 ./nexus start

界面管理

3rd partySnapshotsReleases这三个,分别用来保存第三方jar、项目组内部的快照、项目组内部的发布版。

3、中央仓库自动更新索引

4、将第三方jar上传到nexus

5、上传之后搜索

这样基本maven私服就搭建完成了,并且上传了自己的jar包。

私服Nexus搭建完毕之后,由于网络原因,有时候会出现索引更新不了的问题,这里给出一种离线更新索引的方式。

https://blog.csdn.net/yuan_xw/article/details/60376651

29、C++

https://blog.csdn.net/yndu_13/article/details/82842408#21_gcc_820_12

 

 

 

 

 

 

30、Jumpserver

https://blog.csdn.net/hurryben/article/details/76985172

 

 

 

31、protobuf

安装包最新地址:https://github.com/protocolbuffers/protobuf/releases

 下载好安装包:protobuf-all-3.5.1.tar.gz

#安装依赖包

yum -y install autoconf automake libtool curl make g++ unzip gcc-c++ glibc-headers

#解压

tar  -zxvf  protobuf-all-3.5.1.tar.gz

#移动到/usr/local下

mv  protobuf-all-3.5.1  /usr/lcoal

cd /usr/local/protobuf-all-3.5.1

#编译安装

./configure                  

make        #比较久  半小时左右

make check

make install

#检查是否安装成功

protoc  --version

 

32 zlib  

安装包地址:https://zlib.net/

 安装包:zlib-1.2.11.tar.gz

#解压移动到安装目录

tar  -zxvf  zlib-1.2.11.tar.gz

mv   zlib-1.2.11  /usr/local

cd    /usr/local/ zlib-1.2.11

#编译安装

./configure

make    

make check  #检查,要全部为yes

make install

 

33.GDB

gdb是Linux环境下的代码调试工具

1.yum安装一步  yum -y install gdb

2.源码安装

安装地址:http://ftp.gnu.org/gnu/gdb

wget http://ftp.gnu.org/gnu/gdb/gdb-8.0.1.tar.gz

tar  -zxvf   gdb-8.0.1.tar.gz

cd gdb-8.0.1

./configure

make

make install

gdb   -v

 34:vnc

1、查看本机是否已经安装vncserver
# rpm -qa|grep tigervnc
2、安装vncserver
# yum -y install tigervnc-server
3、启动并设置vncserver密码
在第一次启动vncserver会提示输入密码,之后就需要使用vncpasswd命令
# vncserver
Password:
Verify:
4、修改/root/.vnc/xstartup文件
由于我们这里使用的centos系统,安装的是gnome桌面
# sed -i 's/twm &/gnome-session &/' /root/.vnc/xstartup

 35:vm_tools

yum -y install perl
mkdir /media/mnt
mount /dev/cdrom /media/mnt
cp /media/mnt/VMwareTools-9.4.10-2068191.tar.gz /tmp
cd /tmp
umount /dev/cdrom
tar zxvf VMwareTools-9.4.10-2068191.tar.gz
cd vmware-tools-distrib
./vmware-install.pl
posted @ 2019-03-07 18:44  舍&得  阅读(1095)  评论(0编辑  收藏  举报