AI 能否應對越來越多的勒索軟件攻擊?
勒索軟件攻擊呈上升趨勢,但人工智能能否幫助應對最新的計算機病毒?AI 是答案嗎?在這裡閱讀知道是 AI 布恩還是禍根
Apache OpenMeetings是一个开源Web会议应用程序。它是用Java编写的,并且支持多个数据库服务器。它提供许多功能,例如音频和视频会议,屏幕共享,文件浏览器,用户审核系统,私人消息和联系人,用于会议计划的集成日历等等。您也可以录制会议会话。它提供SOAP / REST API和多个插件,可轻松与Moodle,Jira,Joomla,Confluence等集成。
在本教程中,我们将使用192.168.1.1
公共IP地址和meetings.example.com
指向Vultr实例的域名。请确保将所有示例IP地址和域名替换为实际的IP地址和域名。
使用指南如何更新CentOS 7更新基本系统。系统更新后,继续安装Java。
OpenMeetings用Java编写,因此它需要Java Runtime Environment(JRE)才能工作。下载最新的可用Oracle SE JDK 8 RPM软件包,其中包括JRE和JDK。
wget --header 'Cookie: oraclelicense=a' http://download.oracle.com/otn-pub/java/jdk/8u161-b12/2f38c3b165be4555a1fa6e98c45e0808/jdk-8u161-linux-x64.rpm
安装下载的软件包。
sudo rpm -Uvh jdk-8u161-linux-x64.rpm
如果Java已成功安装,那么您将能够验证其版本。
java -version
您将看到以下输出。
[user@vultr ~]$ java -version
java version "1.8.0_161"
Java(TM) SE Runtime Environment (build 1.8.0_161-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.161-b12, mixed mode)
在继续进行之前,我们需要设置JAVA_HOME
和JRE_HOME
环境变量。在系统中找到JAVA可执行文件的绝对路径。
readlink -f $(which java)
您将看到类似的输出。
[user@vultr ~]$ readlink -f $(which java)
/usr/java/jdk1.8.0_161/jre/bin/java
现在,根据Java目录的路径设置JAVA_HOME
和JRE_HOME
环境变量。
echo "export JAVA_HOME=/usr/java/jdk1.8.0_161" >> ~/.bash_profile
echo "export JRE_HOME=/usr/java/jdk1.8.0_161/jre" >> ~/.bash_profile
执行bash_profile
文件。
source ~/.bash_profile
现在,您可以运行echo $JAVA_HOME
命令以确保设置了环境变量。
[user@vultr ~]$ echo $JAVA_HOME
/usr/java/jdk1.8.0_161
安装ImageMagick和GhostScript库。
sudo yum -y install epel-release
sudo yum -y install ImageMagick ghostscript
ImageMagick提供了上传图像并将其导入到白板的支持。GhostScript使您可以将PDF上载到白板。
验证ImageMagick和GhostScript的版本,以确保它们已成功安装。
[user@vultr ~]$ identify -version
Version: ImageMagick 6.7.8-9 2016-06-16 Q16 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2012 ImageMagick Studio LLC
Features: OpenMP
[user@vultr ~]$ ghostscript -v
GPL Ghostscript 9.07 (2013-02-14)
Copyright (C) 2012 Artifex Software, Inc. All rights reserved.
此外,我们还需要在系统上安装Apache OpenOffice或LibreOffice。这些安装要么将使OpenMeetings导入在Office文档格式,如文件.doc
,.docx
,.ppt
,.pptx
,或.xlx
。在本教程中,我们将安装Apache OpenOffice。
切换到临时目录并下载Apache OpenOffice RPM。
cd /tmp
wget https://downloads.sourceforge.net/project/openofficeorg.mirror/4.1.5/binaries/en-US/Apache_OpenOffice_4.1.5_Linux_x86-64_install-rpm_en-US.tar.gz
解压缩档案并安装所有RPM软件包。
tar xf Apache_OpenOffice_4.1.5_Linux_x86-64_install-rpm_en-US.tar.gz
cd en-US/RPMS
sudo rpm -Uvh *.rpm
sudo rpm -Uvh desktop-integration/openoffice4.1.5-redhat-menus-*.rpm
要检查OpenOffice是否正确安装并可以正常工作,请openoffice4 -h
在命令行中键入。它将打印其版本和简短帮助。
[user@vultr ~]$ openoffice4 -h
OpenOffice 4.1.5 415m1(Build:9789)
Usage: soffice [options] [documents...]
Options:
-minimized keep startup bitmap minimized.
...
在系统中安装RPMFusion存储库,因为它为FFmpeg和Sound eXchange(SoX)提供了预先构建的软件包。
sudo rpm -Uvh https://download1.rpmfusion.org/free/el/rpmfusion-free-release-7.noarch.rpm
安装FFmpeg和SoX。
sudo yum -y install ffmpeg sox
FFmpeg和SoX将启用会议记录。他们还将在导入媒体的帮助文件,���如.avi
,.flv
,.mov
和.mp4
成白板。通过检查FFmpeg和SoX的版本来验证安装。
[user@vultr ~]$ sox --version
sox: SoX v14.4.1
[user@vultr ~]$ ffmpeg -version
ffmpeg version 2.8.13 Copyright (c) 2000-2017 the FFmpeg developers
built with gcc 4.8.5 (GCC) 20150623 (Red Hat 4.8.5-11)
OpenMeetings支持多种类型的数据库服务器,例如MySQL,PostgreSQL,Apache,Derby和Oracle。在本教程中,我们将使用PostgreSQL服务器托管OpenMeeting数据库。
PostgreSQL是一个对象关系数据库系统,以其稳定性和速度而闻名。默认yum
存储库包含旧版本的PostgreSQL,因此将应用程序最新版本的PostgreSQL存储库添加到系统中。
sudo yum -y install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-1.noarch.rpm
安装PostgreSQL数据库服务器。
sudo yum -y install postgresql10-server postgresql10-contrib postgresql10
初始化数据库。
sudo /usr/pgsql-10/bin/postgresql-10-setup initdb
启动PostgreSQL服务器,并使其在启动时自动启动。
sudo systemctl start postgresql-10
sudo systemctl enable postgresql-10
更改默认PostgreSQL用户的密码。
sudo passwd postgres
以PostgreSQL用户身份登录。
sudo su - postgres
为OpenMeetings用户创建一个新的PostgreSQL用户。
createuser openmeetings
您可以使用任何用户名代替openmeetings
。切换到PostgreSQL shell。
psql
为OpenMeetings数据库的新创建的用户设置密码。
ALTER USER openmeetings WITH ENCRYPTED password 'DBPassword';
替换DBPassword
为安全密码。为OpenMeetings安装创建一个新数据库。
CREATE DATABASE openmeetings OWNER openmeetings;
从psql
外壳退出。
\q
切换到sudo
用户。
exit
编辑pg_hba.conf
文件以启用基于MD5的身份验证。
sudo nano /var/lib/pgsql/10/data/pg_hba.conf
找到以下几行,并将METHOD
列中的值从更改ident
为md5
。
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all peer
# IPv4 local connections:
host all all 127.0.0.1/32 ident
# IPv6 local connections:
host all all ::1/128 ident
更新后,配置将如下所示。
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all peer
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5
保存文件并退出编辑器。重新启动PostgreSQL,以使更改生效。
sudo systemctl restart postgresql-10
由于所有必需的依赖项均已安装。为OpenMeetings创建一个新用户。为了服务器的安全性,建议使用非root用户运行OpenMeetings。
sudo adduser -b /var -s /sbin/nologin openmeetings
上面的命令还将在中创建openmeetings
用户的主目录/var/openmeetings
。
检查Apache OpenMeetings下载页面,以获取指向最新可用版本的链接。下载OpenMeetings档案。
cd /tmp
wget http://www-us.apache.org/dist/openmeetings/4.0.1/bin/apache-openmeetings-4.0.1.tar.gz
将存档解压缩到/var/openmeetings
目录中。
sudo tar xf apache-openmeetings-4.0.1.tar.gz -C /var/openmeetings
向我们先前创建的OpenMeetings用户提供文件的所有权。
sudo chown -R openmeetings:openmeetings /var/openmeetings
在启动应用程序之前,我们需要修改防火墙以允许端口5080
和1935
。
sudo firewall-cmd --zone=public --permanent --add-port=5080/tcp
sudo firewall-cmd --zone=public --permanent --add-port=1935/tcp
sudo firewall-cmd --reload
您现在可以启动应用程序。
sudo su -s /bin/bash -c 'cd /var/openmeetings/ && sh red5.sh' openmeetings
您现在可以http://192.168.1.1:5080/openmeetings
在自己喜欢的浏览器中访问。您将看到欢迎屏幕,其中包含安装GhostScript的说明。
由于我们已经安装了GhostScript,因此请继续进行。在下一个界面上,系统将提示您提供数据库服务器详细信息。选择数据库类型“ PostgreSql
”,并提供您在PostgreSQL安装期间配置的数据库服务器详细信息。
单击“ Check
”按钮,您将收到消息:“ Database check was successful
”。在下一个界面中提供您的管理员帐户详细信息和组名。
配置安装的基本设置;例如允许自我注册,电子邮件验证和默认语言。另外,提供您的SMTP服务器详细信息。如果您尚未准备好SMTP服务器,则稍后还可以在管理员仪表板中提供SMTP详细信息。
它将询问您通往不同应用程序二进制文件的路径。提供/usr/bin
作为ImageMagick,FFmpeg和SoX的路径。如果应用程序为输入的路径提供了错误,则可以which <binary_name>
用来查找二进制文件的绝对路径。例如,which ffmpeg
应该给您/usr/bin/ffmpeg
作为输出。使用/opt/openoffice4
的路径OpenOffice的二进制文件。
由于我们将使用默认值,因此您可以在下一个界面上跳过配置。最后,单击“ Finish
”按钮以安装应用程序并编写数据库。
现在,OpenMeetings已安装在您的服务器上。为了使生产更加友好,我们将设置Systemd来管理OpenMeetings服务器。我们还将使用“让我们加密SSL”作为安全的反向代理来配置Nginx,以为应用程序提供服务。
尽管我们可以使用上面的命令轻松地启动和停止应用程序,但是建议设置Systemd服务单元来管理应用程序。这还将确保在启动时和出现故障时自动启动服务。
通过按“ Ctrl+C
”或杀死openmeetings
用户的外壳来停止OpenMeetings服务器。
sudo pkill -KILL -u openmeetings
为OpenMeetings Server创建一个新的Systemd单位文件。
sudo nano /etc/systemd/system/openmeetings.service
填充文件。
[Unit]
Description=OpenMeeting Service
After=network.target
[Service]
Type=simple
User=openmeetings
WorkingDirectory=/var/openmeetings
ExecStart=/var/openmeetings/red5.sh
Restart=always
[Install]
WantedBy=multi-user.target
启动OpenMeetings服务器,并使它能够在引导时自动启动。
sudo systemctl start openmeetings
sudo systemctl enable openmeetings
要检查服务的状态,可以运行以下命令。
sudo systemctl status openmeetings
您将看到类似的输出。
[root@vultr openmeetings]# sudo systemctl status openmeetings
● openmeetings.service - OpenMeeting Service
Loaded: loaded (/etc/systemd/system/openmeetings.service; enabled; vendor preset: disabled)
Active: active (running) since Wed 2018-01-31 15:40:56 UTC; 38s ago
Main PID: 10522 (java)
CGroup: /system.slice/openmeetings.service
└─10522 /bin/java -Dred5.root=/var/openmeetings -Djava.security.debug=failure -Xms256m...
Jan 31 15:41:29 vultr.guest red5.sh[10522]: [INFO] [Loader:/openmeetings] org.red5.server.Serv...ngs
Jan 31 15:41:29 vultr.guest red5.sh[10522]: [INFO] [Loader:/openmeetings] org.red5.server.Serv...ngs
Jan 31 15:41:29 vultr.guest red5.sh[10522]: DEBUG 01-31 15:41:29.431 16603 343 o.a.o.c.r.Scope...se]
Jan 31 15:41:29 vultr.guest red5.sh[10522]: DEBUG 01-31 15:41:29.531 16703 124 o.a.o.c.r.Scope...ngs
Jan 31 15:41:34 vultr.guest red5.sh[10522]: DEBUG 01-31 15:41:34.421 21593 82 o.a.o.u.Version ...] -
Jan 31 15:41:34 vultr.guest red5.sh[10522]: ##################################################...###
Jan 31 15:41:34 vultr.guest red5.sh[10522]: # Openmeetings is up ... #
Jan 31 15:41:34 vultr.guest red5.sh[10522]: # 4.0.1 3795f14 2017-12-05T16... #
Jan 31 15:41:34 vultr.guest red5.sh[10522]: # and ready to use ... #
Jan 31 15:41:34 vultr.guest red5.sh[10522]: ##################################################...###
Hint: Some lines were ellipsized, use -l to show in full.
默认情况下,OpenMeetings侦听port 5080
。如果浏览器和服务器之间的连接未使用SSL加密,则登录名和其他信息将使用纯文本发送。这可能是潜在的威胁,因为窃听网络的人可能会获取信息。为了缓解此问题,我们将Nginx设置为反向代理,它将侦听默认的HTTPS端口并将所有请求代理到OpenMeetings服务器。
安装Nginx。
sudo yum -y install nginx
启动Nginx并使它能够在启动时自动启动。
sudo systemctl start nginx
sudo systemctl enable nginx
安装Certbot,这是Let's Encrypt CA的客户端应用程序。
sudo yum -y install certbot
在可以请求证书之前,您将需要允许端口80
和/ 443
或标准HTTP
和HTTPS
服务通过防火墙。
sudo firewall-cmd --zone=public --add-service=http --permanent
sudo firewall-cmd --zone=public --add-service=https --permanent
sudo firewall-cmd --reload
注意: 要从Let's Encrypt CA获得证书,必须为其生成证书的域指向服务器。如果不是,请对域的DNS记录进行必要的更改,并在再次发出证书请求之前,等待DNS传播。Certbot在提供证书之前会检查域权限。
生成SSL证书。
sudo certbot certonly --webroot -w /usr/share/nginx/html -d meetings.example.com
生成的证书可能存储在中/etc/letsencrypt/live/meetings.example.com/
。SSL证书将存储为fullchain.pem
,私钥将存储为privkey.pem
。
让我们加密证书的有效期限为90天,因此建议您使用Cron作业设置证书的自动续订。
打开cron作业文件。
sudo crontab -e
在文件末尾添加以下行。
30 5 * * * /usr/bin/certbot renew --quiet
上面的cron作业每天凌晨5:30运行。如果证书到期,它将自动更新。
现在,更改Nginx默认配置文件以删除该default_server
行。
sudo sed -i 's/default_server//g' /etc/nginx/nginx.conf
为OpenMeetings服务器创建一个新的配置文件。
sudo nano /etc/nginx/conf.d/meetings.example.com.conf
填充文件。
server {
listen 80;
server_name meetings.example.com;
return 301 https://$host$request_uri;
}
server {
listen 443;
server_name meetings.example.com;
ssl_certificate /etc/letsencrypt/live/meetings.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/meetings.example.com/privkey.pem;
ssl on;
ssl_session_cache builtin:1000 shared:SSL:10m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
ssl_prefer_server_ciphers on;
access_log /var/log/nginx/openmeetings.access.log;
location / {
proxy_pass http://localhost:5080;
proxy_set_header host $host;
proxy_http_version 1.1;
proxy_set_header upgrade $http_upgrade;
proxy_set_header connection "upgrade";
}
}
检查新配置文件中的错误。
sudo nginx -t
如果看到以下输出,则说明配置没有错误。
[user@vultr ~]$ sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
如果收到某种错误,请确保仔细检查SSL证书的路径。重新启动Nginx Web服务器以实现配置更改。
sudo systemctl restart nginx
在开始使用SSL安全站点上的应用程序之前,您需要在OpenMeetings中进行配置更改。登录到您的OpenMeetings管理控制台,然后导航到“ Administration >> Configuration
”。在ID,键和值表中;找到application.base.url
。https://meetings.example.com
根据您的域名更改其值。通过单击上方的保存图标来保存配置。
重新启动OpenMeetings服务。
sudo systemctl restart openmeetings
现在,您可以https://meetings.example.com
使用自己喜欢的Web浏览器浏览并登录以使用该应用程序。
恭喜,您服务器上现已安装了Apache OpenMeetings。您可以邀请您的朋友并开始使用OpenMeetings进行在线会议。
勒索軟件攻擊呈上升趨勢,但人工智能能否幫助應對最新的計算機病毒?AI 是答案嗎?在這裡閱讀知道是 AI 布恩還是禍根
ReactOS,一個開源和免費的操作系統,這裡有最新版本。它能否滿足現代 Windows 用戶的需求並打倒微軟?讓我們更多地了解這種老式但更新的操作系統體驗。
Whatsapp 終於為 Mac 和 Windows 用戶推出了桌面應用程序。現在您可以輕鬆地從 Windows 或 Mac 訪問 Whatsapp。適用於 Windows 8+ 和 Mac OS 10.9+
閱讀本文以了解人工智能如何在小型公司中變得流行,以及它如何增加使它們成長並為競爭對手提供優勢的可能性。
最近,Apple 發布了 macOS Catalina 10.15.4 補充更新以修復問題,但似乎該更新引起了更多問題,導致 mac 機器變磚。閱讀這篇文章以了解更多信息
大數據的13個商業數據提取工具
我們的計算機以稱為日誌文件系統的有組織的方式存儲所有數據。這是一種有效的方法,可以讓計算機在您點擊搜索時立即搜索和顯示文件。 https://wethegeek.com/?p=94116&preview=true
隨著科學的快速發展,接管了我們的大量工作,我們陷入無法解釋的奇點的風險也在增加。閱讀,奇點對我們意味著什麼。
洞察 26 種大數據分析技術:第 1 部分
過去幾十年,醫療保健領域的人工智能取得了巨大飛躍。因此,醫療保健中人工智能的未來仍在日益增長。