在全新centos 7 下安装Jitsi-meet

时间:2025-02-18 14:13:58

在centos 7 下安装Jitsi-meet

参考原文/bigk_9527/article/details/83451143

  • 安装linux扩展源
  1. 阿里源

mv /etc// /etc//        # 复制原有的源文件

wget -O /etc// /repo/              # 通过wget获取阿里云的源文件

yum clean all                                   # 清除缓存

yum makecache   

     2EPEL源

yum install epel-release

 

  • 更新原有旧版本软件、安装必要软件
  1. 卸载centos自带openjdk,安装java-1.8.0-openjdk.x86_64
  2. 安装pcre,pcre-devel,zlib,zlib-devel,openssl1.0.1或openssl1.0.2,,openssl-devel
  3. 安装nginx1.7(1.2版本以下不可以)Nginx代码路径下./configure --with-http_ssl_module ,然后Make ;make install
  4. yum install gcc
  5. yum install prosody
  6. yum install maven
  7. 安装node-v8.10.
  8. 安装git
  • 配置prosody

以下(192.168.90.186)为指定域名,可更改

1.增加配置文件 /etc/prosody//192.168.90.

VirtualHost "192.168.90.186"

    authentication = "anonymous"

    ssl = {

        key = "/var/lib/prosody/192.168.90.";

        certificate = "/var/lib/prosody/192.168.90.";

    }

    modules_enabled = {

        "bosh";

        "pubsub";

    }

    c2s_require_encryption = false

 

VirtualHost "auth.192.168.90.186"

    ssl = {

        key = "/var/lib/prosody/auth.192.168.90.";

        certificate = "/var/lib/prosody/auth.192.168.90.";

    }

    authentication = "internal_plain"

 

 admins = {"focus@auth.192.168.90.186"}

 

Component "conference.192.168.90.186" "muc"

Component "jitsi-videobridge.192.168.90.186"

    component_secret = "mysecret1"

Component "focus.192.168.90.186"

    component_secret = "mysecret2"

 

2、生成密钥

prosodyctl cert generate 192.168.90.186

prosodyctl cert generate auth.192.168.90.186

生成秘钥

prosodyctl register focus auth.192.168.90.186 mysecret3

生成用户密码

 

  1. 修改配置文件:/etc/prosody/

--VirtualHost ""

-- certificate = "/path/to/"

--VirtualHost "localhost"

VirtualHost "192.168.90.186" --增加自己配置的域名

--VirtualHost "192.168.200.132"

ssl={

key="/var/lib/prosody/192.168.90.";  --增加你自己的秘钥地址

certificate="/var/lib/prosody/192.168.90.";

}

 

  • 配置nginx

修改配置文件/usr/local/nginx/conf/

在HTTPS位置增添以下信息

# HTTPS server

    #

    server {

        listen       443 ssl;

        server_name 192.168.90.186;  ##自己在prosody 中配置的域名

 

        ssl_certificate     /var/lib/prosody/192.168.90.;  ##prosody生成的秘钥位置

        ssl_certificate_key /var/lib/prosody/192.168.90.; ## prosody生成的秘钥位置

 

        ssl_session_cache    shared:SSL:1m;

        ssl_session_timeout  5m;

 

        ssl_ciphers  HIGH:!aNULL:!MD5;

        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

        ssl_prefer_server_ciphers  on;

        root /home/software/jitsi-meet-master; ###jitsi-meet的根目录

         index ;

         error_page 404 /;

        location / {

              alias /home/software/jitsi-meet-master/; ##jitsi-meet的配置文件位置

        }

        location ~ ^/([a-zA-Z0-9=\?]+)$ {

             rewrite ^/(.*)$ / break;

                }

 

        location / {

        ssi on;

        }

        ##Backward compatibility

         location ~ /external_api.* {

        root /home/software/jitsi-meet-master/libs; ##jitsi-meet的配置文件位置

        }

        # BOSH

        location /http-bind{

                proxy_pass http://localhost:5280/http-bind;

                proxy_set_header X-Forwarded-For $remote_addr;

                proxy_set_header Host $http_host;

        }

}

  • 安装 jitsi-videobridge

wget /jitsi-videobridge/linux/

解压后,进入文件夹,执行

./ --host=localhost --domain=192.168.90.186 --port=5347 --secret=mysecret1 &

 

  • 安装jicofo

sudo git clone /jitsi/

cd jicofo/

mvn package -DskipTests -=false

执行成功后, 进入target文件夹,选择系统对应的jicofo-{lin/lin64/win}-1.包

将该压缩包解压到jicofo/文件夹下,并重命名为jicofo。

进入 jicofo/jicofo/,执行

./ --host=localhost --domain=192.168.90.186 --secret=mysecret2 --user_domain=auth.192.168.90.186 --user_name=focus --user_password=mysecret3

 

  • 安装jitsi-meet

(安装时不要使用root账户,会有异常惊喜出现,不要问我怎么知道的。)

sudo git clone /jitsi/

cd jitsi-meet/

npm install

Make

成功后,修改

hosts: {

        // XMPP domain.

        domain: '192.168.90.186', //你自己的域名

 

        // XMPP MUC domain. FIXME: use XEP-0030 to discover it.

        muc: 'conference.192.168.90.186',

 

        // When using authentication, domain for guest users.

        // anonymousdomain: '',

 

        // Domain for authenticated users. Defaults to <domain>.

        // authdomain: '',

 

        // Jirecon recording component domain.

        // jirecon: '',

 

        // Call control component (Jigasi).

        // call_control: '',

     bridge: 'jitsi-videobridge.192.168.90.186',  //添加的配置

        // Focus component domain. Defaults to focus.<domain>.

        focus: 'focus.192.168.90.186',

    },

    useNicks:false,  //添加的配置

 

    // BOSH URL. FIXME: use XEP-0156 to discover it.

bosh: '//192.168.90.186/http-bind',

 

八、配置秘钥

Keytool –importcert -alias 192.168.90.186 -keystore /home/software/jdk1.8.0_161/jre/lib/security/cacerts -storepass changeit -file /var/lib/prosody/192.168.90.

 

如果配置密钥不成功,尝试在文件中添加:

.DISABLE_CERTIFICATE_VERIFICATION=true