deason 3 lat temu
rodzic
commit
5d53a63e73

+ 119 - 0
nginx/test-192.168.10.41/nginx.conf

@@ -0,0 +1,119 @@
+
+user root;
+worker_processes auto;
+worker_cpu_affinity auto;
+worker_rlimit_nofile 65535;
+
+events {
+   use epoll;
+
+	worker_connections 65535;
+	accept_mutex off;
+}
+
+http {
+	include mime.types;
+	default_type application/octet-stream;
+	sendfile on;
+
+
+	 log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
+	 '$status $body_bytes_sent "$http_referer" '
+	 '"$http_user_agent" "$http_x_forwarded_for"';
+	 access_log  logs/access.log  main;
+	access_log on;
+
+
+	underscores_in_headers on;
+	tcp_nopush on;
+	client_max_body_size 100m;
+	keepalive_timeout 3600;
+	proxy_read_timeout 3600;
+	gzip on;
+	gzip_min_length 1k;
+	gzip_comp_level 4;
+	gzip_types text/plain application/javascript application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png;
+	gzip_vary on;
+
+	# =====================================================================
+
+	upstream basic {
+		server 192.168.10.41:8000;
+	}
+
+	upstream examwork {
+		server 192.168.10.41:8001;
+	}
+
+	upstream question-for-student {
+		server 192.168.10.41:8008;
+	}
+
+	upstream question-for-admin {
+		server 192.168.10.41:8008;
+	}
+
+	upstream oe-student {
+		server 192.168.10.41:8003;
+	}
+
+	upstream oe-admin-for-admin {
+		server 192.168.10.41:8013;
+	}
+
+	upstream oe-admin-for-student {
+		server 192.168.10.41:8013;
+	}
+
+	upstream oe-task {
+		server 192.168.10.41:8002;
+	}
+
+	upstream ws {
+		server 192.168.10.41:8010;
+	}
+
+	upstream marking {
+		server 192.168.10.41:8004;
+	}
+
+	upstream logic-marking {
+		server 192.168.10.41:8005;
+	}
+
+	upstream exchange {
+		server 192.168.10.41:8007;
+	}
+
+	upstream bridge {
+		server 192.168.10.41:8030;
+	}
+
+	upstream app-api {
+		server 192.168.10.41:8090;
+	}
+
+	upstream task {
+		server 192.168.10.41:8011;
+	}
+
+	upstream print {
+		server 192.168.10.41:8009;
+	}
+
+	upstream reports {
+		server 192.168.10.41:8015;
+	}
+
+	upstream api-limiter {
+                server 192.168.10.41:18080;
+        }
+
+	# =====================================================================
+
+	# include sites/http80.conf;
+	include sites/https443.conf;
+	include sites/block_ips.conf;
+
+}
+

+ 2 - 0
nginx/test-192.168.10.41/sites/block_ips.conf

@@ -0,0 +1,2 @@
+
+# deny 106.6.174.0/24;

+ 81 - 0
nginx/test-192.168.10.41/sites/http80.conf

@@ -0,0 +1,81 @@
+server {
+	listen 80;
+	charset utf-8;
+	error_page 404 /40x.html;
+
+
+	location = / {
+		rewrite / /admin/ last;
+	}
+
+	location = /admin {
+		rewrite /admin /admin/ last;
+	}
+
+	location ^~ /admin/ {
+		alias /home/admin/project/examcloud/static-new/admin/dist/;
+		try_files $uri $uri/ /admin/index.html;
+	}
+
+	location ^~ /admin/js/ {
+		alias /home/admin/project/examcloud/static-new/admin/dist/js/;
+		try_files $uri $uri/ =404;
+	}
+
+	location = /oe-web {
+		rewrite /oe-web /oe-web/ last;
+	}
+
+	location ^~ /oe-web/ {
+		alias /home/admin/project/examcloud/static-new/oe-web/dist/;
+		try_files $uri $uri/ /oe-web/index.html;
+	}
+
+	location ^~ /oe-web/js/ {
+		alias /home/admin/project/examcloud/static-new/oe-web/dist/js/;
+		try_files $uri $uri/ =404;
+	}
+
+	# location ~* (js|css|img|fonts|models) {
+	#	root /home/admin/project/examcloud/static-new/oe-web/dist/;
+	# }
+
+	location = /oe-wap {
+		rewrite /oe-wap /oe-wap/ last;
+	}
+
+	location ^~ /oe-wap/ {
+		alias /home/admin/project/examcloud/static-new/oe-wap/dist/;
+		try_files $uri $uri/ /oe-wap/index.html;
+	}
+
+	location = /photo-upload {
+		rewrite /photo-upload /photo-upload/ last;
+	}
+
+	location ^~ /photo-upload/ {
+		alias /home/admin/project/examcloud/static-new/photo-upload/dist/;
+		try_files $uri $uri/ /photo-upload/index.html;
+	}
+
+	location ^~ /electron-config/ {
+		alias /home/admin/project/examcloud/static-new/electron-config/;
+	}
+
+	location ^~ /downloads/ {
+		alias /home/admin/project/examcloud/static-new/downloads/;
+	}
+
+	location ^~ /oe/facepp_api {
+		proxy_pass https://api-cn.faceplusplus.com/facepp/v3;
+	}
+
+	location ^~ /jenkins {
+		proxy_pass http://localhost:9000/jenkins;
+	}
+
+	location ^~ /resource.js {
+		proxy_pass http://basic/resource.js;
+	}
+
+}

+ 222 - 0
nginx/test-192.168.10.41/sites/https443.conf

@@ -0,0 +1,222 @@
+server {
+	listen 443 ssl;
+	charset utf-8;
+	error_page 404 /40x.html;
+
+	ssl_certificate ssl/ea100/cert.pem;
+	ssl_certificate_key ssl/ea100/key.pem;
+
+	ssl_session_cache	shared:SSL:1m;
+	ssl_session_timeout	5m;
+	ssl_ciphers	HIGH:!aNULL:!MD5;
+	ssl_prefer_server_ciphers on;
+
+
+	location = / {
+		rewrite / /admin/ last;
+	}
+
+	location = /admin {
+		rewrite /admin /admin/ last;
+	}
+
+	location ^~ /admin/ {
+		alias /home/admin/project/examcloud/static-new/admin/dist/;
+		try_files $uri $uri/ /admin/index.html;
+	}
+
+	location ^~ /admin/js/ {
+		alias /home/admin/project/examcloud/static-new/admin/dist/js/;
+		try_files $uri $uri/ =404;
+	}
+
+	location = /oe-web {
+		rewrite /oe-web /oe-web/ last;
+	}
+
+	location ^~ /oe-web/ {
+		alias /home/admin/project/examcloud/static-new/oe-web/dist/;
+		try_files $uri $uri/ /oe-web/index.html;
+	}
+
+	location ^~ /oe-web/js/ {
+		alias /home/admin/project/examcloud/static-new/oe-web/dist/js/;
+		try_files $uri $uri/ =404;
+	}
+
+	# location ~* (js|css|img|fonts|models) {
+	#	root /home/admin/project/examcloud/static-new/oe-web/dist/;
+	# }
+
+	location = /oe-wap {
+		rewrite /oe-wap /oe-wap/ last;
+	}
+
+	location ^~ /oe-wap/ {
+		alias /home/admin/project/examcloud/static-new/oe-wap/dist/;
+		try_files $uri $uri/ /oe-wap/index.html;
+	}
+
+	location = /photo-upload {
+		rewrite /photo-upload /photo-upload/ last;
+	}
+
+	location ^~ /photo-upload/ {
+		alias /home/admin/project/examcloud/static-new/photo-upload/dist/;
+		try_files $uri $uri/ /photo-upload/index.html;
+	}
+
+	location ^~ /electron-config/ {
+		alias /home/admin/project/examcloud/static-new/electron-config/;
+	}
+
+	location ^~ /downloads/ {
+		alias /home/admin/project/examcloud/static-new/downloads/;
+	}
+
+	location ^~ /oe/facepp_api {
+		proxy_pass https://api-cn.faceplusplus.com/facepp/v3;
+	}
+
+	location ^~ /jenkins {
+		proxy_pass http://localhost:9000/jenkins;
+	}
+
+	location ^~ /resource.js {
+		proxy_pass http://basic/resource.js;
+	}
+
+
+	location ^~ /api/ecs_core/ {
+		proxy_pass http://basic;
+			proxy_set_header X-Real-IP $remote_addr;
+		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
+	}
+
+	location ^~ /api/ecs_exam_work/ {
+		proxy_pass http://examwork;
+			proxy_set_header X-Real-IP $remote_addr;
+		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
+	}
+
+	location ^~ /api/ecs_ques/ {
+		proxy_pass http://question-for-student;
+			proxy_set_header X-Real-IP $remote_addr;
+		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
+	}
+	
+	location  /api/branch_ecs_ques/ {
+	 	proxy_pass http://question-for-student/api/ecs_ques/;
+			proxy_set_header X-Real-IP $remote_addr;
+		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
+
+	}
+
+	location ^~ /api/ecs_oe_student/ {
+		proxy_pass http://oe-student;
+			proxy_set_header X-Real-IP $remote_addr;
+		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
+	}
+
+	location ^~ /api/ecs_oe_admin/ {
+		proxy_pass http://oe-admin-for-student;
+			proxy_set_header X-Real-IP $remote_addr;
+		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
+	}
+
+	location  /api/branch_ecs_oe_admin/ {
+		proxy_pass http://oe-admin-for-student/api/ecs_oe_admin/;
+			proxy_set_header X-Real-IP $remote_addr;
+		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
+    }
+
+	location ^~ /api/ecs_oe_student_face/ {
+		proxy_pass http://oe-task;
+			proxy_set_header X-Real-IP $remote_addr;
+		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
+	}
+
+	location ^~ /api/ws/ {
+		proxy_pass http://ws;
+			proxy_http_version 1.1;
+		proxy_connect_timeout 60s;
+		proxy_read_timeout 3600s;
+		proxy_send_timeout 12s;
+		proxy_set_header Upgrade $http_upgrade;
+		proxy_set_header Connection "upgrade";
+	}
+
+	location ^~ /api/ecs_marking/ {
+		proxy_pass http://marking;
+			proxy_set_header X-Real-IP $remote_addr;
+		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
+	}
+
+	location ^~ /api/ecs_data_process/ {
+		proxy_pass http://logic-marking;
+			proxy_set_header X-Real-IP $remote_addr;
+		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
+	}
+
+	location ^~ /api/ecs_outlet/ {
+		proxy_pass http://exchange;
+			proxy_set_header X-Real-IP $remote_addr;
+		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
+	}
+
+	location ^~ /api/exchange/ {
+		proxy_pass http://exchange/;
+			proxy_set_header X-Real-IP $remote_addr;
+		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
+	}
+
+	location ^~ /api/exchange/outer/ {
+		proxy_pass http://exchange;
+			proxy_set_header X-Real-IP $remote_addr;
+		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
+	}
+
+	location ^~ /api/exchange/inner/ {
+		proxy_pass http://exchange;
+			proxy_set_header X-Real-IP $remote_addr;
+		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
+	}
+
+	location ^~ /cmcClient/ {
+		proxy_pass http://bridge;
+			proxy_set_header X-Real-IP $remote_addr;
+		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
+	}
+
+	location ^~ /api/app-api/ {
+		proxy_pass http://app-api;
+			proxy_set_header X-Real-IP $remote_addr;
+		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
+	}
+
+	location ^~ /api/ctr/task/ {
+		proxy_pass http://task;
+			proxy_set_header X-Real-IP $remote_addr;
+		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
+	}
+
+	location ^~ /api/ecs_prt/ {
+		proxy_pass http://print;
+			proxy_set_header X-Real-IP $remote_addr;
+		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
+	}
+
+	location ^~ /api/ecs_reports/ {
+		proxy_pass http://reports;
+			proxy_set_header X-Real-IP $remote_addr;
+		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
+	}
+
+	location ^~ /api/limiter/ {
+		proxy_pass http://api-limiter;
+			proxy_set_header X-Real-IP $remote_addr;
+		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
+    }
+
+}
+

+ 27 - 0
nginx/test-192.168.10.41/ssl/current.key

@@ -0,0 +1,27 @@
+-----BEGIN RSA PRIVATE KEY-----
+MIIEowIBAAKCAQEAm249bunDhzFp5JMSgxRIlcPCUKOFFpmDrWC84aC6ZuLUWyHt
+QtZ6BX4Qv5o8YKehAdTPlOXc3XlToA+uhub/sQXJrNLiOt0Lg0xdmbp06W8ItSTp
+4oYl8biYvfQUC+zfqAnOFm7F1pvnwyNLN+QuQiRrKmk+hdFLIopSdstASidpJLzK
+CMMBVjsqb6g1QilfHdwEyKO5SBXosfFdxtqJF362WHVmL4uuFAA7m5qnHxmaXYVh
+6a9aV+XKsrMwxlocZ4DcWxCBHV++IIk6TcKaYpL4Lk6oJIHjH15Opwm5NQVVDfZ0
+TjfOxvtDWKu93O+yTrIYcF2zS09/TQgAyvZ95wIDAQABAoIBAD3wHEMKnIRPSKdx
+hDr/5jzoGZMQ1oQ/AJ4ioqI27pD5ay41wtqTpWRy7DGuQMkzg5G7QE1RnEYVhyGN
+njrb6qCccdWQ494ZH/FeiR4tk1FCkfG9mAZQ9uXwbc2kaiimaCoKXjnKQsRWtHCq
+q9rF7zkkUiBAeE3TLWHCRUJZlHD3yy6JmiUWmdZCHKErrkEb99BXsNQoXPIqGGi8
+g13Ir/gQpzqoRc+eBQ6OCYoAmnWknsvwwANYuHOWaaFEHYzdL+unrgTBOVYACv7h
+nKmAZWSa5ngSpE2vRduEJniknNT6WvSRziJsCCTL2Y4u4CFa7rFCDZzN8PtH4rPZ
+SlLVzYECgYEA44b3SOLdTUkfDBpjlQa3r6o21rlKTgZI82A/RQ1QIuTTfUF6kd2/
+3UYb33wr6hj5jQ8Qj7ydgoBrhitqS9/fjMwNXA98R23+s04W4NINnuhT2u2kczuC
+GIk+E0m4teDGfvGUrB1XIEb0lpjyPqigdow1ys8K1A7+qIHOPr0lChECgYEAruGY
+uGhFnuilNNiyJOj23yCuskbHtHnXNLuNg1A5D6egDh9qLiZkh95edTdydXG5v+as
+OYglh0NGse02eil2FVfbjBfUZB4X/CEEVOeF8Qm2Pgq9nJ3WoCxlnRE4LccPMn/Z
+dm+/rl/VwdzufFb65Jg/2l1qu7Mc09sQ/3SB0HcCgYAzN/G4zaElwb0ke1hJdu6o
+s7eOlL1+XPnVF6iGgd21TS+ytafC6FlFlX+2ynwUQbUDpQ2EXeBTPVd3J5TRKb9o
+MZMcUzwV1FQOxxhtWbvJNuGRmgd4DUBXB6Yar3DOOKBWeUmPiTdQw8hRknKN2mXs
+6dk+I2d7nziCdF4aT3fkEQKBgEkoZtL+C+HmQPZSkHOQYXYGHg7GPVTqg3Sz4QdF
+0BkUboh569lShkuwYqN2hpNK+AGnZfTLV6e2JSTZryh7n8Jd9qIsddVMIYx/42gB
+Uq76+RoLNDcIcHihGgES6wV7eIgPo9E//lfcD3gCDGJHoL1wU4Xt/nB3BWA7DGlR
+O90RAoGBAJ4sUrKCaxTuN21VhrAXMcJ+9qpxm5XCzIlqH3JSWZXvBG/Qdm4t18p1
+eXrBeYXtdyBTAeY5F1fIuttTpbybJqg3ytEB8dobqVjpd2feuX6j2xlGDQRy1iHa
+XFkcAPrmGojzMoa7EGEMfOrat/h9jrRNGf3DLORdGi/wt6onF5K9
+-----END RSA PRIVATE KEY-----

+ 62 - 0
nginx/test-192.168.10.41/ssl/current.pem

@@ -0,0 +1,62 @@
+-----BEGIN CERTIFICATE-----
+MIIF7zCCBNegAwIBAgIQAp7LGNGxL2vxPQ0FDV7GUDANBgkqhkiG9w0BAQsFADBe
+MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
+d3cuZGlnaWNlcnQuY29tMR0wGwYDVQQDExRSYXBpZFNTTCBSU0EgQ0EgMjAxODAe
+Fw0yMDA2MjIwMDAwMDBaFw0yMjA3MDIxMjAwMDBaMBgxFjAUBgNVBAMMDSoucW10
+aC5jb20uY24wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCbbj1u6cOH
+MWnkkxKDFEiVw8JQo4UWmYOtYLzhoLpm4tRbIe1C1noFfhC/mjxgp6EB1M+U5dzd
+eVOgD66G5v+xBcms0uI63QuDTF2ZunTpbwi1JOnihiXxuJi99BQL7N+oCc4WbsXW
+m+fDI0s35C5CJGsqaT6F0UsiilJ2y0BKJ2kkvMoIwwFWOypvqDVCKV8d3ATIo7lI
+Feix8V3G2okXfrZYdWYvi64UADubmqcfGZpdhWHpr1pX5cqyszDGWhxngNxbEIEd
+X74giTpNwppikvguTqgkgeMfXk6nCbk1BVUN9nRON87G+0NYq73c77JOshhwXbNL
+T39NCADK9n3nAgMBAAGjggLtMIIC6TAfBgNVHSMEGDAWgBRTyhdZ/GvAAyEvGq7k
+qqgcglbadTAdBgNVHQ4EFgQUszWe8+/8jMCx8sc7TBCsCaE8AM0wJQYDVR0RBB4w
+HIINKi5xbXRoLmNvbS5jboILcW10aC5jb20uY24wDgYDVR0PAQH/BAQDAgWgMB0G
+A1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjBMBgNVHSAERTBDMDcGCWCGSAGG
+/WwBAjAqMCgGCCsGAQUFBwIBFhxodHRwczovL3d3dy5kaWdpY2VydC5jb20vQ1BT
+MAgGBmeBDAECATB1BggrBgEFBQcBAQRpMGcwJgYIKwYBBQUHMAGGGmh0dHA6Ly9z
+dGF0dXMucmFwaWRzc2wuY29tMD0GCCsGAQUFBzAChjFodHRwOi8vY2FjZXJ0cy5y
+YXBpZHNzbC5jb20vUmFwaWRTU0xSU0FDQTIwMTguY3J0MAkGA1UdEwQCMAAwggF/
+BgorBgEEAdZ5AgQCBIIBbwSCAWsBaQB2ACl5vvCeOTkh8FZzn2Old+W+V32cYAr4
++U1dJlwlXceEAAABctq0lOQAAAQDAEcwRQIhAPSyYr571MFGIqag7I8DvDEuofSz
+niYiIpupf2ZPr9uOAiBnDSGW330Kgq4q9DjPlMdyHhOEwxzw4ArL9pEfh5sBogB2
+ACJFRQdZVSRWlj+hL/H3bYbgIyZjrcBLf13Gg1xu4g8CAAABctq0lRIAAAQDAEcw
+RQIgXf8WhjgHtV1FIxcyuvxsE2l4jd8p7an6XMhXC5JdqWsCIQCMpvVpUbwfHBeL
+uW8y1M/Dov5ucb6yVw8tQlVX+gSnEwB3AFGjsPX9AXmcVm24N3iPDKR6zBsny/ee
+iEKaDf7UiwXlAAABctq0lWIAAAQDAEgwRgIhAP1Grc7Mmyy5i6UyNFtvgvCpxyO4
+kxUqheqszgaH8kUyAiEA4PT+hRcN8voF2WAnt8uD8sYRLFwWUIrMsULm1XzLxzMw
+DQYJKoZIhvcNAQELBQADggEBAL8SqYpJGwXgsL4PLO2JC7WEsMIjaMEoC1S3IUNp
+aR6CIW0WCdbokeMrxL1VHKq9vVqc8a7bZAYF+Yx5wXVb3S8prcBZamdWZgb4Ifyy
+NdTBa/pk+h5s3TTPDFl9bmBTDc6id+EPZk5PK3W3halQG/eJULN51PmeBTggaaEe
+0aKvIqp9gCFm8WnuHMFAZ/AKwj5K4JAdGUAJjxZzfxnv1B4fR5XBfqpdVqaxOaZv
+rvUyvmHoSP4+pTE0EUJFnoz9GXZ4TwEbvsGX+G5BkXvOS8dLElpy0s1O+7HgUumA
+RvwfEPEQpQy6U9wQAdSoW7dfAjgwZwoY/Yy74MScKFxij2w=
+-----END CERTIFICATE-----
+-----BEGIN CERTIFICATE-----
+MIIEsTCCA5mgAwIBAgIQCKWiRs1LXIyD1wK0u6tTSTANBgkqhkiG9w0BAQsFADBh
+MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
+d3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBD
+QTAeFw0xNzExMDYxMjIzMzNaFw0yNzExMDYxMjIzMzNaMF4xCzAJBgNVBAYTAlVT
+MRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5j
+b20xHTAbBgNVBAMTFFJhcGlkU1NMIFJTQSBDQSAyMDE4MIIBIjANBgkqhkiG9w0B
+AQEFAAOCAQ8AMIIBCgKCAQEA5S2oihEo9nnpezoziDtx4WWLLCll/e0t1EYemE5n
++MgP5viaHLy+VpHP+ndX5D18INIuuAV8wFq26KF5U0WNIZiQp6mLtIWjUeWDPA28
+OeyhTlj9TLk2beytbtFU6ypbpWUltmvY5V8ngspC7nFRNCjpfnDED2kRyJzO8yoK
+MFz4J4JE8N7NA1uJwUEFMUvHLs0scLoPZkKcewIRm1RV2AxmFQxJkdf7YN9Pckki
+f2Xgm3b48BZn0zf0qXsSeGu84ua9gwzjzI7tbTBjayTpT+/XpWuBVv6fvarI6bik
+KB859OSGQuw73XXgeuFwEPHTIRoUtkzu3/EQ+LtwznkkdQIDAQABo4IBZjCCAWIw
+HQYDVR0OBBYEFFPKF1n8a8ADIS8aruSqqByCVtp1MB8GA1UdIwQYMBaAFAPeUDVW
+0Uy7ZvCj4hsbw5eyPdFVMA4GA1UdDwEB/wQEAwIBhjAdBgNVHSUEFjAUBggrBgEF
+BQcDAQYIKwYBBQUHAwIwEgYDVR0TAQH/BAgwBgEB/wIBADA0BggrBgEFBQcBAQQo
+MCYwJAYIKwYBBQUHMAGGGGh0dHA6Ly9vY3NwLmRpZ2ljZXJ0LmNvbTBCBgNVHR8E
+OzA5MDegNaAzhjFodHRwOi8vY3JsMy5kaWdpY2VydC5jb20vRGlnaUNlcnRHbG9i
+YWxSb290Q0EuY3JsMGMGA1UdIARcMFowNwYJYIZIAYb9bAECMCowKAYIKwYBBQUH
+AgEWHGh0dHBzOi8vd3d3LmRpZ2ljZXJ0LmNvbS9DUFMwCwYJYIZIAYb9bAEBMAgG
+BmeBDAECATAIBgZngQwBAgIwDQYJKoZIhvcNAQELBQADggEBAH4jx/LKNW5ZklFc
+YWs8Ejbm0nyzKeZC2KOVYR7P8gevKyslWm4Xo4BSzKr235FsJ4aFt6yAiv1eY0tZ
+/ZN18bOGSGStoEc/JE4ocIzr8P5Mg11kRYHbmgYnr1Rxeki5mSeb39DGxTpJD4kG
+hs5lXNoo4conUiiJwKaqH7vh2baryd8pMISag83JUqyVGc2tWPpO0329/CWq2kry
+qv66OSMjwulUz0dXf4OHQasR7CNfIr+4KScc6ABlQ5RDF86PGeE6kdwSQkFiB/cQ
+ysNyq0jEDQTkfa2pjmuWtMCNbBnhFXBYejfubIhaUbEv2FOQB3dCav+FPg5eEveX
+TVyMnGo=
+-----END CERTIFICATE-----

+ 59 - 0
nginx/test-192.168.10.41/ssl/ea100/cert.pem

@@ -0,0 +1,59 @@
+-----BEGIN CERTIFICATE-----
+MIIFUzCCBDugAwIBAgISBAqnNJV4IHLCMkJMw5zf7SDgMA0GCSqGSIb3DQEBCwUA
+MEoxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1MZXQncyBFbmNyeXB0MSMwIQYDVQQD
+ExpMZXQncyBFbmNyeXB0IEF1dGhvcml0eSBYMzAeFw0yMDA3MjMwMDM5MDVaFw0y
+MDEwMjEwMDM5MDVaMBkxFzAVBgNVBAMMDiouZWExMDAuY29tLmNuMIIBIjANBgkq
+hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzRl33Jbvuq+BGcQlsCJrrFbRKxwAuWly
+IisrfdCZCTw7RWBoHtdFwuBkKZsQcfM1KKgaLOKWnj7HyGVszFUXldrsAkdgFaTn
+/TR1czHArLw6oSrqa0PWtOyB0gC1wACOQj/NwL5Z8LBLzxTWZg2NSW5WcQEU4MjQ
+fe17IvsykcRRLAG83KNp5WkRh4ljPDBGDrK1QIajkzB80XDtaID9ooPaajSH7bYD
+nzGJ21F2eq4DapEhS49SSvXBoZ8XRqiEZDKf28HapIDZ9InA1G9ike99jKvTqE1U
+PoQAwO3amR2rbicfLlgdsU7xMtmtY2ZJynyEyhCPX071NZmrFO0TtQIDAQABo4IC
+YjCCAl4wDgYDVR0PAQH/BAQDAgWgMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEF
+BQcDAjAMBgNVHRMBAf8EAjAAMB0GA1UdDgQWBBQxNAOVrl3Dq5aeWk+5QBsqQoP2
+AjAfBgNVHSMEGDAWgBSoSmpjBH3duubRObemRWXv86jsoTBvBggrBgEFBQcBAQRj
+MGEwLgYIKwYBBQUHMAGGImh0dHA6Ly9vY3NwLmludC14My5sZXRzZW5jcnlwdC5v
+cmcwLwYIKwYBBQUHMAKGI2h0dHA6Ly9jZXJ0LmludC14My5sZXRzZW5jcnlwdC5v
+cmcvMBkGA1UdEQQSMBCCDiouZWExMDAuY29tLmNuMEwGA1UdIARFMEMwCAYGZ4EM
+AQIBMDcGCysGAQQBgt8TAQEBMCgwJgYIKwYBBQUHAgEWGmh0dHA6Ly9jcHMubGV0
+c2VuY3J5cHQub3JnMIIBAwYKKwYBBAHWeQIEAgSB9ASB8QDvAHYAsh4FzIuizYog
+Todm+Su5iiUgZ2va+nDnsklTLe+LkF4AAAFzeVLwSAAABAMARzBFAiEA8rAxjBa/
+JmAtzaWeA87dxHKwkd/qDu+HcED43J6WNmYCIHZRfikwiPT7bGAIuC95sn6sBV9j
+gShpcZbC+nczyXLtAHUAb1N2rDHwMRnYmQCkURX/dxUcEdkCwQApBo2yCJo32RMA
+AAFzeVLwgQAABAMARjBEAiB428S3AQOwfvVkKU+/l7+bfa478BFf2TT8MniijySI
+BQIgUUraomldo9SSMpyYcdQgxRVwiIwXkOSytm5PQNU9J9wwDQYJKoZIhvcNAQEL
+BQADggEBACXYYdtdmU+EhlKj+jaIr3BMal+FLrs7ntAsX2CqpNrpoeSiS23zaN8K
+vU9tbK5sIUx+h/662iQZL18NPwovYHerNacDqL2hp9llUOQ5vjYDq57b/3+wpMjt
+xa5mWym6jmCUK+JDsAArxeoLstguOex+lFP16wZsTTVSg89TfOMk3lNVBgZmGLWS
+rA5OW87IwTs5yp4kFvYzpV+QFBGBLZXg7M986jRl29MtPRS0eli2g+6TYnJFhRJo
+3YzmbixRmYBZnHZPkDiqFhM7qmsandUjM8G7EpPLM7kHljgEy3VRihR/fb/smoVH
+jz6s77tqYwFJQ/sL+0g+TbZpIlprJBk=
+-----END CERTIFICATE-----
+
+-----BEGIN CERTIFICATE-----
+MIIEkjCCA3qgAwIBAgIQCgFBQgAAAVOFc2oLheynCDANBgkqhkiG9w0BAQsFADA/
+MSQwIgYDVQQKExtEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdCBDby4xFzAVBgNVBAMT
+DkRTVCBSb290IENBIFgzMB4XDTE2MDMxNzE2NDA0NloXDTIxMDMxNzE2NDA0Nlow
+SjELMAkGA1UEBhMCVVMxFjAUBgNVBAoTDUxldCdzIEVuY3J5cHQxIzAhBgNVBAMT
+GkxldCdzIEVuY3J5cHQgQXV0aG9yaXR5IFgzMIIBIjANBgkqhkiG9w0BAQEFAAOC
+AQ8AMIIBCgKCAQEAnNMM8FrlLke3cl03g7NoYzDq1zUmGSXhvb418XCSL7e4S0EF
+q6meNQhY7LEqxGiHC6PjdeTm86dicbp5gWAf15Gan/PQeGdxyGkOlZHP/uaZ6WA8
+SMx+yk13EiSdRxta67nsHjcAHJyse6cF6s5K671B5TaYucv9bTyWaN8jKkKQDIZ0
+Z8h/pZq4UmEUEz9l6YKHy9v6Dlb2honzhT+Xhq+w3Brvaw2VFn3EK6BlspkENnWA
+a6xK8xuQSXgvopZPKiAlKQTGdMDQMc2PMTiVFrqoM7hD8bEfwzB/onkxEz0tNvjj
+/PIzark5McWvxI0NHWQWM6r6hCm21AvA2H3DkwIDAQABo4IBfTCCAXkwEgYDVR0T
+AQH/BAgwBgEB/wIBADAOBgNVHQ8BAf8EBAMCAYYwfwYIKwYBBQUHAQEEczBxMDIG
+CCsGAQUFBzABhiZodHRwOi8vaXNyZy50cnVzdGlkLm9jc3AuaWRlbnRydXN0LmNv
+bTA7BggrBgEFBQcwAoYvaHR0cDovL2FwcHMuaWRlbnRydXN0LmNvbS9yb290cy9k
+c3Ryb290Y2F4My5wN2MwHwYDVR0jBBgwFoAUxKexpHsscfrb4UuQdf/EFWCFiRAw
+VAYDVR0gBE0wSzAIBgZngQwBAgEwPwYLKwYBBAGC3xMBAQEwMDAuBggrBgEFBQcC
+ARYiaHR0cDovL2Nwcy5yb290LXgxLmxldHNlbmNyeXB0Lm9yZzA8BgNVHR8ENTAz
+MDGgL6AthitodHRwOi8vY3JsLmlkZW50cnVzdC5jb20vRFNUUk9PVENBWDNDUkwu
+Y3JsMB0GA1UdDgQWBBSoSmpjBH3duubRObemRWXv86jsoTANBgkqhkiG9w0BAQsF
+AAOCAQEA3TPXEfNjWDjdGBX7CVW+dla5cEilaUcne8IkCJLxWh9KEik3JHRRHGJo
+uM2VcGfl96S8TihRzZvoroed6ti6WqEBmtzw3Wodatg+VyOeph4EYpr/1wXKtx8/
+wApIvJSwtmVi4MFU5aMqrSDE6ea73Mj2tcMyo5jMd6jmeWUHK8so/joWUoHOUgwu
+X4Po1QYz+3dszkDqMp4fklxBwXRsW10KXzPMTZ+sOPAveyxindmjkW8lGy+QsRlG
+PfZ+G6Z6h7mjem0Y+iWlkYcV4PIWL1iwBi8saCbGS5jN2p8M+X+Q7UNKEkROb3N6
+KOqkqm57TH2H3eDJAkSnh6/DNFu0Qg==
+-----END CERTIFICATE-----

+ 27 - 0
nginx/test-192.168.10.41/ssl/ea100/key.pem

@@ -0,0 +1,27 @@
+-----BEGIN RSA PRIVATE KEY-----
+MIIEpQIBAAKCAQEAzRl33Jbvuq+BGcQlsCJrrFbRKxwAuWlyIisrfdCZCTw7RWBo
+HtdFwuBkKZsQcfM1KKgaLOKWnj7HyGVszFUXldrsAkdgFaTn/TR1czHArLw6oSrq
+a0PWtOyB0gC1wACOQj/NwL5Z8LBLzxTWZg2NSW5WcQEU4MjQfe17IvsykcRRLAG8
+3KNp5WkRh4ljPDBGDrK1QIajkzB80XDtaID9ooPaajSH7bYDnzGJ21F2eq4DapEh
+S49SSvXBoZ8XRqiEZDKf28HapIDZ9InA1G9ike99jKvTqE1UPoQAwO3amR2rbicf
+LlgdsU7xMtmtY2ZJynyEyhCPX071NZmrFO0TtQIDAQABAoIBAQCHeh08rs7nx+pF
+NNWYRQROsII2Macg0lA71bxCvTl5ajnUl9vvE0/XbBV9jhoMyxQAKRoxL/NB0EJz
+UtvNFSAhMpzW3ILRiT5cePxj/SdCcotfzlNOS19V3yvZpfJoQ3W0uSSV/qa2YB2T
+SjZc7vK24JVky8wYt01RAT9nWfqLYa0OeoyraO2RULlJyOGQLcR3cG54Yu2494zm
+6waHI0iP7mYWJAFjHisqo+MywPAG62htsjU/HgsXfNkDyEKpDd5nxhJ0nPwyoC2H
+OVguk1TvEi9mfQwodpqhZD9w2vsKTjN2J/+vy6zOMkkz4b833tb0bQRQC6zMdO6j
+Q6KFyoq5AoGBAPC104j6jzEeaYXVpeRYau0HCmWmCY816p4H4lw9EhOTsp5hJbeP
+p+94RZ4wJ8H0kHPwpwIZNstV/TZZjOSTguPnqcPp7Oo1xUXCy9/L5ITUJED+1pmO
+jedl1bwNoGdw/nCyJJqzGofAltt/oq7cTxQKJs33Xb6U9d7KJeZFWZ2DAoGBANog
+k9O9bciSNi8Pp162pGe5WBx1MGo3/GyOrnTdvc22c1aSjHUK+LGFJ5DwMpIqq7o2
+lxzn+wIXwUvTJsxmAbwIvk4SvQgW2rUKwQpYpqm8GJJnXkDSQnPQCqtgsuR3NAXm
+b+6VpIa1JpoOsVQTgMNQx920YqteS9KjBtRg/DxnAoGBAMJwbfaJR1/LDDxSz5V7
+oqvi8xAXJkOrruCGx9/waQitVyy+lqQHhAVZpwrYJVV0Q7eT3qRAT9XCmS7s+XWu
+fp2whZ6++GRcmQT4DI2z+t0dLEfgUuNpltEjnpowe7DzQmUwUYcxRC4CcRnPqU8M
+oUgzxxK7TdtkIpQbwK+Yt4IXAoGAeLpJN4uD5NxQExIV780lB6fFBdMy3cdo9eiu
+1E4ajG4sPkFUbj+JUC/Dq2vWgaIOdD1cvAoFmq3tNXuD4OOgmCM6uVmTuJN1r3hp
+ScGxVQafjwCZYUU+tHz0OtCFkwALEiztzN6UNl6zI9d3/HHi9beTN7lsVy8Uxlun
+Hwsi8IcCgYEAmlrU9OXbVwA2HPIcIxmtqqkXzc/U6Tii67FCSEf2CwEEH4g5J1J2
+qnATtWHKk25GMHq12d0l2wFTO3S7ZO1mgHoYgRBeYCc61o8HEp1XA3fLpntazsh1
+5CV+WN6dv7CY7GkH4tsCfh+JiO2NAMVpX0QPRjHUFkcDVz3HDwpqarU=
+-----END RSA PRIVATE KEY-----