AI 能否應對越來越多的勒索軟件攻擊?
勒索軟件攻擊呈上升趨勢,但人工智能能否幫助應對最新的計算機病毒?AI 是答案嗎?在這裡閱讀知道是 AI 布恩還是禍根
GoCD是一个开源的持续交付和自动化系统。它允许您使用并行和顺序执行为复杂的工作流建模。其价值流图使您可以轻松地轻松可视化复杂的工作流程。GoCD使您可以轻松比较两个版本,并部署所需版本的应用程序。GoCD生态系统由GoCD服务器和GoCD代理组成。GoCD负责控制一切,例如运行基于Web的用户界面以及管理代理并向其提供作业。Go代理负责运行作业和部署。
在本教程中,我们将使用192.168.1.1
公共IP地址和 gocd.example.com
指向Vultr实例的域名。请确保将所有示例域名和IP地址替换为实际的域名和IP地址。
使用指南如何更新Ubuntu 16.04更新基本系统。系统更新后,继续安装Java。
GoCD需要Java版本8,并支持Oracle Java和OpenJDK。添加适用于Oracle Java 8的Ubuntu存储库。
sudo add-apt-repository --yes ppa:webupd8team/java
sudo apt update
安装Oracle Java。
sudo apt -y install oracle-java8-installer
检查版本。
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的默认路径。
sudo apt -y install oracle-java8-set-default
您可以JAVA_HOME
通过运行验证是否已设置。
echo $JAVA_HOME
你会看见。
user@vultr:~$ echo $JAVA_HOME
/usr/lib/jvm/java-8-oracle
如果您根本看不到任何输出,则需要从当前shell注销并重新登录。
将GoCD的官方存储库安装到系统中。
echo "deb https://download.gocd.org /" | sudo tee /etc/apt/sources.list.d/gocd.list
curl https://download.gocd.org/GOCD-GPG-KEY.asc | sudo apt-key add -
sudo apt update
在系统中安装GoCD服务器。
sudo apt install -y go-server
启动GoCD并使其在启动时自动启动。
sudo systemctl start go-server
sudo systemctl enable go-server
在访问GoCD仪表板之前,让我们创建一个新目录来存储工件。工件可以存储在安装了操作系统和应用程序的同一磁盘上。或者,您可以使用专用磁盘或块存储驱动器来存储工件。
如果您希望使用相同的磁盘来存储工件,则只需创建一个新目录并将所有权提供给GoCD用户即可。
sudo mkdir /opt/artifacts
sudo chown -R go:go /opt/artifacts
GoCD软件建议您使用其他分区或驱动器来存储工件。在持续的集成和交付平台中,经常会生成工件。连续生成新的工件时,磁盘空间会随着时间的推移而减少。在某个阶段,您的系统将耗尽可用磁盘空间,并且系统上运行的服务将失败。为解决此问题,您可以连接新的Vultr块存储驱动器以存储工件。如果仍然希望将工件存储在同一驱动器上,请跳至“配置GoCD”部分。
部署新的块存储驱动器 并将其附加到GoCD服务器实例。现在,在块存储设备上创建一个新分区。
sudo parted -s /dev/vdb mklabel gpt
sudo parted -s /dev/vdb unit mib mkpart primary 0% 100%
在新磁盘上创建文件系统。
sudo mkfs.ext4 /dev/vdb1
安装块存储驱动器。
sudo mkdir /mnt/artifacts
sudo cp /etc/fstab /etc/fstab.backup
echo "
/dev/vdb1 /mnt/artifacts ext4 defaults,noatime 0 0" | sudo tee -a /etc/fstab
sudo mount /mnt/artifacts
现在,运行df
,您将看到安装在上的新块存储驱动器 /mnt/artifacts
。
[user@vultr ~]$ df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/vda1 20616252 6313892 13237464 33% /
...
/dev/vdb1 10188052 36888 9610596 1% /mnt/artifacts
向GoCD用户提供目录的所有权。
sudo chown -R go:go /mnt/artifacts
现在,您可以在上访问GoCD仪表板 http://192.168.1.1:8153
。要在安全连接上访问GoCD仪表板,请访问 https://192.168.1.1:8154
。您将收到一条错误消息,显示证书无效。您可以放心地忽略该错误,因为证书是自签名的。为了安全起见,应始终在安全连接上使用仪表板。
设置新管道之前,请Admin >> Server Configuration
从顶部导航栏中导航到“ ”。
在“ Site URL
”字段中输入您的不安全站点的URL,在“ ”字段中输入安全站点的URL Secure Site URL
。
接下来,提供您的SMTP服务器详细信息,以从GoCD发送电子邮件通知。
最后,提供您想要存储工件的位置的路径。如果您选择将工件存储在与操作系统相同的磁盘上,请输入 /opt/artifacts
;如果选择附加块存储驱动器,则可以输入 /mnt/artifacts
。
您还可以将GoCD配置为自动删除旧的工件。根据您的磁盘大小配置下一个选项。但是,自动删除选项不会备份您的旧工件。要手动进行备份然后删除旧的工件,请通过为“ Never
”选项选择“ ”选项来禁用自动删除Auto delete old artifacts
。
您将需要重新启动GoCD服务器,以便应用新的更改。
sudo systemctl restart go-server
默认情况下,GoCD仪表板未配置为使用任何类型的身份验证,但它支持使用密码文件和LDAP的身份验证。在本教程中,我们将设置基于密码的身份验证。
注意: 设置身份验证是可选步骤,但是强烈建议将其用于面向公众的服务器,例如Vultr。
安装Apache工具,以便我们可以使用该 htpasswd
命令创建加密的密码文件。
sudo apt -y install apache2-utils
htpasswd
使用Bcrypt加密,使用命令创建密码文件 。
sudo htpasswd -B -c /etc/go/passwd_auth goadmin
为用户提供两次密码。您将看到以下输出。
[user@vultr ~]$ sudo htpasswd -B -c /etc/go/passwd_auth goadmin
New password:
Re-type new password:
Adding password for user goadmin
您可以使用上面的相同命令添加任意数量的用户,但是删除该 -c
选项。该 -c
选项将替换现有文件,用新用户替换旧用户。
sudo htpasswd -B /etc/go/passwd_auth gouser1
现在我们已经创建了密码文件,再次访问GoCD仪表板。Admin >> Security >> Authorization Configurations
从顶部导航栏中导航到“ ”。单击 Add
按钮并提供任何ID。选择“ Password File Authentication Plugin for GoCD
”作为插件ID,然后将路径指向密码文件。现在,单击“ Check Connection
”按钮以验证GoCD可以使用密码文件进行身份验证。
最后,保存身份验证方法。重新加载仪表板,它将自动将您注销。您现在将看到一个登录屏幕。使用之前创建的凭据登录。
您将需要手动提升管理员用户,否则,所有用户都将具有管理员权限。Admin >> User Summary
从顶部导航栏中导航到“ ”。
现在,选择您创建的管理员用户,然后单击“ Roles
”下拉菜单。选中“ Go System Administrator
”复选框,将用户提升为唯一的管理员。
要在密码文件中创建的GoCD中添加用户,请单击“ ADD
”按钮并搜索要添加的用户。用户也将在首次登录时自动添加到GoCD仪表板。显然,要使用户登录,必须将其添加到我们之前创建的密码文件中。
默认情况下,GoCD侦听端口 8153
和 8154
安全连接。尽管端口 8154
提供了与应用程序的安全连接,但由于它使用自签名证书,因此它还会显示浏览器错误。在本教程的这一部分中,我们将使用“让我们加密”的免费SSL证书安装和保护Nginx。Nginx Web服务器将充当反向代理,将传入的请求转发到GoCD的 HTTP
端点。
安装Nginx。
sudo apt -y install nginx
启动Nginx并使它能够在启动时自动启动。
sudo systemctl start nginx
sudo systemctl enable nginx
添加Certbot存储库。
sudo add-apt-repository --yes ppa:certbot/certbot
sudo apt-get update
安装Certbot,这是Let's Encrypt CA的客户端应用程序。
sudo apt -y install certbot
注意: 要从Let's Encrypt CA获取证书,必须为其生成证书的域指向服务器。如果不是,请对域的DNS记录进行必要的更改,并在再次发出证书请求之前,等待DNS传播。Certbot在提供证书之前会检查域权限。
生成SSL证书。
sudo certbot certonly --webroot -w /var/www/html -d gocd.example.com
生成的证书可能存储在中 /etc/letsencrypt/live/gocd.example.com/
。SSL证书将存储为 fullchain.pem
,私钥将存储为 privkey.pem
。
让我们加密证书的有效期限为90天,因此建议您使用cron作业设置证书的自动续订。
打开cron作业文件。
sudo crontab -e
将以下行添加到文件末尾。
30 5 * * * /usr/bin/certbot renew --quiet
上面的cron作业每天凌晨5:30运行。如果证书到期,它将自动更新。
为GoCD Web界面创建一个新的配置文件。
sudo nano /etc/nginx/sites-available/gocd
填充文件。
upstream gocd {
server 127.0.0.1:8153;
}
server {
listen 80;
server_name gocd.example.com;
return 301 https://$host$request_uri;
}
server {
listen 443;
server_name gocd.example.com;
ssl_certificate /etc/letsencrypt/live/gocd.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/gocd.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/gocd.access.log;
location / {
proxy_pass http://gocd;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_redirect off;
}
location /go {
proxy_pass http://gocd/go;
proxy_http_version 1.1;
proxy_set_header Upgrade websocket;
proxy_set_header Connection upgrade;
proxy_read_timeout 86400;
}
}
激活配置文件。
sudo ln -s /etc/nginx/sites-available/gocd /etc/nginx/sites-enabled/gocd
重新启动Nginx Web服务器以实现配置更改。
sudo systemctl restart nginx
现在,您可以通过访问GoCD仪表板 https://gocd.example.com
。使用管理员凭据登录到仪表板,然后Admin >> Server Configuration
从顶部导航栏中导航到“ ”。
将“ Site URL
”和“ Secure Site URL
”设置为 https://gocd.example.com
。
在GoCD持续集成环境中,GoCD代理是负责执行所有任务的工作人员。当检测到源更改时,将触发管道,并将作业分配给可用的工作程序以执行。然后,代理执行任务并在执行后报告最终状态。
要运行管道,必须至少配置一个代理。继续在GoCD服务器上安装GoCD代理。
由于我们已经将GoCD存储库导入到服务器中,因此我们可以直接安装Go Agent。
sudo apt install -y go-agent
现在,启动GoCD服务器,并使它能够在引导时自动启动。
sudo systemctl start go-agent
sudo systemctl enable go-agent
检测到本地主机上运行的GoCD代理会自动启用。
勒索軟件攻擊呈上升趨勢,但人工智能能否幫助應對最新的計算機病毒?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 部分
過去幾十年,醫療保健領域的人工智能取得了巨大飛躍。因此,醫療保健中人工智能的未來仍在日益增長。