A IA pode lutar contra o aumento do número de ataques de ransomware
Os ataques de ransomware estão aumentando, mas a IA pode ajudar a lidar com os vírus de computador mais recentes? AI é a resposta? Leia aqui para saber se é AI boone ou bane
O Apache Zeppelin é um notebook de código aberto baseado na Web e uma ferramenta colaborativa para ingestão, descoberta, análise e visualização de dados interativos. O Zeppelin suporta mais de 20 idiomas, incluindo Apache Spark, SQL, R, Elasticsearch e muitos mais. O Apache Zeppelin permite criar belos documentos orientados a dados e ver os resultados de suas análises.
Neste tutorial, usaremos zeppelin.example.com
como o nome de domínio apontado para a instância do Vultr. Certifique-se de substituir todas as ocorrências do nome de domínio de exemplo pelo nome real.
Atualize seu sistema base usando o guia Como atualizar o Ubuntu 16.04 . Depois que seu sistema for atualizado, continue com a instalação do Java.
O Apache Zeppelin é escrito em Java, portanto, requer que o JDK funcione. Adicione o repositório Ubuntu para Oracle Java 8.
sudo add-apt-repository --yes ppa:webupd8team/java
sudo apt update
Instale o Oracle Java.
sudo apt -y install oracle-java8-installer
Verifique sua versão.
java -version
Você verá a seguinte saída.
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)
Defina o caminho padrão para o Java instalando o pacote a seguir.
sudo apt -y install oracle-java8-set-default
Você pode verificar se JAVA_HOME
está definido executando.
echo $JAVA_HOME
Você verá.
user@vultr:~$ echo $JAVA_HOME
/usr/lib/jvm/java-8-oracle
Se você não vir nenhuma saída, precisará sair do shell atual e efetuar login novamente.
O Apache Zeppelin envia todas as dependências junto com os arquivos binários, portanto, não precisamos instalar nada além de Java. Faça o download do binário Zeppelin no seu sistema. Você sempre pode encontrar a versão mais recente do aplicativo na página de download do Zeppelin .
wget http://www-us.apache.org/dist/zeppelin/zeppelin-0.7.3/zeppelin-0.7.3-bin-all.tgz
Extraia o arquivo morto.
sudo tar xf zeppelin-*-bin-all.tgz -C /opt
O comando acima irá extrair o arquivo para /opt/zeppelin-0.7.3-bin-all
. Renomeie o diretório por uma questão de conveniência.
sudo mv /opt/zeppelin-*-bin-all /opt/zeppelin
O Apache Zeppelin está agora instalado. Você pode iniciar o aplicativo imediatamente, mas ele não estará acessível, pois ele ouve localhost
apenas. Vamos configurar o Apache Zeppelin como um serviço. Também configuraremos o Nginx como um proxy reverso.
Nesta etapa, configuraremos um arquivo de unidade Systemd para o aplicativo Zeppelin. Isso garantirá que o processo do aplicativo seja iniciado automaticamente na reinicialização e falhas do sistema.
Por motivos de segurança, crie um usuário não privilegiado para executar o processo do Zeppelin.
sudo useradd -d /opt/zeppelin -s /bin/false zeppelin
Forneça a propriedade dos arquivos para o usuário Zeppelin recém-criado.
sudo chown -R zeppelin:zeppelin /opt/zeppelin
Crie um novo arquivo de unidade de serviço Systemd.
sudo nano /etc/systemd/system/zeppelin.service
Preencha o arquivo com o seguinte.
[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
Inicie o aplicativo.
sudo systemctl start zeppelin
Ative o serviço Zeppelin para iniciar automaticamente no momento da inicialização.
sudo systemctl enable zeppelin
Para garantir que o serviço esteja em execução, você pode executar o seguinte.
sudo systemctl status zeppelin
Por padrão, o servidor Zeppelin escuta localhost
na porta 8080
. Usaremos o Nginx como um proxy reverso para que o aplicativo possa ser acessado via padrão HTTP
e HTTPS
portas. Também configuraremos o Nginx para usar um SSL gerado com a autoridade de certificação SSL gratuita Let's Encrypt.
Instale o Nginx.
sudo apt -y install nginx
Inicie o Nginx e permita que ele inicie automaticamente no momento da inicialização.
sudo systemctl start nginx
sudo systemctl enable nginx
Adicione o repositório Certbot.
sudo add-apt-repository --yes ppa:certbot/certbot
sudo apt-get update
Instale o Certbot, que é o aplicativo cliente do Let's Encrypt CA.
sudo apt -y install certbot
Nota : Para obter certificados da Let's Encrypt CA, o domínio para o qual os certificados devem ser gerados deve estar apontado para o servidor. Caso contrário, faça as alterações necessárias nos registros DNS do domínio e aguarde a propagação do DNS antes de fazer a solicitação de certificado novamente. O Certbot verifica a autoridade do domínio antes de fornecer os certificados.
Gere os certificados SSL.
sudo certbot certonly --webroot -w /var/www/html -d zeppelin.example.com
É provável que os certificados gerados sejam armazenados /etc/letsencrypt/live/zeppelin.example.com/
. O certificado SSL será armazenado como fullchain.pem
e a chave privada será armazenada como privkey.pem
.
Os certificados Let's Encrypt expiram em 90 dias, portanto, é recomendável configurar a renovação automática dos certificados usando trabalhos Cron.
Abra o arquivo de tarefa cron.
sudo crontab -e
Adicione a seguinte linha no final do arquivo.
30 5 * * * /usr/bin/certbot renew --quiet
O trabalho cron acima será executado todos os dias às 05:30. Se o certificado estiver vencido, ele será renovado automaticamente.
Crie um novo arquivo de bloqueio de servidor para o site Zeppelin.
sudo nano /etc/nginx/sites-available/zeppelin
Preencher o arquivo.
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;
}
}
Ative o arquivo de configuração.
sudo ln -s /etc/nginx/sites-available/zeppelin /etc/nginx/sites-enabled/zeppelin
Reinicie o Nginx para que as alterações tenham efeito.
sudo systemctl restart nginx zeppelin
O Zeppelin agora está acessível no seguinte endereço.
https://zeppelin.example.com
Por padrão, não há autenticação ativada, para que você possa usar o aplicativo diretamente.
Como o aplicativo é acessível a todos, os cadernos criados também são acessíveis a todos. É muito importante desabilitar o acesso anônimo e habilitar a autenticação para que apenas os usuários autenticados possam acessar o aplicativo.
Para desativar o acesso anônimo padrão, copie o modelo do arquivo de configuração em seu local ativo.
cd /opt/zeppelin
sudo cp conf/zeppelin-site.xml.template conf/zeppelin-site.xml
Edite o arquivo de configuração.
sudo nano conf/zeppelin-site.xml
Encontre as seguintes linhas no arquivo
<property>
<name>zeppelin.anonymous.allowed</name>
<value>true</value>
Altere o valor para false
desativar o acesso anônimo.
Agora que desativamos o acesso anônimo, precisamos ativar algum tipo de mecanismo de autenticação para que usuários privilegiados possam efetuar login. O Apache Zeppelin usa a autenticação Apache Shiro. Copie o arquivo de configuração do Shiro.
sudo cp conf/shiro.ini.template conf/shiro.ini
Edite o arquivo de configuração.
sudo nano conf/shiro.ini
Encontre as seguintes linhas no arquivo
[users]
admin = password1, admin
user1 = password2, role1, role2
user2 = password3, role3
user3 = password4, role2
A lista contém o nome de usuário, senha e funções dos usuários. Por enquanto, usaremos apenas admin
e user1
. Alterar a senha de admin
e user1
e desativar os outros usuários comentando eles. Você também pode alterar o nome de usuário e as funções dos usuários. Para saber mais sobre usuários e funções do Apache Shiro, leia o guia de autorização do Shiro .
Depois de alterar as senhas, o bloco de código deve ficar assim.
[users]
admin = StrongPassword, admin
user1 = UserPassword, role1, role2
# user2 = password3, role3
# user3 = password4, role2
Agora reinicie o Zeppelin para aplicar as alterações.
sudo systemctl restart zeppelin
Você verá que a autenticação foi ativada e poderá efetuar login usando o nome de usuário e a senha definidos no arquivo de configuração do Shiro.
Os ataques de ransomware estão aumentando, mas a IA pode ajudar a lidar com os vírus de computador mais recentes? AI é a resposta? Leia aqui para saber se é AI boone ou bane
ReactOS, um sistema operacional de código aberto e gratuito está aqui com a versão mais recente. Será que ela pode atender às necessidades dos usuários modernos do Windows e derrubar a Microsoft? Vamos descobrir mais sobre esse estilo antigo, mas uma experiência de sistema operacional mais recente.
O Whatsapp finalmente lançou o aplicativo Desktop para usuários de Mac e Windows. Agora você pode acessar o Whatsapp do Windows ou Mac facilmente. Disponível para Windows 8+ e Mac OS 10.9+
Leia isto para saber como a Inteligência Artificial está se tornando popular entre as empresas de pequena escala e como está aumentando as probabilidades de fazê-las crescer e dar vantagem a seus concorrentes.
Recentemente, a Apple lançou o macOS Catalina 10.15.4, uma atualização suplementar para corrigir problemas, mas parece que a atualização está causando mais problemas, levando ao bloqueio de máquinas mac. Leia este artigo para saber mais
13 Ferramentas de Extração de Dados Comerciais de Big Data
Nosso computador armazena todos os dados de uma maneira organizada conhecida como sistema de arquivos Journaling. É um método eficiente que permite ao computador pesquisar e exibir arquivos assim que você clicar em search.https: //wethegeek.com/? P = 94116 & preview = true
À medida que a ciência evolui em um ritmo rápido, assumindo muitos de nossos esforços, os riscos de nos sujeitarmos a uma singularidade inexplicável também aumentam. Leia, o que a singularidade pode significar para nós.
Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1
A IA na área da saúde deu grandes saltos nas últimas décadas. Portanto, o futuro da IA na área da saúde ainda está crescendo dia a dia.