Author: gongdeyang168

内网后端服务器通过Squid代理方式yum更新

场景描述:后端RDS、Hadoop集群是与外网物理隔离的,需用到yum公共源解决一些软件安装依赖;
原理:通过squid代理来间接yum安装或更新相关组件;
(1)、在拥有公网访问权限的服务器上执行:
# yum install squid  #因是一次性使用,为图便捷采用yum安装
# cp /etc/squid/squid.conf /etc/squid/squid.conf_bak
# vim /etc/squid/squid.conf
 通过搜索找到http_access deny all将其修改为http_access allow all
http_port 3128修改为http_port LAN_IP:3128
# squid -k parse
# squid -z
# service squid start    #以上三步为启动squid 代理过程
# netstat -nlpt    #确认启动状态和监听端口
# iptables -A INPUT -m state –state NEW -m tcp -p tcp -s LAN网段 –dport 22 -j ACCEPT    #须在便捷和安全性方面做权衡
或是iptables -A INPUT -i bond0 -j ACCEPT    #太多时候,我们对内网是完全放行(可信)。
(2)、在不能访问外网的机器上执行:
# export http_proxy=http://LAN_IP:3128    #临时有效
# echo “proxy=http://LAN_IP:3128” >> /etc/yum.conf    #永久有效
# yum update    #验证

CentOS6配置CollabNet Subversion Edge

1、安装jdk并配置环境变量(略)
2、安装python
# tar -zxf Python-3.6.2.tgz
# cd Python-3.6.2
# ./configure
# make
# make install
3、安装Subversion Edge
3.1、建立svn用户组和成员csvn,并为csvn设置密码
# groupadd svn
# useradd -g svn csvn
# passwd csvn
3.2、赋予csvn用户sudo权限
# vim /etc/sudoer或# visudo
## Allow root to run any commands anywhere
root    ALL=(ALL)       ALL
后添加
csvn    ALL=(ALL)       ALL
## Same thing without a password
%svn        ALL=(ALL)       NOPASSWD: ALL
赋予用户csvn sudo权限
强制保存并退出
3.3、创建存放Subversion Edge安装文件的目录并赋权
# mkdir /data/subversion;chown -R csvn:svn /data/subversion
3.4、下载安装包
3.5、解压缩
# tar zxf CollabNetSubversionEdge-5.2.2_linux-x86_64.tar.gz
# mv csvn/ /data/subversion
3.6、配置csvn(#root用户下执行)
# chown root:svn /data/subversion/csvn/lib/httpd_bind/httpd_bind
# chmod u+s /data/subversion/csvn/lib/httpd_bind/httpd_bind
# cd /data/subversion/csvn
# sudo bin/csvn-httpd install   #svn服务端
# sudo -E bin/csvn install   #web页面
3.7、启动
# cd bin/
# sh csvn start    #启动
#如果使用start启动失败,可以使用
# sh csvn console #此命令会在控制台输出启动日志,便于排查。
如果做完上述操作,还不可以远程访问,检查iptables规则
http://ip:3343/csvn
默认账号密码:admin/admin
登陆OK就可创建用户和版本库并给创建的用户选择角色等,都是通过web界面设置,很简单故本文略过。

Linux下使用yum快速升级安装gcc编译器

场景描述:
    nodejs环境,安装模块(用于处理csv乱码)过程中,因其版本太新,而CentOS 6.9默认安装的gcc版本不满足需求(gcc版本在4.7+才支持C++11编译器,而系统默认最新版本4.4.7 ),出现如下报错:
#error This version of node/NAN/v8 requires a C++11 compiler
由于编译安装gcc耗时太长,所以采用yum安装。
# wget http://people.centos.org/tru/devtools-2/devtools-2.repo -O /etc/yum.repos.d/devtools-2.repo
# yum install devtoolset-2-gcc devtoolset-2-binutils devtoolset-2-gcc-c++ devtoolset-2-gcc-gfortran
# export CC=/opt/rh/devtoolset-2/root/usr/bin/gcc export
# CPP=/opt/rh/devtoolset-2/root/usr/bin/cpp export
# CXX=/opt/rh/devtoolset-2/root/usr/bin/c++
# ln -s /opt/rh/devtoolset-2/root/usr/bin/* /usr/local/bin/
退出当前会话,重新ssh后验证:
# gcc –version

KVM虚拟化实践入门之安装部署篇

一、硬件环境检测
grep -E –color ‘vmx|svm’ /proc/cpuinfo
有输出代表cpu支持
2、软件包安装
yum install qemu-kvm qemu-img libvirt-python python-virtinst libvirt-client virt-viewer bridge-utils—>少了一些组件
也可yum groupinstall -y Virtualization “Virtualization Client” “Virtualization Platform” “Virtualization Tools”
使用桥接网络安装bridge-utils包
yum -y install bridge-utils

Continue reading »

Nginx应用实践入门之安装部署篇

CentOS release 6.9 (Final) -x64 Bit
Kernel Version:2.6.32-696.3.2
1、安装所需库,如gcc编译器(GNU编译器套件,编译必选)、C++编译器(用来编译Nginx的http模块)、pcre库(perl兼容正则表达式,使Nginx支持具备URL地址重写功能的rewrite模块,企业应用必须)、zlib库(对HTTP包内容做gzip压缩)、openssl开发库(若服务器要支持在SSL协议上传输http需要用到)

Continue reading »

安装网络流量监控工具vnstat

工具简介:
    vnstat是一个基于控制器的网络流量监控工具,针对Linux和BSD设计,它可以保留某个或多个所选择的网络接口的网络流量日志并可生成PNG图形,支持多个输出选项可按小时、天、月、周来排序数据,它并非基于网络包嗅探(所以占用系统资源较少),而是通过分析系统文件/proc得出数据。

Continue reading »

OpenVPN密钥、用户配置文件生成脚本(shell)

OpenVPN.sh内容(密钥生成脚本):

#!/bin/bash
##1、client.conf.mod为配置文件模板,其中的ip段是需要手动修改的,暂无法实现自动获取(考虑到服务器不止一张网卡且一般配置>=2个ip)。
##2、脚本在上传服务器后请赋予执行权限,与client.conf.mod位于相同目录内;
##3、调用pkitool生成密钥,./openvpn.sh后会提示输入密钥名称,操作完成后回车,脚本运行成功后将在当前目录看到.tar格式的压缩包,里面含有我们所需的全部文件;
##4、生成的证书、配置文件以CLIENTNAME命令。

##设置变量#######
export CUD=`pwd`;#当前路径
export SERVERCONFDIR=/etc/openvpn; #openvpn配置文件存放目录
export OPENVPNCADIR=/etc/openvpn/; #证书文件存放目录
export CAVARSFILE=vars; #生成证书所需的环境变量脚本
export SERVERNAME=vpnserver; #证书 server common name
if test ! -d $OPENVPNCADIR; then
echo “Please copy the \”easy-rsa\” to $OPENVPNCADIR ” && exit 0
fi
read -p “Please input the client common name : ” -t 60 CLIENTNAME #客户端证书的Client common name,如gongdeyang
test -z $CLIENTNAME && echo “You MUST input the client common name . ” && exit 0
export CLIENTNAME
######生成客户端证书文件###########
cd $OPENVPNCADIR/easy-rsa
. ./$CAVARSFILE;
if test ! -e keys/$CLIENTNAME.crt; then
. ./$CAVARSFILE;
./pkitool $CLIENTNAME;
fi

##############生成吊销证书文件################
if test ! -e keys/crlclient.crt; then
./pkitool crlclient
./revoke-full crlclient
cp -rf –reply=yes $OPENVPNCADIR/easy-rsa/keys/crl.pem $SERVERCONFDIR/;
fi

#####为每个客户端证书文件 生成配置文件并打包各个证书#####
cd $CUD;
cp -rf client.conf.mod $CLIENTNAME.ovpn;
echo “cert $CLIENTNAME.crt” >>$CLIENTNAME.ovpn;
echo “key $CLIENTNAME.key” >>$CLIENTNAME.ovpn;
cp -rf $CLIENTNAME.ovpn $SERVERCONFDIR/;
cp -rf $OPENVPNCADIR/easy-rsa/keys/$CLIENTNAME.crt $SERVERCONFDIR/;
cp -rf $OPENVPNCADIR/easy-rsa/keys/$CLIENTNAME.key $SERVERCONFDIR/;
cd $SERVERCONFDIR;
tar -cf $CLIENTNAME.tar $CLIENTNAME.ovpn ca.crt $CLIENTNAME.crt $CLIENTNAME.key;
if test ! -e $CUD/$CLIENTNAME.tar ; then
mv $CLIENTNAME.tar $CUD
fi
rm -rf $CLIENTNAME.*
cd $CUD
rm -rf $CLIENTNAME.ovpn

 

client.conf.mod内容(用户配置文件模板):

client
proto tcp
dev tun
remote 192.168.1.10 1194
#resolv-retry infinite
nobind
;user nobody
;group nobody
persist-key
persist-tun
ca ca.crt
;tls-auth ta.key 1
remote-cert-tls server
cipher AES-256-CBC
comp-lzo
verb 3
mute 20

 

部署Zabbix_agents_windows

1、软件包下载地址:http://www.zabbix.com/downloads/3.0.4/zabbix_agents_3.0.4.win.zip

2、本文尝试将Zabbix客户端安装到D盘根目录,先解压文件,然后用编辑器打开 d:\zabbix\conf\zabbix_agentd.win.conf

做如下修改后保存

LogFile=D:\zabbix\zabbix_agentd.log

Server=IP(Zabbix服务器端地址)

ServerActive=IP(Zabbix服务器端地址)

Hostname=IP(Zabbix服务器端地址)

3、以管理员身份打开cmd或powershell,输入如下命令将Zabbix添加为系统服务并设置自启动:

d:
cd D:\zabbix\bin\win32
zabbix_agentd.exe -c d:\zabbix\conf\zabbix_agentd.win.conf -i
zabbix_agentd.exe -c d:\zabbix\conf\zabbix_agentd.win.conf -s
4、以后如果想删除该服务,同时奉上命令:
d:
cd D:\zabbix\bin\win32
zabbix_agentd.exe -c d:\zabbix\conf\zabbix_agentd.win.conf -d

通过Zabbix监控IIS性能

脚本文件地址:git@github.com:gongdeyang195/zabbix_template_iis.git

描述: 关于IIS性能监控方面的Zabbix模板

测试适用环境: 基于Zabbix 3.0.X

1、将LLD_Web_Service.bat批处理文件放到Windows Server服务器的C盘根目录;

2、打开Zabbix客户端配置文件zabbix_agentd.win.conf,在末尾追加内容:

UserParameter=iis.site.discovery,C:\LLD_Web_Service.bat

3、将Template IIS Web Site for Zabbix-3.0.xml模板文件导入Zabbix后台;

4、重启zabbix客户端服务,在Zabbix后台将需监控对象指定该模板,数分钟内查看数据图形,如附图所见:

一种防范ExPetr(之前误认为是Petya变种)病毒的临时方法

据卡巴斯基实验室的最新调查分析结果,这一波席卷全球的勒索软件攻击并不是由一种Petya勒索软件的变种引起,而是一种之前从未见过的全新勒索软件,尽管这种勒索软件同Petya在字符串上有所相似,但功能却完全不同。暂时将这种最新威胁命名为ExPetr。

这似乎是一种复杂攻击,因为其采用了多种感染和攻击途径。可以确认的是,网络罪犯在攻击中使用了修改版的EternalBlue和EternalRomance漏洞利用程序,用于在企业网络内进行传播。如下是个人遍历安全报告梳理的临时防御方案。

1、解压文件,然后以管理员身份运行safe.bat;

2、在弹出的注册表编辑器对话框中选择是(Y);

3、安装最新操作系统补丁(即手动更新一次,单击我的电脑按右键-属性(R))—>然后打开对话框左下角的Windows Update—>检查更新—>安装更新。

附脚本内容:

1、safe.bat

cd C:\Windows
echo null>perfc.dat
cd /d “%cd%\”
safe.reg

2、safe.reg

Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest\]
“UseLogonCredential”=dword:0