Thanks for the heads-up. 

Jason



On Jun 9, 2016, 10:56 PM, at 10:56 PM, Vasiliy Degtyarev <va...@unipro.ru> 
wrote:
>Hello Jason!
>
>Maxim in now out of office, he returns June 20
>so no updates on screen share for RTMPS.
>
>Thanks,
>Vasiliy
>
>On 10.06.2016 9:23, Jason Romo wrote:
>> Any update on getting RTMPS working with desktop share?
>>
>>
>>> On May 27, 2016, at 5:04 AM, Maxim Solodovnik <solomax...@gmail.com 
>>> <mailto:solomax...@gmail.com>> wrote:
>>>
>>> Thanks for sharing this Jason,
>>>
>>> I'll update instructions with 3.1.2 release, currently trying to fix
>
>>> RTMPS screen-sharing
>>>
>>> On Fri, May 27, 2016 at 3:42 PM, Jason Romo 
>>> <ja...@securityarsenal.com <mailto:ja...@securityarsenal.com>>
>wrote:
>>>
>>>     Ok SSL with RTMPS works, but Screen Share is broken.  They are
>>>     working on it , 3.1.2 is waiting for a resoution. Thanks to
>Maxim
>>>     for helping resolve the proxyType issue.  That was the one thing
>>>     all docs missed the other was ports.  I don’t think one document
>>>     had a working config example for Openmeetings 3.1.1. Even the
>doc
>>>     on RTMPS at the official website doesn’t work. This works!  So
>>>     enjoy stress free install using SSL.
>>>
>>>     To get SSL working with RTMPS you need to do the following:
>>>
>>>     If you want to use LetsEncrypt Free SSL do this use the
>following
>>>     or skip and add your own valid cert from any location to the
>>>     keystone. I add the LetsEncrypt because I couldn’t find a single
>>>     source that had this correct either.  It took a bit to resolve.
>>>
>>>     Install LetsEncrypt plenty of places to show you how to install.
>
>>>     Then do cert-only install.  You need to convert the cert to work
>>>     with keystone.
>>>
>>>     cd /etc/letsencrypt/live/yourdomain
>>>
>>>     # Java cacerts you can add the x3-cross-sign.pem to it like
>this.
>>>     You have to download the x3-cross-sign.pem from letsencrypt
>>>     website. the default Java password is: changeit
>>>     keytool -importcert -file
>>>     /etc/letsencrypt/live/yourdomain/x3-cross-sign.pem -keystore
>cacerts
>>>
>>>     # Make new keystore
>>>     #keytool -keysize 2048 -genkey -alias key -keyalg RSA -keystore
>>>     keystore.jks
>>>
>>>     # Make sure you append the x3-cross-sign.pem to the chain.pem or
>>>     it will not work.
>>>     openssl pkcs12 -export -in cert.pem -inkey privkey.pem -out
>>>     cert_and_key.p12 -name red5 -CAfile chain.pem -caname root
>>>
>>>     # Import keys
>>>     keytool -importkeystore -deststorepass password -destkeypass
>>>     password -destkeystore keystore.jks -srckeystore
>cert_and_key.p12
>>>     -srcstoretype PKCS12 -srcstorepass d4h3j9nq1 -alias red5
>>>
>>>     cp keystore.jks /opt/yourinstall/conf/keystore.jks
>>>     cp keystore.jks /opt/yourinstall/conf/keystore.screen
>>>     cp keystore.jks /opt/yourinstall/conf/truststore.jks
>>>
>>>
>>>
>>>     vi conf/red5.properties
>>>     https.port=443
>>>     rtmps.port=443
>>>     rtmps.keystorepass=yourpass
>>>     rtmps.keystorefile=conf/keystore.jks
>>>     rtmps.truststorepass=yourpass
>>>     rtmps.truststorefile=conf/truststore.jks
>>>
>>>     Make sure you set proxyType to none or it will not work.
>>>     vi webapps/openmeetings/public/config.xml
>>>     <rtmpport>1935</rtmpport>
>>>     <rtmpsslport>443</rtmpsslport>
>>>     <useSSL>yes</useSSL>
>>>     <protocol>https</protocol>
>>>     # NOTE: don’t use best like other docs say.  It doesn’t work!!
>>>     <proxyType>none</proxyType>
>>>
>>>
>>>     Now enable SSL in the jee-container.xml.  I copy the file
>>>     appending .ssl and .html to allow quick changes.
>>>     vi conf/jee-container.xml
>>>
>>>      <!-- Tomcat without SSL enabled
>>>         <bean id="tomcat.server"
>>>     class="org.red5.server.tomcat.TomcatLoader"
>>>     depends-on="context.loader" init-method="start"
>lazy-init="true">
>>>
>>>             <property name="webappFolder"
>value="${red5.root}/webapps" />
>>>
>>>             <property name="connectors">
>>>                 <list>
>>>                     <bean name="httpConnector"
>>>     class="org.red5.server.tomcat.TomcatConnector">
>>>     <property name="protocol"
>>>     value="org.apache.coyote.http11.Http11NioProtocol" />
>>>     <property name="address" value="${http.host}:${http.port}" />
>>>     <property name="redirectPort" value="${https.port}" />
>>>     </bean>
>>>     </list>
>>>     </property>
>>>
>>>             <property name="baseHost">
>>>                <bean class="org.apache.catalina.core.StandardHost">
>>>     <property name="name" value="${http.host}" />
>>>     </bean>
>>>     </property>
>>>
>>>             <property name="valves">
>>>                 <list>
>>>                     <bean id="valve.access"
>>>     class="org.apache.catalina.valves.AccessLogValve">
>>>     <property name="directory" value="log" />
>>>     <property name="prefix" value="${http.host}_access." />
>>>     <property name="suffix" value=".log" />
>>>     <property name="pattern" value="common" />
>>>     <property name="rotatable" value="true" />
>>>     </bean>
>>>     </list>
>>>     </property>
>>>
>>>         </bean>
>>>     -->
>>>         <!-- Tomcat with SSL enabled -->
>>>         <bean id="tomcat.server"
>>>     class="org.red5.server.tomcat.TomcatLoader"
>>>     depends-on="context.loader" init-method="start"
>lazy-init="true">
>>>
>>>             <property name="webappFolder"
>value="${red5.root}/webapps" />
>>>
>>>             <property name="connectors">
>>>                 <list>
>>>                     <bean name="httpConnector"
>>>     class="org.red5.server.tomcat.TomcatConnector">
>>>     <property name="protocol"
>>>     value="org.apache.coyote.http11.Http11NioProtocol" />
>>>     <property name="address" value="${http.host}:${http.port}" />
>>>     <property name="redirectPort" value="${https.port}" />
>>>     </bean>
>>>                     <bean name="httpsConnector"
>>>     class="org.red5.server.tomcat.TomcatConnector">
>>>     <property name="secure" value="true" />
>>>     <property name="protocol"
>>>     value="org.apache.coyote.http11.Http11NioProtocol" />
>>>     <property name="address" value="${http.host}:${https.port}" />
>>>     <property name="redirectPort" value="${http.port}" />
>>>     <property name="connectionProperties">
>>>     <map>
>>>         <entry key="port" value="${https.port}" />
>>>         <entry key="redirectPort" value="${http.port}" />
>>>         <entry key="SSLEnabled" value="true" />
>>>         <entry key="sslProtocol" value="TLS" />
>>>         <entry key="keystoreFile" value="${rtmps.keystorefile}" />
>>>         <entry key="keystorePass" value="${rtmps.keystorepass}" />
>>>         <entry key="keystoreType" value="JKS" />
>>>         <entry key="truststoreFile" value="${rtmps.truststorefile}"
>/>
>>>         <entry key="truststorePass" value="${rtmps.truststorepass}"
>/>
>>>         <entry key="clientAuth" value="false" />
>>>         <entry key="allowUnsafeLegacyRenegotiation" value="true" />
>>>         <entry key="maxKeepAliveRequests"
>>>     value="${http.max_keep_alive_requests}"/>
>>>         <entry key="useExecutor" value="true"/>
>>>         <entry key="maxThreads" value="${http.max_threads}"/>
>>>         <entry key="acceptorThreadCount"
>>>     value="${http.acceptor_thread_count}"/>
>>>         <entry key="processorCache"
>value="${http.processor_cache}"/>
>>>     </map>
>>>     </property>
>>>     </bean>
>>>     </list>
>>>     </property>
>>>
>>>             <property name="baseHost">
>>>                 <bean class="org.apache.catalina.core.StandardHost">
>>>     <property name="name" value="${http.host}" />
>>>     </bean>
>>>     </property>
>>>
>>>         </bean>
>>>
>>>
>>>     You can now start up red5 from init if you followed the install
>>>     instructions.  You should be able to connect to
>>>     https://yourdomain.com <https://yourdomain.com/>.  If it
>>>     complains the cert is not valid then you missed something in the
>>>     keystone process.  This is the script I use to build my keystone
>>>     from a cron job just before it expires automatically so it
>should
>>>     work.
>>>
>>>     Good luck,
>>>     Jason
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> -- 
>>> WBR
>>> Maxim aka solomax
>>

Reply via email to