海运的博客

使用OpenSSL转换X509 PEM与PFX证书

发布时间:February 9, 2013 // 分类:OpenSSL // No Comments

LinuxApacheNginx通常使用X509格式SSL证书,WindowsIIS使用PFX格式SSL证书,可以使用OpenSSL互转X509与PFX。
X509转PFX:

#http://www.haiyun.me
openssl pkcs12 -export -inkey www.haiyun.me.key -in www.haiyun.me.cer -out www.haiyun.me.pfx

PFX转X509:

openssl pkcs12 -in www.haiyun.me.pfx -nodes -out www.haiyun.me.pem 
openssl rsa -in www.haiyun.me.pem -out www.haiyun.me.key
openssl x509 -in www.haiyun.me.pem -out www.haiyun.me.crt 

Windows 2008下IIS7配置StartSSL免费证书

发布时间:February 9, 2013 // 分类:IIS,OpenSSL // No Comments

申请StartSSL免费SSL证书见:http://www.haiyun.me/archives/startssl-free-ssl.html,获取到证书私钥及公钥,然后生成IIS可导入的PFX证书。
1.使用StartSSL网页提供的PFX生成工具:
StartSSL生成IIS下PFX证书.png
2.使用OpenSSL转为PFX证书
然后在IIS管理器中导入生成的PFX证书并绑定到相应域名。

Openssl配合tar加密解密文件

发布时间:September 5, 2012 // 分类:OpenSSL // No Comments

单独使用openssll加密解密文件:

#http://www.haiyun.me
openssl aes-128-cbc -salt -k onovps -in file -out file.aes
#加密文件,-k后为密码
openssl aes-128-cbc -d -salt -k onovps -in file.aes -out file
#解密文件

使用tar压缩加密解密文件:

tar -zcf - directory | openssl aes-128-cbc -salt -k onovps -out directory.tar.gz.aes 
#tar打包加密文件
openssl aes-128-cbc -d -salt -k onovps -in directory.tar.gz.aes | tar -xz -f - 
#tar打包解密文件

也可使用gpg加密解密文件

Vsftpd配置SSL加密FTP数据传输

发布时间:August 17, 2012 // 分类:备份存储,OpenSSL // No Comments

FTP是互联网上广泛使用的文件传输协议,缺点是数据明文传输,在数据经过的节点上进行监听可轻易获取用户和密码,给安装带来诸多隐患,可使用SSL加密FTP连接。
先测试明文传输下用Tcpdump监听ftp用户名和密码:

tcpdump port 21 -nA
20:03:43.077038 IP 192.168.1.1.34453 > 192.168.1.4.21: Flags [P.], seq 21:34, ack 134, win 2920, length 13
E..5."@.@..J............k..3..(kP..hC...USER onovps
20:03:43.077506 IP 192.168.1.4.21 > 192.168.1.1.34453: Flags [P.], seq 134:168, ack 34, win 365, length 34
E..J.g@.@.................(kk..@P..m#...331 Please specify the password.
20:03:43.081218 IP 192.168.1.1.34453 > 192.168.1.4.21: Flags [P.], seq 34:47, ack 168, win 2920, length 13
E..5.#@.@..I............k..@..(.P..h:...PASS onovps
20:03:43.102350 IP 192.168.1.4.21 > 192.168.1.1.34453: Flags [P.], seq 168:191, ack 47, win 365, length 23
E..?.h@.@.................(.k..MP..m.8..230 Login successful.
20:03:43.103626 IP 192.168.1.1.34453 > 192.168.1.4.21: Flags [P.], seq 47:52, ack 191, win 2920, length 5
E..-.$@.@..P............k..M..(.P..h.L..PWD
20:03:43.104025 IP 192.168.1.4.21 > 192.168.1.1.34453: Flags [P.], seq 191:211, ack 52, win 365, length 20
E..<.i@.@.................(.k..RP..mt...257 "/home/onovps"

查看Vsftpd是否支持SSL:

#http://www.haiyun.me
ldd `which vsftpd`|grep ssl
libssl.so.0.9.8 => /usr/lib/libssl.so.0.9.8 (0x00007f18f8c0a000)

生成SSL证书:

openssl req -new -x509 -nodes -out vsftpd.pem -keyout vsftpd.pem
chmod 400 vsftpd.pem
cp vsftpd.pem /etc/ssl/certs/

Vsftpd配置SSL支持:

ssl_enable=YES
allow_anon_ssl=YES
force_local_data_ssl=YES
force_local_logins_ssl=YES
force_anon_logins_ssl=YES
force_anon_data_ssl=YES
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO
rsa_cert_file=/etc/ssl/certs/vsftpd.pem

重启vsftp使用支持ssl的ftp客户端连接,本例使用FlashFXP连接:
flashFXP新建连接使用SSL加密FTP.png
flashfxp登录信息ssl.png

Nginx配置StartSSL免费SSL证书

发布时间:August 7, 2012 // 分类:Nginx,OpenSSL // No Comments

证书申请参考:StartSSL免费服务器SSL证书申请,使用自签名证书参考:Nginx配置自签名SSL证书
下载StartSSL根证书并与申请到的StartSSL证书合并到一个文件:

#http://www.haiyun.me
wget http://www.startssl.com/certs/ca.pem
wget http://www.startssl.com/certs/sub.class1.server.ca.pem
cat server.csr sub.class1.server.ca.pem ca.pem > www.haiyun.me.pem

服务器私钥如果有设置密码要清除掉,不然启动Nginx要输入SSL密码。

openssl rsa -in server.key -out www.haiyun.me.key

更改SSL证书权限:

chmod 400 www.haiyun.me.*

修改Nginx配置文件加载SSL证书:

ssl                   on;
ssl_certificate   /path/www.haiyun.me.pem;
ssl_certificate_key /path/www.haiyun.me.key;

修改fcgi配置文件传递HTTPS参数,不然当前网页为HTTPS,下一链接主回到HTTP页面了。

fastcgi_param HTTPS on;

如果网站只允许使用HTTPS连接可添加Header头通知客户端转向HTTPS连接:

add_header Strict-Transport-Security max-age=31536000;

重启Nginx加载:

/etc/init.d/nginx restart

访问http://www.haiyun.me查看SSL证书:
查看www.haiyun.me证书.png

分类
最新文章
最近回复
  • bubble: 现在linux 4.9以上的内核有个bbr的参数,用这个bbr比用锐速效果更好,可参考我的博文...
  • wang: openwrt 只有 tmp/etc/miniupnpd.conf 修改后又重置了,其他路径找...
  • wbq: 可以了 只是https透明代理如何做呢?
  • wbq: 你的这个配置需要浏览器设置代理ip+port, 现在假设不设置,只配置客户端网关为Nginx那...
  • wbq: 您好,想用Nginx做个透明代理,客户端机器配置下网关(即Nginx那台机器),客户端dns配...
  • ccc: 可以提供易调用openssl常用函数吗?
  • 夜未央: 在centos7 下面 貌似转换不了。有人遇到过么????
  • brian: 博主你好,请教一个问题。我使用fprobe进行将交换机流量转换成netflow时是没有问题的,...
  • 吴昊: 学习了,感谢博主分享
  • dabral: Are there any other security restrictions in pl...