Nginx与Https加密网站
一、Web服务器比照
Unix和Linux平台下
–Apache、Nginx、Tengine、Lighttpd
–Tomcat、IBM WebSphere、Jboss
Windows平台下
–微软公司的IIS(Internet Information Server)
二、Nginx(“engine x”)简介
1.是俄罗斯人编写的十分轻量级的HTTP服务器。
2.是一个高性可以的HTTP和反向代理商服务器,同时也是一个IMAP/POP3/SMTP代理商服务器。
三、搭建Nginx服务器
1.Yum安装依赖包 gcc pcre-devel openssl-devel
2.创立使用户及组 nginx(防止用root使用户被人攻击网站时取得root权限)
3.解压nginx源码包,进入压缩包,设置配置文件
./configrue
–prefix=/usr/local/nginx \ //指定安装路径,默认为这个
–user=nginx \
–group=nginx \
–with-http_ssl_module //指定所要安装的板块,nginx为板块化安装,可根据个人需求选择合适的板块进行安装,这个为ssl加密功可以
–….
4.make && make install //编译并安装
5.Ln -s /usr/local/nginx/sbin/nginx/ /sbin/ //创立软链接,方便用
6.nginx命令的用
Nginx //启动服务
Nginx -s stop //关闭服务
Nginx -s reload //重新加载配置文件
Nginx -V //查看软件信息
Ps : netstat与ss命令都是查看系统中启动的端口信息,常使用选项有:
-a:显示所有端口的信息
-n:以数字格式显示端口号
-t:显示TCP连接的端口
-u:显示UDP连接的端口
-l:显示服务正在监听的端口信息,nginx和httpd都是80,不可同时启使用
-p:显示监听端口的服务名称是什么(程序名称)
7.关防火墙和selinux,访问测试页面,默认的网页根目录为/usr/local/nginx/html/
四、更新nginx服务器
1.编译新版本nginx软件,无需安装(./xxx make)
2.备份老的nginx主程序。并用编译好的新版本nginx替换老版本
Mv /usr/local/nginx/sbin/nginx > /usr/local/nginx/sbin/nginxold
//备份的好处是当新版本不好使用时可降回老版本
Cp 新版本目录下的objs/nginx /usr/local/nginx/sbin/ //拷贝新版本
Make upgrade 或者 killall nginx 再重启
3.检查版本 -V
五、Nginx配置文件的基本框架
Vim /usr/local/nginx/conf/nginx.conf
全局配置(使用户名,日志,进程)
User nginx; //进程所有者
Worker_processer 1; //启动进程数量(一般与cpu核数一样)
Error_log /var/log/nginx/error.log; //日志文件
Pid /var/run/nginx.pid; //PID文件
Events{
Worker_connections 1024; //单个进程最大并发量
…
}
http{
Server{ //定义虚拟主机
Listen 80;
Server_name localhost;
Location{ //发布目录
Root html;
Index ….
}
}
Server{
Listen 80;
Server_name www.xx.com;
Root www;
}
…
}
六、Nginx设置使用户认证界面
目标:访问页面需要通过使用户名:tom,密码:123456来登陆后才能访问
1.修改配置文件
Server下{
Auth_basic “认证提醒信息”;
Auth_basic_user_file “/usr/local/nginx/pass” //认证密码文件
Location前{}
…
}
2.安装生成密码的文件(httpd-tools),并创立使用户和密码
Htpasswd -c /usr/local/nginx/pass tom //创立密码文件,与配置文件里面的路径对应
Htpasswd /usr/local/nginx/pass azby //追加使用户,不用-c选项
Cat /usr/local/nginx/pass //查看使用户能否创立成功
3.重启nginx服务并访问测试
七、Nginx虚拟主机
分类:基于域名、端口、IP的虚拟主机
1.基于端口的虚拟主机
Server{
Listen 8080; //端口
Server_name www.xx.com;
…
}
Server{
Listen 8000; //端口
Server_name www.xxcom;
…
}
2.基于IP的虚拟主机
Server{
Listen 192.168.0.1:80;
Server_name www.xx.com;
…
}
Server{
Listen 192.168.0.2:8;;
Server_name www.xxcom;
…
}
3.基于域名的虚拟主机
Server{ //定义虚拟主机
Listen 80;
Server_name www.yy.com; //域名1
Location / { //发布目录
Root html; /usr/local/nginx/html/
Index …. //首页文件
}
}
Server{
Listen 80;
Server_name www.xx.com;
Location / { //发布目录
Root www; /usr/local/nginx/www/
Index ….
}
}
…
八、HTTPS加密网站
1.密钥分类
对称密钥:AES、DES 应使用:RAR、ZIP压缩加密(单机加密)需要告诉别人密码,所以多使用于单机
非对称密钥:RSA、DSA 应使用:网络加密(https、ssh),对方有私钥,发传输信息使用公钥加密,只有对方可以解密
Hash值:MD5、SHA256、SHA512 应使用:数据完整性校验,文件妙传
2.配置ssl加密网站
生成私钥 openssl genrsa > cert.key
生成证书 openssl req -new -x509 -key cert.key > cert.pem
修改配置文件
Server{
…
Ssl_certificate cert.pem; //指定证书文件
Ssl_certificate_key cert.key; //指定私钥文件
去掉配置文件里关于ssl的注释
…
Location{}
}
重启并https访问验证
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » Nginx与Https加密网站