المحتويات

المقدمة

المشكلة

المكونات

الحل

المقدمة

يصف هذا المستند حل المشكلة التي تحدث عند فشل تثبيت Smart Software Manager Satellite (SSMS) 5.1.0 في kernel المستند إلى لوحة المفاتيح/الفيديو/الماوس (KVM) الذي يتضمن النظام الأساسي لخدمة السحابة من Cisco.

المشكلة

يتم التثبيت عبر وحدة التحكم ويمكن الوصول إلى واجهة المستخدم (UI).

في وقت إعداد تسجيل CSSM، يلاحظ أن التسجيل يفشل أثناء إجراء التسجيل على الشبكة، بالإضافة إلى التسجيل اليدوي. تم التحقق من صحة إصدار TOMCAT و Kernel و Java Virtual Machine (JVM) في النظام المستند إلى KVM. لاحظ أن JVM يشغل الإصدار 1.8.0_102-b14 و Kernel 3.10.0-514.el7. قارن مع الإعداد القائم على ESXI، حيث يشغل kernel 3.10.0-862.14.4.el7 و JVM 1.8.0_191-b12.

[root@satellite bin]# ./version.sh

Using CATALINA_BASE: /opt/tc

Using CATALINA_HOME: /opt/tc

Using CATALINA_TMPDIR: /opt/tc/temp

Using JRE_HOME: /

Using CLASSPATH: /opt/tc/bin/bootstrap.jar:/opt/tc/bin/tomcat-juli.jar

Using CATALINA_PID: /opt/tomcat/temp/tomcat.pid

Server version: Apache Tomcat/9.0.1

Server built: Sep 27 2017 17:31:52 UTC

Server number: 9.0.1.0

OS Name: Linux

OS Version: 3.10.0-514.el7.x86_64

Architecture: amd64

JVM Version: 1.8.0_102-b14

JVM Vendor: Oracle Corporation

المكونات

النظام الأساسي: عنصر kernel القائم على لوحة المفاتيح والفيديو والماوس

البرنامج: Classic 5.1 صورة ISO

الحل

الخطوة 1. انتقل إلى القرص المضغوط/opt/tomcat/log/.

الخطوة 2. افتح سجلات catalyina.out وابحث عن الاستثناء الذي يحدث في وقت عملية التسجيل باستخدام CSSM.

موفر IAIK-JCE هو امتداد تشفير Java يحتوي على مجموعة من واجهات برمجة التطبيقات (API) ويمكنه تنفيذ وظائف التشفير. يتم إستخدامه من أجل دعم وظائف الأمان الإضافية ل JDK. فشلت الوحدة النمطية LCS في إنشاء زوج مفاتيح لملف طلب CSR بسبب عدم توفر ملف IAIK jar.

2019-05-15 20:35:01,604 [http-nio-8080-exec-9] INFO controller.LindosController - Invoked GET /lcsSetupStatus

2019-05-15 20:35:01,606 [http-nio-8080-exec-9] INFO controller.LindosController - LCS Setup Status = 0

2019-05-15 23:53:12,226 [http-nio-8080-exec-10] INFO controller.LindosController - Invoked GET /lcsSetupStatus

2019-05-15 23:53:12,230 [http-nio-8080-exec-10] INFO controller.LindosController - LCS Setup Status = 0

2019-05-15 23:53:12,241 [http-nio-8080-exec-1] INFO controller.LindosController - Invoked /lcsSetup

2019-05-15 23:53:12,243 [http-nio-8080-exec-1] DEBUG controller.LindosController - Setup Status = 0 (0=empty, 1=key/CSR generated, 2=Signer certs installed)

2019-05-15 23:53:12,243 [http-nio-8080-exec-1] DEBUG controller.LindosController - First time setup invoked (ID element not present in JSON). CN=5fc62a80-59a0-0137-54ab-023a01ab3207

2019-05-15 23:53:12,243 [http-nio-8080-exec-1] DEBUG domain.LcsSignerSetup - In LcsSignerSetup

2019-05-15 23:53:12,244 [http-nio-8080-exec-1] DEBUG domain.LcsSignerSetup - Generating Key Pair...

2019-05-15 23:53:12,244 [http-nio-8080-exec-1] ERROR error.RestResponseEntityExceptionHandler - java.security.NoSuchProviderException: no such provider: IAIK

com.cisco.ias.lindos.data.domain.LcsSetupException: java.security.NoSuchProviderException: no such provider: IAIK

at com.cisco.ias.lindos.data.domain.LcsSignerSetup.<init>(LcsSignerSetup.java:50)

at com.cisco.ias.lindos.web.controller.LindosController.setupLcs(LindosController.java:126)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:498)

at org.springframework.web.method.support.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:215)

at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:132)

at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104)

at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandleMethod(RequestMappingHandlerAdapter.java:749)

at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:690)

at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:83)

at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:945)

at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:876)

at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:961)

at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:863)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:660)

at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:837)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)

at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)

at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:651)

at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)

at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)

at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:500)

at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)

at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:754)

at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1376)

at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)

at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)

at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)

at java.lang.Thread.run(Thread.java:745)

2019-05-15 23:53:12,254 [http-nio-8080-exec-2] INFO controller.LindosController - Invoked GET /lcsSetupStatus

2019-05-15 23:53:12,256 [http-nio-8080-exec-2] INFO controller.LindosController - LCS Setup Status = 0

الخطوة 3. ضع موفر الأمان المطلوب في classpath؛ cp /opt/tomcat/webapps/lindos/web-inf/lib/iaik_jce-5.1.jar /usr/lib/jvm/java/jre/lib/ext/.

الخطوة 4. تأكد من أن الجرة قابلة للقراءة بواسطة وحدات أخرى، chmod o+r /usr/lib/jvm/java/jre/lib/ext/iaik_jce-5.1.jar.

الخطوة 5. قم بتخزين مسار ملف java.security إلى متغير مؤقت؛ java_security=/usr/lib/jvm/java/jre/lib/security/java.security.

الخطوة 6. قم بزيادة أولوية الموفرين الموجودين بواسطة perl -pi -e s/^security.provider.(\d+)/"security.provider." . (1$1+1)/e'$java_security.

الخطوة 7. أدرج IAIK كأول موفر في القائمة (لاحظ شرطة مائلة خلفية تفلت من خط جديد)؛ sed -i '/security.provider.2/i \

security.provider.1=iaik.security.provider.iaik'$java_security.

الخطوة 8. قم بإعادة تشغيل TOMCAT للتغييرات ليتم تطبيقها باستخدام الأمر؛ أعد تشغيل النظام ل TOMCAT.

الخطوة 9. قم بتسجيل القمر الصناعي باستخدام CSSM وعندما يكتمل التسجيل في القمر الصناعي، لن يتم إعادة تشغيل واجهة المستخدم.

الخطوة 10. قم بطيء كلا من شهادات x509 المستخدمة لاتصالات أمان طبقة النقل (TLS) على المنافذ 443 و 8443 من أجل تلبية تنسيق البريد الإلكتروني المحسن للخصوصية (PEM)، طي -w 64 /drbd/certs/rails_ssl.crt > /drbd/certs/rails_ssl_folded.crt & mv /drbd/certs/rails_ssl_folded.crt /drbd/certs/rails_ssl.crt

طي -w 64 /drbd/certs/pi_ssl.crt > /drbd/certs/pi_ssl_folded.crt & MV /drbd/certs/pi_ssl_folded.crt /drbd/certs/pi_ssl.crt.

ملاحظة: لا تقوم بتنفيذ هذه الأوامر طي وكذلك نقل في سطر مختلف لأنها تفسد شهادة PEM التي تم ترميزها 64.

الخطوة 11.ابدأ nginx؛ ابدأ NGINX للنظام.

ملاحظة: في حالة فشل واجهة المستخدم في الظهور بعد المزامنة، فهذا يرجع إلى تحديث/إستبدال هذه النتائج. وبالتالي، سيتعين تكرار الخطوات 8-10.

بعد اتباع هذه الخطوات، يمكنك الوصول إلى واجهة المستخدم ويمكنك مشاهدة المزامنة اللاحقة مع CSSM والتسجيل النهائي.

يمكنك رؤية قسم المخزون والترخيص الترخيص المعين من VA. يمكنك تسجيل مثيلات المنتجات الذكية على القمر الصناعي.