nginx的部署及配置文件的介绍 域名 用户认证 SSL加密模块
步骤一:构建Nginx服务器
yum -y install gcc pcre-devel openssl-devel #安装依赖包
wget http://nginx.org/download/nginx-1.12.2.tar.gz (也可配置阿里源用yum安装)
tar -xf nginx-1.12.2.tar.gz
./configure \
--prefix=/usr/local/nginx \ #指定安装路径
--user=nginx \ #指定用户
--group=nginx \ #指定组
--with-http_ssl_module #开启SSL加密功能
make && make install #编译并安装 (如果没有安装make请自行安装)
nginx命令的用法
/usr/local/nginx/sbin/nginx #启动服务
/usr/local/nginx/sbin/nginx -s stop #关闭服务
/usr/local/nginx/sbin/nginx -s reload #重新加载配置文件
/usr/local/nginx/sbin/nginx -V #查看软件信息
至此nginx就安装并启动完成了 下面说下配置文件的修改和作用
开启用户认证的话 配置如下:
vim /usr/local/nginx/conf/nginx.conf
server {
listen 80;
server_name localhost;
auth_basic "Input Password:"; //认证提示符信息
auth_basic_user_file "/usr/local/nginx/pass"; //认证的密码文件
location / {
root html;
index index.html index.htm;
}
}
配置完成后 生成密码文件,创建用户及密码
yum -y install httpd-tools
htpasswd -c /usr/local/nginx/pass tom //创建密码文件
/usr/local/nginx/pass jerry //追加用户,不使用-c选项
创建的用户和密码会存放在 /usr/local/nginx/pass 下
/usr/local/nginx/sbin/nginx -s reload //重新加载配置文件 后再用wab访问就要输入用户名和密码
源码安装Nginx时必须使用--with-http_ssl_module参数,启用加密模块,对于需要进行SSL加密处理的站点添加ssl相关指令(设置网站需要的私钥和证书)。
加密算法一般分为对称算法、非对称算法、信息摘要。
对称算法有:AES、DES,主要应用在单机数据加密。
非对称算法有:RSA、DSA,主要应用在网络数据加密。
信息摘要:MD5、sha256,主要应用在数据完整性校验。
生成私钥与证书
cd /usr/local/nginx/conf
openssl genrsa > cert.key //生成私钥
openssl req -new -x509 -key cert.key > cert.pem //生成证书
修改Nginx配置文件,设置加密网站的虚拟主机
vim /usr/local/nginx/conf/nginx.conf
- server {
- listen 443 ssl;
- server_name www.c.com;
- ssl_certificate cert.pem; #这里是证书文件
- ssl_certificate_key cert.key; #这里是私钥文件
- ssl_session_cache shared:SSL:1m;
- ssl_session_timeout 5m;
- ssl_ciphers HIGH:!aNULL:!MD5;
- ssl_prefer_server_ciphers on;
- location / {
- root html;
- index index.html index.htm;
- }
- }
/usr/local/nginx/sbin/nginx -s reload 重新加载配置
修改客户端主机192.168.4.10的/etc/hosts文件,进行域名解析
- vim /etc/hosts
- 192.168.4.5 www.c.com www.a.com www.b.com
firefox https://www.c.com //信任证书后可以访问
最新文章
- 第九十九天上课 PHP TP框架 数据库查询和增加
- Ubuntu12.04安装ia32-libs
- Spring Boot 2 Swagger2
- DRM in Android
- javascript笔记02:严格模式的特定要求
- CPLEX IDE 菜单栏语言设置( 中文 英文 韩文 等多国语言 设置)
- Linux on ASUS N550JK4700
- Android Toast 自定义
- 自定义PopupWindow动画效果
- C++中的namespace
- char* 和 wchar_t* 如何互相转换
- asp.net 前台js和后台得到FormView中的控件,以TextBox为例
- 使用Java API连接和操作HBase数据库
- 关系数据库标准语言SQL——概述
- Codeforces Round #489 (Div. 2) E. Nastya and King-Shamans(线段树)
- java常用的中间件
- 01Hadoop二次排序
- mysql中的data下的数据文件(.FRM、.MYD、.MYI)恢复为数据
- 【接口】常见接口集合(返回JSON)
- VS2015不能修改安装路径问题