linux 生成ssl证书签名及nginx https部署

零、一句话概要

1.生成私钥

1
openssl genrsa -aes256  -out www.test.com.key 2048

根据提示输入4~1024位的密码(密码安全提示:同时包含大小写字母数字及特殊符号长度8位以上)

2.生成请求文件

1
openssl req -new -key www.test.com.key -out www.test.com.csr

输入国名CN,组织名字等字段,Common Name填写要提交签名的域名(全域名例如:dev.test.com)密码可以留空

3.提交www.test.com.cer给CA签名,CA签名后会返回给你经过签名的pem文件,可以放在服务器上开启https访问

4.配置Nginx服务器

21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# HTTPS server
 
server {
    listen 443 ssl;
    server_name home.we029.com;
 
    ssl_certificate /foo/bar/www.test.com.pem;
    ssl_certificate_key /foo/bar/www.test.com.key;
 
    ssl_session_cache shared:SSL:1m;
    ssl_session_timeout 5m;
 
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
    ssl_prefer_server_ciphers on;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
 
    location / {
        root /var/www/html;
        index index.html index.htm index.php;
   }
}

5.私钥去除密码保护

1
openssl rsa -in www.test.com.key -out www.test.com.unpass.key

根据需要选择服务器上配置的私钥是否加密,修改4 中的ssl_certificate_key 即可。如果是加密的私钥在服务器每次启动时需要输入密码(安全小贴士:如果私钥要脱密建议在独立的服务器上使用,私钥可以用来解密数据,私钥一旦泄露,相当于无秘可守,如果使用阿里云,腾讯云等云平台,相当于你的所有数据母鸡上都能看到,不建议关键的私钥脱密上传到云上,当然测试是没有问题,还有一点,最好不要多个站点共用私钥,最好每个域名一个私钥,然后用不用的私钥生成csr去让CA签名) 继续阅读

发表在 未分类 | linux 生成ssl证书签名及nginx https部署已关闭评论

Windows 构建部署 hadoop 2.7.3 环境 (一) single node

零  开篇词

为什么要搭建windows下的hadoop环境?对于我而言,家中有数台PC,服务器,甚至还有树莓派等设备,操作系统也是五花八门,由于windows的机器是付费正版化的,所以为了保护投资而不统一安装Linux。顺带说一句其实对于专业人员来说,windows近些年的产品如windows7, windows10,以及windows server 2008和之后的版本也还是不错的,没有什么大问题。通过查阅hadoop的官方文档,了解到最新的版本hadoop可以支持windows并且不再需要cygwin,也就是windows也可以在产品中使用。通过官方的手册的指导,经过50+小时漫长难熬的夜晚的探索之后,终于跑出了第一个demo,在此记录下构建的过程和遇到的坑,以减少后来人再掉坑里的可能。

本文描述如何通过源代码在windows10下构建部署hadoop以及使用single node运行第一个demo。 继续阅读

发表在 hadoop | Windows 构建部署 hadoop 2.7.3 环境 (一) single node已关闭评论

部署个人博客程序wordpress

本文将描述基于php和mysql的博客程序wordpress的安装和部署,服务器环境的配置请参考

http://www.we029.com/?p=193

首先利用配置MySQL环境测试一节中说到的方法,打开mysql的cmd窗口,输入以下命令创建wordpress的数据库:

create database wordpress;

然后下载最新的中文版wordpress程序,下载地址: 继续阅读

发表在 未分类 | 部署个人博客程序wordpress已关闭评论

Windows下Apache Httpd + php + MySQL安装

(由于编辑器问题,请在使用本文代码,配置等时注意替换掉其中的中文全角标点符号,如,‘   “ 等等)

一、Apache Httpd 安装

Apache Httpd 在系统中起到处理客户端HTTP请求的作用

1.下载apache httpd

apache 官方目前不再提供windows已经编译好的binary文件,建议使用源代码本地编译,如果有能力推荐使用VC11本地编译(为什么用VC11?本文描述的是PHP作为apache httpd的一个模块来启动,故而和PHP保持一致,稍后会谈到PHP的),本文将使用第三方编译好的二进制模块,下载地址: 继续阅读

发表在 未分类 | Windows下Apache Httpd + php + MySQL安装已关闭评论

新环境上线

BURSTNET跑路了,消失的非常干净,然后就给我留下一个接手人还有一个干净的不像话的服务器,所有的环境都要从头搭建。博客首先恢复,其他网站努力恢复中。

发表在 服务器 | 新环境上线已关闭评论

关于atoi的一个坑

先说一下环境:
1.windows 7   32bit ,vs2005

问题的现象:

是一个关于两个ip计算是否是同一个网段的问题,ip和掩码均使用字符串保存的32位无符号整型,在计算的时候使用atoi转换成整型,然后使用&与运算计算两个ip是否在同一网段,但是却将同一网段的两个ip计算成两个不同网段的ip,详细见代码: 继续阅读

发表在 未分类 | 关于atoi的一个坑已关闭评论

Linux 下windows分区中文本乱码问题的解决(gnome)

本文基于Fedora16,可以适用于ubuntu等多个发行版本

出现这个问题的主要原因是windows下的默认文件编码格式和部分Linux默认的文本编码格式不同导致。

在WINDOWS下,文本文件的中文默认编码是GB18030(或者GB2312,当你在保存的时候选择ascii编码时),当然也可以选择utf-8的编码(在保存的时候选择unicode)。
在早期的时候(大概是fedora12以前吧),fedora默认的中文编码格式是GB18030的,后来的版本采用了UTF-8的默认编码格式,所以在vim,gedit的默认检测编码中就只有UTF-8,ISO-8859-1 等所以无法自动检测到 GB2312,GBK,GB18030等字符编码。

首先检查你的linux所使用的文件编码格式:

echo $LANG

如果看到  zh_CN.UTF-8   那么恭喜你,你应该继续看下去,如果是GB系列的那么你应该和windows不会有什么乱码,当然如果有的话你可以继续看下去 继续阅读

发表在 linux | Linux 下windows分区中文本乱码问题的解决(gnome)已关闭评论

情人节快乐!

给大家分享一个HTML5“画”出来的玫瑰,(转自CSDN)

发表在 未分类 | 情人节快乐!已关闭评论

C语言 转换10进制数字到26进制(EXCEL 列名)

前两天项目用到一个将10进制的索引号转换成EXCEL 列名的问题 以下做个小工具专门 做转换,上代码:

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
/*****************************************
 * filename:itoletter.c
 * description: convert the index 10 based (start from 1) to 26 based letter
 *author:Dave Ning
 * date:Sep 24 2011
 * ****************************************/
#include <stdio.h>
#include <assert.h>
#include <string.h>
#include <stdlib.h>
 
//#define char unsigned char
char * reverse(char * str, size_t len);
char * convert(unsigned int index,char *letter)
{
 assert( letter != NULL);
 
 char list[] = {'Z','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O'
 ,'P','Q','R','S','T','U','V','W','X','Y','Z'};
 char buffer[200] = {0};
 
 unsigned short pos = 0;
 
 //if (index == 0)
 //{
 //可以增加针对输入为0的参数的处理(EXCEL中编号从1开始)
 //}
 
 while(0 != (index / 26))
 {
 buffer[pos] = list[index % 26];
 ++pos;
 index = (index - 1) / 26;           
 }
 
 if(index != 0)
 {
 buffer[pos] = list[index];
 }
 
 return strcpy(letter,reverse(buffer,strlen(buffer)));
 
}
 
char * reverse(char * str, size_t len)
{
 assert(str != NULL);
 
 char tmp = '0';
 
 for(size_t i = 0; i < len / 2; ++i)
 {
 tmp = str[i];
 str[i] = str[len - i - 1];
 str[len - i - 1] = tmp;
 }
 
 return str;       
}
 
int main(int argc, char *argv[])
{
 if(argc == 1)
 {
 printf("Usage:\n\titoletter index\te.g: itoletter 26 \
 \n\tby Dave Ning\n");
 return 0;
 }
 
 int i = atoi(argv[1]);
 char letter[200] = {0};
 convert(i, letter);
 printf("the %d letter is :%s\n",i,letter);
 return 0;
}

运行结果截图 : 继续阅读

发表在 未分类 | C语言 转换10进制数字到26进制(EXCEL 列名)已关闭评论

fedora15 内核更新到2.6.40-4时 broadcom 无线网卡 wl驱动失效的解决

硬件: dell vostro 3400 (网卡是broadcom BCM 43224)

驱动:broadcom 官方驱动(http://www.broadcom.com/support/802.11/linux_sta.php)自行编译

内核:2.6.40-4-fc15

昨晚上系统更新,内核更新到2.6.40-4,今天早上如同往常般编译无线网卡驱动,一切正常。但在modprobe wl 之后,network-manager上却没有出现无线网卡的图标,经过查找,发现是bcma模块阻塞了其他的几个驱动。

目前该BUG 已报告,在2.6.40-6中被修复(https://bugzilla.redhat.com/show_bug.cgi?id=727796)

解决方法:卸载掉bcma模块,重新载入wl模块

1
2
3
4
5
rmmod wl
rmmod bcma
modprobe wl
 
参考链接:http://forums.fedoraforum.org/showthread.php?p=1501352
发表在 未分类 | 5条评论