如何用 Home Web Server 配置简单 web 服务器
2012-10-24 14:28
369 查看
Home Web Server 是一个简便的 web 服务器,工作中俺常常用它来HTTP/HTTPS 服务器。俺当前使用的是版本:r1.5.2(build 124)
使用时发现,该服务器好像仅仅支持一块网卡,有时PC上两块以上的网卡,HTTP就启动不起来,why?
其实在其软件的官网上也是有些帮助文件的可以看看(http://downstairs.dnsalias.net/homewebserver.html)
1. HTTP 服务器
这个比较简单,通常也就是改改 端口(Http Server Settings -> General)
指定一下对应的文件即如登陆成功/失败,文件找不到之类,这些在目录 http\templates\都有范例可参考;还有就是是否允许浏览目录。(Http Server Settings -> Files and Folders)
还有对于像俺这样不需要登陆验证,俺主要拿它作为TR069 Download firmware测试时存放firmware的文件服务器,最好直接HTTP Get 就可以用的,就要增加一个匿名帐号(Anonymous, 无密码,允许目录浏览)
2. HTTPS 服务器
这个就稍微复杂一点了,复杂的原因在于需要产生几个证书。
先要安装好openssl(http://slproweb.com/products/Win32OpenSSL.html),对于像俺这样的windows用户,自动安装之后,还要set OPENSSL_CONF= openssl.cfg;请在执行之前确保openssl.cfg存在,否则会出现:WARNING: can't open config file: /usr/local/ssl/openssl.cnf 信息提示。
之后可以参考网上的一篇文章《windows下使用openssl生成CA证书的步骤》,虽然不知道原作者是谁,俺还是要真心表示一下感谢。俺在这里摘录一部分,因为俺只需要CA和server证书。
------------------------------------------------------------------------------------------------------------------------------
一:生成CA证书
目前不使用第三方权威机构的CA来认证,自己充当CA的角色。
网上下载一个openssl软件
1. 创建私钥 :
C:\OpenSSL\bin>openssl genrsa -out ca/ca-key.pem 1024
2.创建证书请求 :
C:\OpenSSL\bin>openssl req -new -out ca/ca-req.csr -key ca/ca-key.pem
-----
Country Name (2 letter code) [AU]:cn
State or Province Name (full name) [Some-State]:zhejiang
Locality Name (eg, city) []:hangzhou
Organization Name (eg, company) [Internet Widgits Pty Ltd]:skyvision
Organizational Unit Name (eg, section) []:test
Common Name (eg, YOUR name) []:root
Email Address []:sky
3.自签署证书 :
C:\OpenSSL\bin>openssl x509 -req -in ca/ca-req.csr -out ca/ca-cert.pem -signkey ca/ca-key.pem -days 3650
4.将证书导出成浏览器支持的.p12格式 :
C:\OpenSSL\bin>openssl pkcs12 -export -clcerts -in ca/ca-cert.pem -inkey ca/ca-key.pem -out ca/ca.p12
密码:changeit
二.生成server证书。
1.创建私钥 :
C:\OpenSSL\bin>openssl genrsa -out server/server-key.pem 1024
2.创建证书请求 :
C:\OpenSSL\bin>openssl req -new -out server/server-req.csr -key server/server-key.pem
-----
Country Name (2 letter code) [AU]:cn
State or Province Name (full name) [Some-State]:zhejiang
Locality Name (eg, city) []:hangzhou
Organization Name (eg, company) [Internet Widgits Pty Ltd]:skyvision
Organizational Unit Name (eg, section) []:test
Common Name (eg, YOUR name) []:192.168.1.246 注释:一定要写服务器所在的ip地址
Email Address []:sky
3.自签署证书 :
C:\OpenSSL\bin>openssl x509 -req -in server/server-req.csr -out server/server-cert.pem -signkey server/server-key.pem -CA ca/ca-cert.pem -CAkey ca/ca-key.pem -CAcreateserial -days 3650
4.将证书导出成浏览器支持的.p12格式 :
C:\OpenSSL\bin>openssl pkcs12 -export -clcerts -in server/server-cert.pem -inkey server/server-key.pem -out server/server.p12
密码:changeit
......
------------------------------------------------------------------------------------------------------------------------------
对了,运行命令前要把ca 和 server目录创建好,否则又会报错
然后将上面生成的ca-cert.pem,server-key.pem,server-cert.pem
这3个证书指定到(Http Server Settings -> Security)
Root Certification File 对应于 ca-cert.pem
Certification File 对应于 server-cert.pem
Key File 对应于 server-key.pem
勾选HTTPS Server 和 SSL v2 or v3 就OK了
使用时发现,该服务器好像仅仅支持一块网卡,有时PC上两块以上的网卡,HTTP就启动不起来,why?
其实在其软件的官网上也是有些帮助文件的可以看看(http://downstairs.dnsalias.net/homewebserver.html)
1. HTTP 服务器
这个比较简单,通常也就是改改 端口(Http Server Settings -> General)
指定一下对应的文件即如登陆成功/失败,文件找不到之类,这些在目录 http\templates\都有范例可参考;还有就是是否允许浏览目录。(Http Server Settings -> Files and Folders)
还有对于像俺这样不需要登陆验证,俺主要拿它作为TR069 Download firmware测试时存放firmware的文件服务器,最好直接HTTP Get 就可以用的,就要增加一个匿名帐号(Anonymous, 无密码,允许目录浏览)
2. HTTPS 服务器
这个就稍微复杂一点了,复杂的原因在于需要产生几个证书。
先要安装好openssl(http://slproweb.com/products/Win32OpenSSL.html),对于像俺这样的windows用户,自动安装之后,还要set OPENSSL_CONF= openssl.cfg;请在执行之前确保openssl.cfg存在,否则会出现:WARNING: can't open config file: /usr/local/ssl/openssl.cnf 信息提示。
之后可以参考网上的一篇文章《windows下使用openssl生成CA证书的步骤》,虽然不知道原作者是谁,俺还是要真心表示一下感谢。俺在这里摘录一部分,因为俺只需要CA和server证书。
------------------------------------------------------------------------------------------------------------------------------
一:生成CA证书
目前不使用第三方权威机构的CA来认证,自己充当CA的角色。
网上下载一个openssl软件
1. 创建私钥 :
C:\OpenSSL\bin>openssl genrsa -out ca/ca-key.pem 1024
2.创建证书请求 :
C:\OpenSSL\bin>openssl req -new -out ca/ca-req.csr -key ca/ca-key.pem
-----
Country Name (2 letter code) [AU]:cn
State or Province Name (full name) [Some-State]:zhejiang
Locality Name (eg, city) []:hangzhou
Organization Name (eg, company) [Internet Widgits Pty Ltd]:skyvision
Organizational Unit Name (eg, section) []:test
Common Name (eg, YOUR name) []:root
Email Address []:sky
3.自签署证书 :
C:\OpenSSL\bin>openssl x509 -req -in ca/ca-req.csr -out ca/ca-cert.pem -signkey ca/ca-key.pem -days 3650
4.将证书导出成浏览器支持的.p12格式 :
C:\OpenSSL\bin>openssl pkcs12 -export -clcerts -in ca/ca-cert.pem -inkey ca/ca-key.pem -out ca/ca.p12
密码:changeit
二.生成server证书。
1.创建私钥 :
C:\OpenSSL\bin>openssl genrsa -out server/server-key.pem 1024
2.创建证书请求 :
C:\OpenSSL\bin>openssl req -new -out server/server-req.csr -key server/server-key.pem
-----
Country Name (2 letter code) [AU]:cn
State or Province Name (full name) [Some-State]:zhejiang
Locality Name (eg, city) []:hangzhou
Organization Name (eg, company) [Internet Widgits Pty Ltd]:skyvision
Organizational Unit Name (eg, section) []:test
Common Name (eg, YOUR name) []:192.168.1.246 注释:一定要写服务器所在的ip地址
Email Address []:sky
3.自签署证书 :
C:\OpenSSL\bin>openssl x509 -req -in server/server-req.csr -out server/server-cert.pem -signkey server/server-key.pem -CA ca/ca-cert.pem -CAkey ca/ca-key.pem -CAcreateserial -days 3650
4.将证书导出成浏览器支持的.p12格式 :
C:\OpenSSL\bin>openssl pkcs12 -export -clcerts -in server/server-cert.pem -inkey server/server-key.pem -out server/server.p12
密码:changeit
......
------------------------------------------------------------------------------------------------------------------------------
对了,运行命令前要把ca 和 server目录创建好,否则又会报错
然后将上面生成的ca-cert.pem,server-key.pem,server-cert.pem
这3个证书指定到(Http Server Settings -> Security)
Root Certification File 对应于 ca-cert.pem
Certification File 对应于 server-cert.pem
Key File 对应于 server-key.pem
勾选HTTPS Server 和 SSL v2 or v3 就OK了
相关文章推荐
- Tomcat 服务器server.xml,web.xml的关键参数配置
- 你真的了解如何将 Nginx 配置为 Web 服务器吗
- javaWeb之如何配置服务器Tomcate的编码方式
- nodejs安装与配置(express生成简单的web服务器)
- express:webpack dev-server开发中如何调用后端服务器的接口?
- 配置了SSL 的web服务器,如何实现启动服务的时候自动输入密码
- server 2003 stmp服务器简单配置 以及.net 下发送邮件
- 在nginx中配置如何防止直接用ip访问服务器web server及server_name特性讲解
- 如何在Ubuntu下搭建tftp服务器(最简单的安装配置)
- asp.net development server配置方案,修改默认web服务器
- 在 web 中如何获取 Tomcat conf/server.xml 中配置的Connector信息
- server 2003 stmp服务器简单配置 以及.net 下发送邮件
- asp.net development server配置方案 无法连接到 Visual Studio 的 Localhost Web 服务器
- Tomcat 服务器server.xml,web.xml的关键参数配置
- webpack-dev-server.js 服务器配置说明
- Nginx是如何配置为 Web 服务器的【转载】
- Webpack-dev-server结合后端服务器的热替换配置
- 如何在WEB服务器上配置SSI功能
- 如何在Ubuntu下搭建tftp服务器(最简单的安装配置)
- javaweb开发基础及Tomcat服务器的简单使用、配置