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
Apache Zeppelin is een webgebaseerde open source notebook en samenwerkingstool voor interactieve data-opname, ontdekking, analyse en visualisatie. Zeppelin ondersteunt meer dan 20 talen, waaronder Apache Spark, SQL, R, Elasticsearch en nog veel meer. Met Apache Zeppelin kunt u prachtige gegevensgestuurde documenten maken en de resultaten van uw analyses bekijken.
Voor deze zelfstudie gebruiken we zeppelin.example.com
de domeinnaam die naar de Vultr-instantie verwijst. Zorg ervoor dat u alle exemplaren van de voorbeelddomeinnaam vervangt door de werkelijke.
Update uw basissysteem met behulp van de handleiding CentOS 7 updaten . Zodra uw systeem is bijgewerkt, gaat u verder met de installatie van Java.
Apache Zeppelin is geschreven in Java, dus het vereist JDK om te werken. Download Oracle SE JDK RPM-pakket.
wget --no-cookies --no-check-certificate --header "Cookie:oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u151-b12/e758a0de34e24606bca991d704f6dcbf/jdk-8u151-linux-x64.rpm"
Installeer het gedownloade pakket.
sudo yum -y localinstall jdk-8u151-linux-x64.rpm
Als Java met succes is geïnstalleerd, moet u de versie ervan kunnen verifiëren.
java -version
Je ziet de volgende output.
[user@vultr ~]$ java -version
java version "1.8.0_151"
Java(TM) SE Runtime Environment (build 1.8.0_151-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.151-b12, mixed mode)
Voordat we verder kunnen gaan, moeten we de JAVA_HOME
en JRE_HOME
omgevingsvariabelen instellen. Vind het absolute pad van het JAVA-uitvoerbare bestand in uw systeem.
readlink -f $(which java)
U zult een vergelijkbare uitvoer zien.
[user@vultr ~]$ readlink -f $(which java)
/usr/java/jdk1.8.0_151/jre/bin/java
Stel nu de JAVA_HOME
en JRE_HOME
omgevingsvariabelen in volgens het pad van de Java-directory.
echo "export JAVA_HOME=/usr/java/jdk1.8.0_151" >> ~/.bash_profile
echo "export JRE_HOME=/usr/java/jdk1.8.0_151/jre" >> ~/.bash_profile
Voer het bash_profile
bestand uit.
source ~/.bash_profile
Nu kunt u de echo $JAVA_HOME
opdracht uitvoeren om te controleren of de omgevingsvariabele is ingesteld.
[user@vultr ~]$ echo $JAVA_HOME
/usr/java/jdk1.8.0_151
Apache Zeppelin verzendt alle afhankelijkheden samen met de binaire bestanden, dus we hoeven niets anders te installeren dan Java. Download het Zeppelin-binaire bestand op uw systeem. Je kunt altijd de nieuwste versie van de applicatie vinden op de downloadpagina van Zeppelin .
wget http://www-us.apache.org/dist/zeppelin/zeppelin-0.7.3/zeppelin-0.7.3-bin-all.tgz
Pak het archief uit.
sudo tar xf zeppelin-*-bin-all.tgz -C /opt
Met de bovenstaande opdracht wordt het archief uitgepakt /opt/zeppelin-0.7.3-bin-all
. Wijzig de directory voor het gemak.
sudo mv /opt/zeppelin-*-bin-all /opt/zeppelin
Apache Zeppelin is nu geïnstalleerd. U kunt de applicatie onmiddellijk starten, maar deze is niet toegankelijk voor u, omdat er localhost
alleen naar wordt geluisterd. We zullen Apache Zeppelin configureren als een service. We zullen de Nginx-webserver ook configureren als een reverse proxy.
In deze stap zullen we een Systemd-eenheidsbestand opzetten voor de Zeppelin-applicatie. Dit zorgt ervoor dat het aanvraagproces automatisch wordt gestart bij het herstarten van het systeem en bij storingen.
Maak om veiligheidsredenen een onbevoegde gebruiker voor het uitvoeren van het Zeppelin-proces.
sudo adduser -d /opt/zeppelin -s /sbin/nologin zeppelin
Geef de bestanden aan de nieuw aangemaakte Zeppelin-gebruiker.
sudo chown -R zeppelin:zeppelin /opt/zeppelin
Maak een nieuw Systemd service unit-bestand.
sudo nano /etc/systemd/system/zeppelin.service
Vul het bestand in met het volgende.
[Unit]
Description=Zeppelin service
After=syslog.target network.target
[Service]
Type=forking
ExecStart=/opt/zeppelin/bin/zeppelin-daemon.sh start
ExecStop=/opt/zeppelin/bin/zeppelin-daemon.sh stop
ExecReload=/opt/zeppelin/bin/zeppelin-daemon.sh reload
User=zeppelin
Group=zeppelin
Restart=always
[Install]
WantedBy=multi-user.target
Start de applicatie.
sudo systemctl start zeppelin
Schakel de Zeppelin-service in om automatisch te starten tijdens het opstarten.
sudo systemctl enable zeppelin
Om te controleren of de service actief is, kunt u het volgende doen.
sudo systemctl status zeppelin
Standaard luistert de Zeppelin-server naar de localhost
poort 8080
. In deze tutorial gebruiken we Nginx als een reverse proxy, zodat de applicatie toegankelijk is via standaard HTTP
en HTTPS
poorten. We zullen ook Nginx configureren om SSL te gebruiken die is gegenereerd met Let's Encrypt gratis SSL CA.
Installeer Nginx.
sudo yum -y install nginx
Start Nginx en schakel het automatisch in tijdens het opstarten.
sudo systemctl start nginx
sudo systemctl enable nginx
Installeer Certbot, de clienttoepassing voor Let's Encrypt CA.
sudo yum -y install certbot
Voordat u de certificaten kunt aanvragen, moet u poort 80
en / 443
of standaard HTTP
en HTTPS
services toestaan via de firewall.
sudo firewall-cmd --zone=public --add-service=http --permanent
sudo firewall-cmd --zone=public --add-service=https --permanent
sudo firewall-cmd --reload
Opmerking : om certificaten van Let's Encrypt CA te verkrijgen, moet het domein waarvoor de certificaten moeten worden gegenereerd, naar de server worden gericht. Zo niet, breng dan de nodige wijzigingen aan in de DNS-records van het domein en wacht tot de DNS is gepropageerd voordat u opnieuw een certificaataanvraag indient. Certbot controleert de domeinautoriteit voordat de certificaten worden verstrekt.
Genereer de SSL-certificaten.
sudo certbot certonly --webroot -w /usr/share/nginx/html -d zeppelin.example.com
De gegenereerde certificaten worden waarschijnlijk opgeslagen in /etc/letsencrypt/live/zeppelin.example.com/
. Het SSL-certificaat wordt opgeslagen als fullchain.pem
en de privésleutel wordt opgeslagen als privkey.pem
.
Let's Encrypt-certificaten verlopen over 90 dagen, daarom wordt aanbevolen om de automatische verlenging van de certificaten in te stellen met Cron-taken.
Open het cron-taakbestand.
sudo crontab -e
Voeg de volgende regel toe aan het einde van het bestand.
30 5 * * * /usr/bin/certbot renew --quiet
De bovenstaande cron-taak wordt elke dag om 05.30 uur uitgevoerd. Als het certificaat afloopt, wordt het automatisch verlengd.
Maak een nieuw serverblokbestand voor de Zeppelin-site.
sudo nano /etc/nginx/conf.d/zeppelin.example.com.conf
Vul het bestand in.
upstream zeppelin {
server 127.0.0.1:8080;
}
server {
listen 80;
server_name zeppelin.example.com;
return 301 https://$host$request_uri;
}
server {
listen 443;
server_name zeppelin.example.com;
ssl_certificate /etc/letsencrypt/live/zeppelin.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/zeppelin.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/zeppelin.access.log;
location / {
proxy_pass http://zeppelin;
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 /ws {
proxy_pass http://zeppelin/ws;
proxy_http_version 1.1;
proxy_set_header Upgrade websocket;
proxy_set_header Connection upgrade;
proxy_read_timeout 86400;
}
}
Start Nginx opnieuw op zodat de wijzigingen van kracht kunnen worden.
sudo systemctl restart nginx zeppelin
Zeppelin is nu toegankelijk op het volgende adres.
https://zeppelin.example.com
Standaard is er geen authenticatie ingeschakeld, dus je kunt de applicatie direct gebruiken.
Omdat de applicatie voor iedereen toegankelijk is, zijn de notitieboeken die u maakt ook voor iedereen toegankelijk. Het is erg belangrijk om anonieme toegang uit te schakelen en authenticatie in te schakelen, zodat alleen de geverifieerde gebruikers toegang hebben tot de applicatie.
Om de standaard anonieme toegang uit te schakelen, kopieert u de configuratiebestandssjabloon naar de live locatie.
cd /opt/zeppelin
sudo cp conf/zeppelin-site.xml.template conf/zeppelin-site.xml
Bewerk het configuratiebestand.
sudo nano conf/zeppelin-site.xml
Zoek de volgende regels in het bestand.
<property>
<name>zeppelin.anonymous.allowed</name>
<value>true</value>
Wijzig de waarde in false
om de anonieme toegang uit te schakelen.
Nu we de anonieme toegang hebben uitgeschakeld, moeten we een soort authenticatiemechanisme inschakelen zodat bevoorrechte gebruikers kunnen inloggen. Apache Zeppelin gebruikt Apache Shiro-authenticatie. Kopieer het Shiro-configuratiebestand.
sudo cp conf/shiro.ini.template conf/shiro.ini
Bewerk het configuratiebestand.
sudo nano conf/shiro.ini
Zoek de volgende regels in het bestand.
[users]
admin = password1, admin
user1 = password2, role1, role2
user2 = password3, role3
user3 = password4, role2
De lijst bevat de gebruikersnaam, het wachtwoord en de rollen van de gebruikers. Voorlopig gebruiken we alleen admin
en user1
. Wijzig het wachtwoord van admin
en user1
en schakel de andere gebruikers uit door ze een opmerking te geven. U kunt ook de gebruikersnaam en rollen van de gebruikers wijzigen. Lees de Shiro-autorisatiegids voor meer informatie over Apache Shiro-gebruikers en -rollen .
Nadat u de wachtwoorden heeft gewijzigd, zou het codeblok er als volgt uit moeten zien.
[users]
admin = StrongPassword, admin
user1 = UserPassword, role1, role2
# user2 = password3, role3
# user3 = password4, role2
Start Zeppelin nu opnieuw op om de wijzigingen toe te passen.
sudo systemctl restart zeppelin
U zou moeten zien dat de authenticatie is ingeschakeld en dat u zich kunt aanmelden met de gebruikersnaam en het wachtwoord die zijn ingesteld in het Shiro-configuratiebestand.
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.