服务器专业维护服务

本站承接Linux Windows服务器代维服务,另出售DirectAdmin/Cpanel/whmcs/hostbill/solusvm软件授权,代购各种美国服务器VPS,代付外币账单。

阅读剩余部分...

各系列BGP路由配置实例

Cisco router traditional bogons

This page aggregates all of the examples referenced on the Bogon Route Server Project (Bogons via BGP) page.Please see that page for full details of the Bogon Route Server Project,system requirements, caveats, etc.

 router bgp <your asn>
 neighbor x.x.x.x remote-as 65333
 neighbor x.x.x.x ebgp-multihop 255
 neighbor x.x.x.x description <your description>
 neighbor x.x.x.x prefix-list cymru-out out
 neighbor x.x.x.x route-map CYMRUBOGONS in
 neighbor x.x.x.x password <your password>
 neighbor x.x.x.x maximum-prefix 100 threshold 90
! You'll need to increase the maximum to at least 50000 with an
! appropriate thresholds if you're receiving one or both fullbogons
! feeds.
!
! Depending on IOS version, you may need to configure your router
! for new-style community syntax.
ip bgp-community new-format
!
! Set a bogon next-hop on all routers that receive the bogons.
ip route 192.0.2.1 255.255.255.255 null0
!
! Configure a community list to accept the bogon prefixes into the
! route-map.
ip community-list 10 permit 65333:888
!
! Configure the route-map.  Remember to apply it to the proper
! peering sessions.
route-map CYMRUBOGONS permit 10
 description Filter bogons learned from cymru.com bogon route-servers
 match community 10
 set ip next-hop 192.0.2.1
!
ip prefix-list cymru-out seq 5 deny 0.0.0.0/0 le 32

阅读剩余部分...

Linux安装配置samba

yum update
yum install -y samba samba-client samba-common cifs-utils

smb.conf的配置例子如下

 #cat  /etc/samba/smb.conf
 [global]
 workgroup = WORKGROUP
 server string = x200
 dns proxy = no
# interfaces = eth0
 syslog = 0
 browsable = yes
 map to guest = bad user
 nt pipe support = no
 encrypt passwords = true
 passdb backend = tdbsam
 obey pam restrictions = yes
 unix password sync = no
 netbios name = MY_SHARE_SERVER

#== Share Definitions ===
[share]  
path = /opt/share_folder
valid users=share_user
directory mask = 0755
create mask = 0664
writable = yes
guest ok = no
read only = no
public = no

配置好smb.conf后需要创建目录和设置用户密码

useradd share_user #创建Linux用户
mkdir /opt/share_folder #创建目录
chown -R share_user:share_user  /opt/share_folder #设置文件夹归属权限
chmod 755 /opt/share_folder    #设置文件夹读写权限
smbpasswd -a share_user #设置密码

最后启动smb后测试。

Linux挂载Samba

默认情况直接个mount -t cifs进行挂载,如使用mount.cifs的需要先安装cifs-utils

yum install cifs-utils -y
mount -t cifs -o username="Username",password="Password" //IP/share /mnt/
umount /mnt/

使用mount.cifs挂载

mount.cifs -o username="Username",password="Password" //IP/share /mnt/
umount.cifs /mnt/

加入fstab开机自动挂载需要将账号密码等参数写入一个文件

#cat /opt/pass.txt
username=YOURusername
password=YOURpassword  

然后写入fstab的格式大致如下的最后一行

cat /etc/fstab
/dev/sda1/                       ext4    defaults        1 1
/dev/sda2               swap                    swap    defaults        0 0
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0
//IP/share    /mnt        cifs    credenials=/opt/pass.txt    0 0

  匿名登陆也是需要带username参数的,否则会报错。


Nginx location的匹配规则


   ~      波浪线表示执行一个正则匹配,区分大小写
   ~*    表示执行一个正则匹配,不区分大小写
   ^~    ^~表示普通字符匹配,如果该选项匹配,只匹配该选项,不匹配别的选项,一般用来匹配目录
   =      进行普通字符精确匹配
   @    #"@" 定义一个命名的 location,使用在内部定向时,例如 error_page, try_files

location 匹配优先级

   = 精确匹配会第一个被处理。如果发现精确匹配,nginx停止搜索其他匹配。
   普通字符匹配,正则表达式规则和长的块规则将被优先和查询匹配,也就是说如果该项匹配还需去看有没有正则表达式匹配和更长的匹配。
   ^~ 则只匹配该规则,nginx停止搜索其他匹配,否则nginx会继续处理其他location指令。
   最后匹配理带有"~"和"~*"的指令,如果找到相应的匹配,则nginx停止搜索其他匹配;当没有正则表达式或者没有正则表达式被匹配的情况下,那么匹配程度最高的逐字匹配指令会被使用。

示例

location  = / {
 # 只匹配"/".
 [ configuration A ]
}
location  / {
 # 匹配任何请求,因为所有请求都是以"/"开始
 # 但是更长字符匹配或者正则表达式匹配会优先匹配
 [ configuration B ]
}
location ^~ /images/ {
 # 匹配任何以 /images/ 开始的请求,并停止匹配 其它location
 [ configuration C ]
}
location ~* \.(gif|jpg|jpeg)$ {
 # 匹配以 gif, jpg, or jpeg结尾的请求.
 # 但是所有 /images/ 目录的请求将由 [Configuration C]处理.  
 [ configuration D ]
}


URL 重写
仅是URL重写,不需要用location匹配,直接在server里写rewrite即可。

Linux下chkconfig命令详解

chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息。谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接,在rhel7系后采用systemctl进行来管理。

使用语法:
chkconfig [--add][--del][--list][系统服务] 或 chkconfig [--level <等级代号>][系统服务][on/off/reset]

chkconfig在没有参数运行时,显示用法。如果加上服务名,那么就检查这个服务是否在当前运行级启动。如果是,返回true,否则返回false。如果在服务名后面指定了on,off或者reset,那么chkconfi 会改变指定服务的启动信息。on和off分别指服务被启动和停止,reset指重置服务的启动信息,无论有问题的初始化脚本指定了什么。on和off开关,系统默认只对运行级3,4,5有效,但是reset可以对所有运行级有效。

参数用法:
 

阅读剩余部分...

ssh跳板登录服务器

该篇内容仅适用于*nix环境,不适用windows。

有时候一些后端服务器或者设备没有开放直接对外登录的服务。
往往需要使用到代理或者从堡垒机转二次登录。
在使用过程中遇上需要直接拷贝传输文件会觉得非常蛋疼,这时候ProxyCommand就派上用场了

前景约定:  10.0.0.1 是我们的堡垒机  10.10.10.1是没有对外开放网络的后端服务器,登录凭证则最好是禁用密码使用rsa进行登录
普通情况,先在终端下运行 ssh 用户@10.0.0.1 登录成功后再次运行 ssh 用户@10.10.10.1 进行管理。
使用ProxyCommand的设置方法后登录则 ssh 用户@10.10.10.1 直接进入后端。

本地环境设置的内容大致如下:

cat ~/.ssh/config
Host 10.10.10.1
ProxyCommand ssh -p 22 用户@10.0.0.1 -W %h:%p 2>/dev/null

Host 10.10.10.2
ProxyCommand ssh -p 22 用户@10.0.0.1 -W %h:%p 2>/dev/null

centos编译nginx

以下是自用的nginx编译归纳

yum安装常用包

yum -y update
yum -y install epel-release -y
yum install lua-devel git -y
yum -y --skip-broken install gcc  vim-enhanced gcc-c++ libtool-libs libtool autoconf subversion zip unzip  wget crontabs iptables file bison patch mlocate flex diffutils automake imake make cmake kernel-devel cpp zlib-devel

编译安装pcre

cd /tmp
wget -c http://sourceforge.net/projects/pcre/files/pcre/8.21/pcre-8.21.tar.gz/download -O -|tar xz
cd pcre-8.21
./configure
make && make install
if [ `uname -i` == x86_64 ]; then ln -s /usr/lib64/{libpcre.*,libjpeg.so,libpng.so,libXpm.so,libc-client.so,libkrb5.so,libexpat.so,libevent.so} /usr/lib/;fi

编译安装sregex

阅读剩余部分...

Centos编译安装Libressl

Libressl是openbsd发起的一个代替openssl的项目。

yum install  automake autoconf git libtool perl pod2man -y
git clone https://github.com/libressl-portable/portable libressl
cd  libressl
./autogen.sh
./configure
make check
make install

英文日期写法

英文日期分英式和美式,举例如下:
1) 8th March,2004 或8 March,2004(英式)
2) March 8th,2004 或March 8,2004 (美式)

日期写法宜遵从下列规则:
1)年份必须完全写明,不可用"04代替2004;
2)月份必须用英文拼出或采用公认的简写,即 January (Jan.),February(Feb.),March(Mar.),April(Apr.),May,June,July,August(Aug.),September
(Sept.),October(Oct.),November(Nov.),December(Dec.);
3)日期可用序数词,如:1st,2nd,3rd,4th,...;也可用基数词,如:1,2,3,4,...。但美式大多采用后者;
4)在年份和月日之间必须用逗号隔开;

阅读剩余部分...

RHEL/CentOS安装Observium

原文地址http://docs.observium.org/install_rhel7/

官方写的文档很清楚,纯粹为了抄过来做个记录。

Observiun整体就是php mysql libvirt fping这几个基础。

阅读剩余部分...

Centos yum安装powerdns全家桶

CentOS 6

The following repositories are available:

PowerDNS Authoritative Server - version 4.0.X

Execute the following command
yum install epel-release yum-plugin-priorities
curl -o /etc/yum.repos.d/powerdns-auth-40.repo https://repo.powerdns.com/repo-files/centos-auth-40.repo
yum install pdns
 

阅读剩余部分...

juniper EX系列交换机tcpdump命令

SUMMARY:

阅读剩余部分...

Centos安装PF_RING和ntopng

Centos6 安装

cd /etc/yum.repos.d/
wget http://packages.ntop.org/centos/ntop.repo -O ntop.repo
wget https://copr.fedoraproject.org/coprs/saltstack/zeromq4/repo/epel-6/saltstack-zeromq4-epel-6.repo
rpm -ivh http://packages.ntop.org/rpm6/extra/hiredis-0.10.1-3.el6.x86_64.rpm  http://packages.ntop.org/rpm6/extra/hiredis-devel-0.10.1-3.el6.x86_64.rpm

yum install -y epel-release
yum erase zeromq3     #(Do this once to make sure zeromq3 is not installed)
yum clean all
yum update
yum install pfring n2disk nprobe ntopng ntopng-data cento

Centos7 安装

yum install -y epel-release
yum erase zeromq3     #(Do this once to make sure zeromq3 is not installed)
yum clean all
yum update
yum install pfring n2disk nprobe ntopng ntopng-data cento

git获取源码安装pf_ring

git clone https://github.com/ntop/PF_RING.git
cd PF_RING/kernel
make
sudo insmod ./pf_ring.ko
cd ../userland
make

git获取源码安装nDPI

git clone https://github.com/ntop/nDPI.git
cd nDPI
./configure –with-pic
make

 




以上内容引用自:http://packages.ntop.org/centos/

Centos7 磁盘分区表 MBR 和 GPT

MBR(Master Boot Record)

最大只支持 2 TB 的盘,最多只支持 4 个主分区
信息只存储在一个区域

GPT(GUID partition table)
是 MBR 的替代,属于 UEFI,磁盘的每一个分区都有唯一的识别号,支持更大的盘和更多的分区
信息存储在多个区域,当一部分受损后可修复

当 GPT 分区的盘在老的只支持 mbr 的工具下查看时,也会读到分区信息,只不过看到的是只有一个分区,这是为了防止用户误认为盘是空盘。

当大于 2TB 盘安装安装 CentOS 7 时报错

1
Your BIOS-based system needs a special partition to boot from a GPT disk label. To continue, please create a 1MiB 'biosboot' type partition

对于这个问题,解决办法是在 kickstart 文件中添加

part biosboot --fstype=biosboot --size=1

转载自:http://jpuyy.com/2015/08/mbr-and-gpt.html

kexec快速切换内核

kexec是一个用于在当前系统下快速切换到另一个内核的一种办法,它采用了一定的机制略过了硬件的初始化,所以切换速度会很快。

自2.6.13以后,Linux内核就已经自置了kexec,而Debian采用的内核已经是2.6.26,而且默认就支持kexec,所以在Debian下我们只要安装kexec-tools就行了。

$ yum install kexec-tools
$ sudo apt-get install kexec-tools

安装好以后,就可以开始加载其他的内核了。
先看看我有哪些内核可以用:

阅读剩余部分...