CentOS7配置路由转发

本文 PDF 版本:CentOS7配置路由转发.pdf

1.前言

在这篇文章,少延给大家介绍路由转发,作用是将一个网段数据报文转发到另一个网段啦。
为什么我要做路由转发?原因是,我使用台式机电脑跑虚拟机,为了方便笔记本连接虚拟机的IP。
我虚拟机NAT IP网段是和笔记本IP是不同网段的。当然,虚拟机系统配置网卡桥接,IP就同一个网段了。
那是可以直接连接的,但是台式机放在公司了,为了不节省公司网络IP(我总不能一个人占太多IP吧),所以需要配置一下转发。

作为转发机,是需要有两个网卡,一个设置NAT IP,一个设置桥接IP。

proxy-forward

2.转发机配置

开启转发:添加 net.ipv4.ip_forward = 1 到 /etc/sysctl.conf ,执行 sysctl -p 生效。
转发机是充当路由转发。使用iptables 或者 firewall 配置,都是可以的。选一种就行。

H3C S5820二层端口聚合

本文 PDF 版本:H3C S5820二层端口聚合.pdf

0.前言

参考文档:

实验目标:实现sw1 Ten-GigabitEthernet1/0/49~52 4个万兆端口聚合,与 sw2 Ten-GigabitEthernet1/0/49~52 聚合后相连。
实验拓扑:两台H3C S5820 交换机。如下图,先不接线,把聚合配置完,才能接线。线务必后接,防止环路。

aggregation-1.png

let's encrypt免费ssl证书部署

本文 PDF 版本:let’s encrypt免费ssl证书部署.pdf

0.前言

单域名证书使用 certbot 工具生成:https://certbot.eff.org/
通配符证书使用 acme.sh 脚本生成:https://github.com/Neilpang/acme.sh

1.单域名证书部署

1.1.安装依赖

1
2
3
4
5
6
# cat /etc/redhat-release  # 查看系统版本
CentOS Linux release 7.1.1503 (Core)
# 打开 https://certbot.eff.org/ 选择对应版本。这里是nginx + centos7
# yum -y install yum-utils # 按照依赖
# yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional
# yum install python2-certbot-nginx # 安装插件

1.2.生成证书

certbot 工具生成证书:

  • 域名不能是顶级,必须有前缀,比如可以是www.xsy.me,但不能是xsy.me
  • 需要给域名添加解析,生成证书过程中会访问一个URL,URL链接是由工具在网站目录生成子目录,外加随机码组成,如果访问正常,那就证明这个域名是你的,可以给域名颁发证书。
  • 如果服务器有nginx或其他web服务监听80端口了,可以使用下面方法一,没有web服务,就用了方法二。

方法一: 配置 nginx 插件,并生成证书。这两参数知道配置路径及nginx命令路径

1
# certbot --nginx-server-root /usr/local/nginx/conf --nginx-ctl /usr/local/nginx/sbin/nginx

方法二:指定域名网站目录,生成证书

1
# certbot certonly --webroot -w /data/www/chopper/frontend/public

方法三:服务器没有跑web服务,也是可以生成的。这种方法工具会启动自带的web服务,如果80被占用了,命令会失败

1
# certbot certonly --standalone

不管哪个方法,刚开始的时候,都会要填一个邮箱接收通知,以及同意协议。

快速传送大数据

远程拷贝数据的时候,我们一般使用rsync命令,但是如果拷贝大量的小文件,会导致rsync的传输速度慢。使用tar pv lz4打包压缩传输,可以解决这问题,使用这个方法,等同于使用scp、rsync传输大文件。

实测,使用rsync传输1200G,单个文件大小为几十KB~2GB,千兆网卡,需要同时跑6个rsync才能把带宽跑满,每个速度20MB左右,速度波动大。每分钟可以拷贝4.5GB左右。
但是,使用tar pv lz4,跑一个就可以了,而且速度波动小。每分钟可以拷贝6.8GB左右。

Python实用小技巧

0.前言

在这里,少延给大家分享一些,学习 python 过程中,使用到的实用小技巧,希望对有需要的朋友有所帮助。

1.创建指定python版本的虚拟环境

这里系统环境是Ubuntu。

  • 先更新 pip
    1
    2
    3
    4
    5
    6
    7
    8
    root@xsy:~# pip install --upgrade pip
    Collecting pip
    Downloading pip-9.0.1-py2.py3-none-any.whl (1.3MB)
    100% |████████████████████████████████| 1.3MB 4.7kB/s
    Installing collected packages: pip
    Found existing installation: pip 8.1.2
    Not uninstalling pip at /usr/lib/python2.7/dist-packages, outside environment /usr
    Successfully installed pip-9.0.1

Ubuntu开机自动更新SVN仓库

基本上是每次开机就要更新 SVN 仓库,所以偷个懒,进入系统时自动更新一下。

编写更新脚本:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
yan@chmod:~$ cat .svn_up.sh 
#!/bin/bash

# update coding
cd ~/1-svn/coding
echo '############### starting update coding... ####################' >>~/svn_update.log
svn up >>~/svn_update.log
echo -e `date "+%Y-%m-%d %H:%M:%S"` ' 更新 coding 完成\n' >> ~/svn_update.log

# update doc
cd ~/1-svn/doc
echo '------------------ starting update doc... ---------------------'>>~/svn_update.log
svn up >>~/svn_update.log
echo -e `date "+%Y-%m-%d %H:%M:%S"` ' 更新 doc 完成\n' >> ~/svn_update.log
cd ~

开机登录用户时调用脚本

1
yan@chmod:~$ echo '/bin/bash /home/yan/.svn_up.sh' >> .profile

Redis未授权访问漏洞

本文 PDF 版本:Redis未授权访问漏洞.pdf

0.漏洞描述

Redis 默认情况下,是不设置认证密码,监听0.0.0.0:6379。用户可以在任意客户端访问 Redis,通过对 Redis 的操作,可以修改系统重要文件。

4.x.x版本看到已经把默认监听改成127.0.0.1:6379

1.漏洞形成的原因

  • Redis 无密码或者使用了弱密码
  • Redis监听在0.0.0.0:6379
  • Redis 服务使用 root 账户运行

2.漏洞危害及常见的攻击方法

  • Redis 数据库中的数据泄露或被恶意删除
  • 修改服务器的重要文件,控制 Redis 服务器
    • 上传公钥到 /root/.ssh/authotrized_keys 文件,实现免密码登录服务器
    • 修改定时任务cron,实现反弹 shell
  • 配合 SSRF 进行自动化的蠕虫攻击

Ubuntu17.04软件推荐和一些设置

0.前言

把系统更换成kubuntu 17.04后,安装了一系列软件。在这里简单记录一下。有需要的可以参考。

安装的软件如下:

  • filezilla :FTP 客户端工具
  • 安装 Git:代码版本管理工具
  • 安装 SVN :代码版本管理
  • 搜狗拼音输入法
  • wps office :办公软件
  • 为知笔记:笔记管理软件
  • pycharm:Python IDE 开发工具
  • VMware workstation :虚拟机
  • virtualbox :虚拟机
  • calibre :电子书管理软件,可以支持十多种电子书格式
  • sublime :文本编辑器
  • Gnome Connection Manager 代替 Xshell :管理 ssh 连接的工具
  • 虚拟机上安装 win7 系统:安装 亿图、office 、qq、PHPCodeLock、百度云、迅雷、火车头、svn、京东阅读、sitemapx、Beyond Compare 3等软件工具
  • teamviewer 远程控制