Kan AI vechten met toenemend aantal ransomware-aanvallen?
Ransomware-aanvallen nemen toe, maar kan AI helpen het nieuwste computervirus het hoofd te bieden? Is AI het antwoord? Lees hier weten is AI boezem of vloek
Mastodon is een open source zelf gehoste microblogging- en sociale netwerkserver. Het biedt Twitter-achtige functies; maar in plaats van gecontroleerd te worden door één enkel bedrijf, is het een federatie van gedecentraliseerde servers die met elkaar verbonden zijn om een heel systeem van sociale netwerken te vormen. Een klein team kan hun Mastodon-serverinstantie starten om onderling en met de andere gebruikers van de federatieve gemeenschap te communiceren. Het stelt u ook in staat om uw eigen privacy- en moderatiebeleid te kiezen en te definiëren hoe u communiceert met andere gebruikers van verschillende servers. De inhoud die een individuele gebruiker maakt en waarop hij zich abonneert, wordt gehost op de server waarop zijn / haar account is gemaakt. Gebruikers kunnen elkaar volgen, zelfs als ze niet op dezelfde server worden gehost. Elke gebruiker in het Mastodon-netwerk heeft zijn / haar unieke naam of ID die in de@[email protected]
formaat. Clientapplicaties voor Mastodon zijn beschikbaar voor bijna alle platforms.
Opmerking: we gebruiken social.example.com
de domeinnaam die wordt gebruikt voor de Mastodon-instantie. Vervang alle exemplaren van social.example.com
door uw daadwerkelijke domeinnaam die u wilt gebruiken voor uw Mastodon-toepassing .
Update uw basissysteem met behulp van de handleiding CentOS 7 bijwerken , indien nodig. Zodra uw systeem is bijgewerkt, gaat u verder met het installeren van de vereiste afhankelijkheden.
Mastodon vereist verschillende afhankelijkheden om te werken. Installeer de nieuwste versie van Node.js
, die zal worden gebruikt om de JavaScript-bestanden te compileren.
curl --silent --location https://rpm.nodesource.com/setup_8.x | sudo bash -
sudo yum -y install nodejs
Installeer Yarn
, wat een snelle, betrouwbare en veilige applicatie voor afhankelijkheidsbeheer is. We zullen Yarn gebruiken om de afhankelijkheden van Node.js te installeren.
sudo wget https://dl.yarnpkg.com/rpm/yarn.repo -O /etc/yum.repos.d/yarn.repo
sudo yum -y install yarn
Installeer Redis
. Redis is een opslag- en cachetoepassing in het geheugen.
sudo yum -y install redis
Start Redis en schakel het automatisch in bij het opstarten.
sudo systemctl start redis
sudo systemctl enable redis
Installeer nog een paar afhankelijkheden die nodig zijn om de Ruby
installatie en andere afhankelijkheden te bouwen .
sudo yum -y install ImageMagick git libxml2-devel libxslt-devel gcc bzip2 openssl-devel zlib-devel gdbm-devel ncurses-devel autoconf automake bison gcc-c++ libffi-devel libtool patch readline-devel sqlite-devel glibc-headers glibc-devel libyaml-devel libicu-devel libidn-devel
U moet ook de ontwikkeltools installeren.
sudo yum -y groupinstall 'Development Tools'
PostgreSQL is een relationeel databasesysteem voor objecten. U moet de PostgreSQL-repository aan uw systeem toevoegen, aangezien de standaardrepository yum
een oudere versie van de applicatie bevat.
sudo rpm -Uvh https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-7-x86_64/pgdg-centos96-9.6-3.noarch.rpm
Installeer de PostgreSQL-databaseserver.
sudo yum -y install postgresql96-server postgresql96-contrib postgresql96-devel
Initialiseer de database.
sudo /usr/pgsql-9.6/bin/postgresql96-setup initdb
Bewerk het pg_hba.conf
bestand om op MD5
basis van authenticatie in te schakelen .
sudo nano /var/lib/pgsql/9.6/data/pg_hba.conf
Zoek de volgende regels en verander peer
naar trust
en ident
naar 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
Eenmaal bijgewerkt, zou de configuratie er als volgt uit moeten zien.
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all trust
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5
Start de PostgreSQL-server en schakel deze automatisch in bij het opstarten.
sudo systemctl start postgresql-9.6
sudo systemctl enable postgresql-9.6
Wijzig het wachtwoord voor de standaard PostgreSQL-gebruiker.
sudo passwd postgres
Log in op de shell als PostgreSQL
gebruiker.
sudo su - postgres
Maak een nieuwe PostgreSQL
gebruiker voor Mastodon.
createuser mastodon
PostgreSQL biedt de psql
shell om query's op de database uit te voeren. Schakel over naar de PostgreSQL-shell door te draaien.
psql
Stel een wachtwoord in voor de nieuw aangemaakte gebruiker voor de Mastodon-database en geef toestemming om nieuwe databases toe te voegen.
ALTER USER mastodon WITH ENCRYPTED password 'DBPassword' CREATEDB;
Vervang DBPassword
door een sterk wachtwoord. Verlaat de psql
shell:
\q
Schakel over naar de sudo
gebruiker.
exit
Installeer nog een paar vereiste PostgreSQL-afhankelijkheden.
sudo yum -y install libpqxx-devel protobuf-devel
Maak een nieuwe gebruiker voor Mastodon en schakel over naar de zojuist aangemaakte gebruiker.
sudo adduser mastodon -d /opt/mastodon
sudo su - mastodon
We zullen de nieuwste versie van Ruby installeren met Ruby Version Manager of RVM. Het wordt gebruikt om meerdere versies van Ruby te installeren en te beheren.
Voeg de GPG
sleutel van RVM toe aan uw server.
gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
Installeer RVM.
curl -sSL https://get.rvm.io | bash -s stable
source /opt/mastodon/.rvm/scripts/rvm
Haal nu de lijst op met de beschikbare versies van Ruby.
rvm list known
Je ziet de volgende output.
[mastodon@vultr ~]$ rvm list known
# MRI Rubies
[ruby-]1.8.6[-p420]
[ruby-]1.8.7[-head] # security released on head
[ruby-]1.9.1[-p431]
[ruby-]1.9.2[-p330]
[ruby-]1.9.3[-p551]
[ruby-]2.0.0[-p648]
[ruby-]2.1[.10]
[ruby-]2.2[.7]
[ruby-]2.3[.4]
[ruby-]2.4[.1]
ruby-head
...
Installeer nu de nieuwste versie van Ruby uit de lijst.
rvm install 2.4
Gebruik de geïnstalleerde versie van Ruby.
rvm use 2.4
Je zou de versie moeten kunnen verifiëren.
ruby -v
Je zou een vergelijkbare output moeten zien.
[mastodon@vultr ~]$ ruby -v
ruby 2.4.1p111 (2017-03-22 revision 58053) [x86_64-linux]
Installeer bundler
, wat de afhankelijkheidsmanager is voor de Ruby-applicatie.
gem install bundler
Schakel nu over naar de homedirectory van de Mastodon-gebruiker en kloon de toepassingsrepository-bestanden van Github.
cd ~
git clone https://github.com/tootsuite/mastodon.git app
Verplaats de toepassingsmap en bekijk de nieuwste releases van de toepassing.
cd ~/app
git checkout $(git describe --tags `git rev-list --tags --max-count=1`)
Configureer de bundle
om een aangepast pad te gebruiken voor de PostgreSQL-configuratie. Installeer ook de Ruby-afhankelijkheden.
bundle config build.pg --with-pg-config=/usr/pgsql-9.6/bin/pg_config
bundle install --deployment --without development test
Installeer de afhankelijkheden van Node.js met Yarn.
yarn install --pure-lockfile
U moet een configuratiebestand maken voor de Mastodon-applicatie. Kopieer het voorbeeldconfiguratiebestand.
cd ~/app
cp .env.production.sample .env.production
Voordat u het bestand bewerkt, genereert u er drie verschillende secrets
door driemaal de volgende opdracht uit te voeren. U moet deze geheimen in het configuratiebestand instellen.
RAILS_ENV=production bundle exec rake secret
Je zou een vergelijkbare output moeten krijgen.
[mastodon@vultr app]$ RAILS_ENV=production bundle exec rake secret
0f17dab1cf4a07f6fac671ecd5815adcb59d012b338dae9350c66402250c6c729dccd6182b1a8f75c4fde55453ce283ea66e07ed4466cdc6d4d6974c98512967
Bewerk het configuratiebestand met de nano
editor.
nano .env.production
Zoek de volgende regels en wijzig de waarden dienovereenkomstig.
REDIS_HOST=127.0.0.1
REDIS_PORT=6379
Geef de databasereferenties op, volgens de databasegebruiker die u tijdens de installatie van PostgreSQL hebt gemaakt. Geef een naam op voor de databasenaam, aangezien Mastodon automatisch de database maakt met de naam die u opgeeft.
DB_HOST=127.0.0.1
DB_USER=mastodon
DB_NAME=mastodon
DB_PASS=DBPassword
DB_PORT=5432
Stel de domeinnaam van de applicatie in.
LOCAL_DOMAIN=social.example.com
Zoek de volgende regels en stel de waarde ervan in op de geheimen die je hebt gegenereerd.
PAPERCLIP_SECRET=
SECRET_KEY_BASE=
OTP_SECRET=
Sla het bestand op en verlaat de editor.
Voer nu de volgende opdracht uit om Web Push VAPID
sleutels te genereren . U krijgt een foutmelding bij het genereren van de Web Push VAPID-sleutels als u de geheimen in het hierboven genoemde configuratiebestand niet hebt ingesteld.
RAILS_ENV=production bundle exec rake mastodon:webpush:generate_vapid_key
Je zou de volgende output moeten zien.
[mastodon@vultr app]$ RAILS_ENV=production bundle exec rake mastodon:webpush:generate_vapid_key
VAPID_PRIVATE_KEY=DCMQdSPkdm-mepsNh4F3suc-UIvsABCvwFd03jSVemM=
VAPID_PUBLIC_KEY=BMMVcVXmqnV0C8S_ybZ7eQH-MXBEX2exqfdPSYQiMMUF2rRxfhoEtVF931i26ebMgmslHB_nvVadOdcBPhaFEjw=
Open het configuratiebestand opnieuw en stel de gegenereerde sleutels in hun respectievelijke regels in.
VAPID_PRIVATE_KEY=
VAPID_PUBLIC_KEY=
Geef ten slotte de informatie van uw SMTP-mailserver op, zodat de applicatie e-mails naar gebruikers kan sturen. Het is belangrijk dat u een werkende SMTP-server gebruikt, omdat gebruikers bij nieuwe registratie een e-mail ontvangen met een activeringslink. Nieuwe gebruikers zullen op de activatielink moeten klikken om hun account te activeren.
SMTP_SERVER=mail.example.com
SMTP_PORT=456
[email protected]
SMTP_PASSWORD=MailPassword
[email protected]
SMTP_TLS=true
Als je klaar bent, sla je het bestand op en verlaat je de editor. U hebt de basisconfiguratie van Mastodon-instantie gedaan.
Stel de PostgreSQL-database voor de eerste keer in.
RAILS_ENV=production bundle exec rails db:setup
Eerst zal de bovenstaande opdracht een nieuwe database maken met de naam die in de configuratie wordt genoemd. Vervolgens wordt de database geschreven volgens de configuratie.
Compileer alle bestanden CSS
en alle JavaScript
bestanden om de cache te maken.
RAILS_ENV=production bundle exec rails assets:precompile
Mastodon is nu geïnstalleerd op uw server. Nu moet u een Nginx
webserver instellen om de applicatie te bedienen en Systemd
services instellen om de Mastodon-services uit te voeren.
Vanaf nu moeten we de opdrachten uitvoeren met de sudo
gebruiker.
We zullen de Nginx-webserver gebruiken als een reverse proxy om de applicatie aan de gebruikers te bedienen. We zullen ook SSL-certificaten verkrijgen en installeren via Let's Encrypt.
Installeer Nginx en Certbot. Certbot is de officiële certificeringsinstantie voor Let's Encrypt CA.
sudo yum -y install nginx certbot
Pas uw firewall-instelling aan om de standaard HTTP
en HTTPS
poorten door de firewall heen te laten, aangezien Certbot een HTTP-verbinding moet maken om de domeinautoriteit te verifiëren.
sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload
Opmerking: om certificaten van Let's Encrypt CA te verkrijgen, moet u ervoor zorgen dat het domein waarvoor u de certificaten wilt genereren, naar de server is gericht. Zo niet, breng dan de nodige wijzigingen aan in de DNS-records van uw domein en wacht tot de DNS zich verspreidt voordat u het certificaatverzoek opnieuw indient. Certbot controleert de domeinautoriteit voordat de certificaten worden verstrekt .
Gebruik nu de ingebouwde webserver in Certbot om de certificaten voor uw domein te genereren.
sudo certbot certonly --standalone -d social.example.com
De gegenereerde certificaten worden waarschijnlijk in de /etc/letsencrypt/live/social.example.com/
directory opgeslagen . Het SSL-certificaat blijft behouden fullchain.pem
en de privésleutel wordt opgeslagen als privkey.pem
.
Let's Encrypt-certificaten verlopen over 90 dagen, dus het wordt aanbevolen om automatische verlenging in te stellen voor de certificaten met Cron-taken. Cron is een systeemservice die wordt gebruikt om periodieke taken uit te voeren.
Open het cron-taakbestand.
sudo crontab -e
Voeg de volgende regel toe.
0 0 * * * /usr/bin/certbot renew --quiet
De bovenstaande cron-taak wordt dagelijks om middernacht uitgevoerd. Als het certificaat afloopt, worden de certificaten automatisch verlengd.
Maak nu een nieuw Nginx-serverblok voor de Mastodon-site.
sudo nano /etc/nginx/conf.d/mastodon.conf
Vul hiermee het bestand in.
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
server {
listen 80;
listen [::]:80;
server_name social.example.com;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name social.example.com;
ssl_protocols TLSv1.2;
ssl_ciphers HIGH:!MEDIUM:!LOW:!aNULL:!NULL:!SHA;
ssl_prefer_server_ciphers on;
ssl_session_cache shared:SSL:10m;
ssl_certificate /etc/letsencrypt/live/social.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/social.example.com/privkey.pem;
keepalive_timeout 70;
sendfile on;
client_max_body_size 0;
root /opt/mastodon/app/public;
gzip on;
gzip_disable "msie6";
gzip_vary on;
gzip_proxied any;
gzip_comp_level 6;
gzip_buffers 16 8k;
gzip_http_version 1.1;
gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;
add_header Strict-Transport-Security "max-age=31536000";
location / {
try_files $uri @proxy;
}
location ~ ^/(emoji|packs|system/accounts/avatars|system/media_attachments/files) {
add_header Cache-Control "public, max-age=31536000, immutable";
try_files $uri @proxy;
}
location @proxy {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
proxy_set_header Proxy "";
proxy_pass_header Server;
proxy_pass http://127.0.0.1:3000;
proxy_buffering off;
proxy_redirect off;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
tcp_nodelay on;
}
location /api/v1/streaming {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
proxy_set_header Proxy "";
proxy_pass http://127.0.0.1:4000;
proxy_buffering off;
proxy_redirect off;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
tcp_nodelay on;
}
error_page 500 501 502 503 504 /500.html;
}
Zorg ervoor dat u de domeinnaam en het pad naar de SSL-certificaten wijzigt.
Nu kunt u de Nginx-webserver starten en deze automatisch laten opstarten.
sudo systemctl start nginx
sudo systemctl enable nginx
U moet ook poort 4000
via de firewall toestaan, aangezien de poort de streaming API-service levert.
sudo firewall-cmd --permanent --zone=public --add-port=4000/tcp
sudo firewall-cmd --reload
Geef de uitvoeringsrechten voor de Mastodon-directory.
sudo chmod +x /opt/mastodon
U moet drie verschillende processen starten om de Mastodon-server met succes te starten. Het gebruik van de Systemd-service zorgt ervoor dat de Mastodon-server automatisch wordt gestart bij het opstarten en storingen verwerkt.
Maak een nieuwe systemd-service om de Mastodon-webservice uit te voeren. Deze service start de ingebouwde webserver op poort 3000
.
sudo nano /etc/systemd/system/mastodon-web.service
Vul het bestand met de volgende inhoud.
[Unit]
Description=Mastodon Web Service
After=network.target
[Service]
Type=simple
User=mastodon
Group=mastodon
WorkingDirectory=/opt/mastodon/app
Environment="RAILS_ENV=production"
Environment="PORT=3000"
ExecStart=/bin/bash -lc 'bundle exec puma -C config/puma.rb'
TimeoutSec=15
Restart=always
[Install]
WantedBy=multi-user.target
Maak de tweede Systemd-service om de Mastodon-achtergrondwachtrijservice uit te voeren. De Mastodon-wachtrijservice zorgt voor alle achtergrondtaken.
sudo nano /etc/systemd/system/mastodon-queue.service
Vul het bestand met de volgende inhoud.
[Unit]
Description=Mastodon Queue Service
After=network.target
[Service]
Type=simple
User=mastodon
WorkingDirectory=/opt/mastodon/app
Environment="RAILS_ENV=production"
Environment="DB_POOL=5"
ExecStart=/bin/bash -lc 'bundle exec sidekiq -c 5 -q default -q mailers -q pull -q push'
TimeoutSec=15
Restart=always
[Install]
WantedBy=multi-user.target
Maak ten slotte het laatste servicebestand voor de Mastodon streaming API-service.
sudo nano /etc/systemd/system/mastodon-api.service
Vul het bestand met de volgende inhoud.
[Unit]
Description=Mastodon Streaming
After=network.target
[Service]
Type=simple
User=mastodon
WorkingDirectory=/opt/mastodon/app
Environment="NODE_ENV=production"
Environment="PORT=4000"
ExecStart=/bin/npm run start
TimeoutSec=15
Restart=always
[Install]
WantedBy=multi-user.target
Schakel de Mastodon-services in om automatisch bij het opstarten te starten.
sudo systemctl enable mastodon-web mastodon-queue mastodon-api
Om de Mastodon-services te starten, kunt u dit uitvoeren.
sudo systemctl start mastodon-web mastodon-queue mastodon-api
Om de status van de services te controleren, kunt u dit uitvoeren.
sudo systemctl status mastodon-web mastodon-queue mastodon-api
U kunt nu toegang krijgen tot de Mastodon-applicatie door naar te gaan https://social.example.com
. Maak een nieuw gebruikersaccount aan op uw server en verifieer het gebruikersaccount door de link in de e-mail te openen. Voer dit uit om beheerdersrechten te verlenen aan het account dat u zojuist hebt gemaakt.
sudo su - mastodon && cd ~/app
RAILS_ENV=production bundle exec rails mastodon:make_admin USERNAME=<user_name>
Vervang <user_name>
door de daadwerkelijke gebruikersnaam die u hebt gebruikt om het account in de Mastodon-interface te maken.
Uw Mastodon-exemplaar is nu geïnstalleerd en geconfigureerd om te worden uitgevoerd. Nodig eerst uw vrienden uit om deel te nemen aan uw instantie en verken de functies van Mastodon. U kunt uw sociale netwerksite mobiel gebruiken door een van de beschikbare applicaties voor verschillende platforms te downloaden .
Ransomware-aanvallen nemen toe, maar kan AI helpen het nieuwste computervirus het hoofd te bieden? Is AI het antwoord? Lees hier weten is AI boezem of vloek
ReactOS, een open source en gratis besturingssysteem is hier met de nieuwste versie. Kan het voldoen aan de behoeften van moderne Windows-gebruikers en Microsoft uitschakelen? Laten we meer te weten komen over deze oude stijl, maar een nieuwere OS-ervaring.
WhatsApp heeft eindelijk de Desktop-app voor Mac- en Windows-gebruikers gelanceerd. Nu heb je eenvoudig toegang tot WhatsApp vanuit Windows of Mac. Beschikbaar voor Windows 8+ en Mac OS 10.9+
Lees dit om te weten hoe kunstmatige intelligentie populair wordt onder de kleinschalige bedrijven en hoe het de kansen vergroot om ze te laten groeien en hun concurrenten voorsprong te geven.
Onlangs heeft Apple macOS Catalina 10.15.4 uitgebracht, een aanvullende update om problemen op te lossen, maar het lijkt erop dat de update meer problemen veroorzaakt die ertoe leiden dat mac-machines worden gemetseld. Lees dit artikel voor meer informatie
13 Commerciële data-extractietools voor big data
Onze computer slaat alle gegevens op een georganiseerde manier op, het zogenaamde Journaling-bestandssysteem. Het is een efficiënte methode waarmee de computer bestanden kan zoeken en weergeven zodra u op zoeken drukt.https://wethegeek.com/?p=94116&preview=true
Naarmate de wetenschap zich snel ontwikkelt en veel van onze inspanningen overneemt, nemen ook de risico's toe om onszelf te onderwerpen aan een onverklaarbare singulariteit. Lees, wat singulariteit voor ons kan betekenen.
Een inzicht in 26 Big Data-analysetechnieken: deel 1
AI in de zorg heeft de afgelopen decennia grote sprongen gemaakt. De toekomst van AI in de gezondheidszorg groeit dus nog steeds met de dag.