Como instalar o Selfoss RSS Reader em um Ubuntu 16.04 LAMP VPS

O Selfoss RSS Reader é um leitor multiuso, live stream, mashup, feed de notícias (RSS / Atom) e agregador universal, baseado na Web, gratuito e de código aberto. O Selfoss RSS Reader possui importação OPML, uma API JSON repousante e seu sistema de plug-in aberto permite que você estenda facilmente a funcionalidade padrão escrevendo seus próprios conectores de dados personalizados. Você pode usar o Selfoss para transmitir ao vivo e coletar todas as suas postagens, tweets, podcasts e feeds em um local central que você pode acessar facilmente a partir de qualquer computador ou dispositivo móvel.

Neste tutorial, instalaremos o Selfoss RSS Reader 2.17 em um Ubuntu 16.04 LAMP VPS usando o servidor Apache, PHP 7.0 e um banco de dados MariaDB.

Pré-requisitos

  • Uma instância limpa do servidor Vultr Ubuntu 16.04 com acesso SSH

Etapa 1: adicionar um usuário Sudo

Começaremos adicionando um novo sudousuário.

Primeiro, faça login no seu servidor como root:

ssh root@YOUR_VULTR_IP_ADDRESS

Adicione um novo usuário chamado user1(ou seu nome de usuário preferido):

adduser user1

Quando solicitado, digite uma senha segura e memorável. Você também será solicitado a fornecer seu "Nome completo" e outros detalhes, mas você pode simplesmente deixá-los em branco pressionando Enter.

Agora verifique o /etc/sudoersarquivo para garantir que o sudoersgrupo esteja ativado:

visudo

Procure uma seção como esta:

%sudo        ALL=(ALL:ALL)       ALL

Essa linha nos diz que os usuários que são membros do sudogrupo podem usar o sudocomando para obter rootprivilégios. Ele será descomentado por padrão, para que você possa simplesmente sair do arquivo.

Em seguida, precisamos adicionar user1ao sudogrupo:

usermod -aG sudo user1

Podemos verificar a user1participação no grupo e verificar se o usermodcomando funcionou com o groupscomando:

groups user1

Agora use o sucomando para alternar para a nova user1conta de usuário sudo :

su - user1

O prompt de comando será atualizado para indicar que você está conectado à user1conta. Você pode verificar isso com o whoamicomando:

whoami

Agora reinicie o sshdserviço para que você possa efetuar login sshcom a nova conta de usuário sudo não raiz que você acabou de criar:

sudo systemctl restart sshd

Saia da user1conta:

exit

Saia da rootconta (que desconectará sua sshsessão):

exit

Agora você pode acessar ssha instância do servidor do host local usando a nova user1conta de usuário sudo não raiz :

ssh user1@YOUR_VULTR_IP_ADDRESS

Se você deseja executar o sudo sem precisar digitar uma senha todas as vezes, abra o /etc/sudoersarquivo novamente, usando visudo:

sudo visudo

Edite a seção do sudogrupo para que fique assim:

%sudo   ALL=(ALL) NOPASSWD: ALL

Nota: Desabilitar o requisito de senha para o usuário sudo não é uma prática recomendada, mas é incluído aqui, pois pode tornar a configuração do servidor muito mais conveniente e menos frustrante, especialmente durante sessões mais longas de administração de sistemas. Se você estiver preocupado com as implicações de segurança, sempre poderá reverter a alteração na configuração para o original após concluir suas tarefas de administração.

Sempre que você desejar fazer login na rootconta de usuário a partir da sudoconta, você pode usar um dos seguintes comandos:

sudo -i
sudo su -

Você pode sair da rootconta e retornar à sua sudoconta de usuário a qualquer momento:

exit

Etapa 2: Atualizar o sistema Ubuntu 16.04

Antes de instalar qualquer pacote na instância do servidor Ubuntu, primeiro atualizaremos o sistema.

Verifique se você está conectado ao servidor usando um usuário sudo não raiz e execute os seguintes comandos:

sudo apt-get update
sudo apt-get -y upgrade

Etapa 3: Instale o Apache Web Server

Instale o servidor da web Apache:

sudo apt-get -y install apache2 

Em seguida, use o systemctlcomando para iniciar e permitir que o Apache seja executado automaticamente no momento da inicialização:

sudo systemctl enable apache2
sudo systemctl start apache2

Verifique o arquivo de configuração do site padrão do Apache para garantir que a DocumentRootdiretiva aponte para o diretório correto:

sudo vi /etc/apache2/sites-enabled/000-default.conf 

A DocumentRootopção de configuração terá a seguinte aparência:

DocumentRoot "/var/www/html"

Agora, precisamos ativar o mod_rewritemódulo Apache, para garantir que o arquivo de configuração do site padrão do Apache ainda esteja aberto e adicione as seguintes Directorydiretivas do Apache antes da </VirtualHost>tag de fechamento , para que o final do arquivo de configuração fique assim:

    <Directory /var/www/html/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
    </Directory>
</VirtualHost>

A diretiva mais importante mostrada acima é AllowOverride All.

Agora salve e saia do arquivo, e habilitar o mod_rewrite, mod_authz_coree mod_headersmódulos do Apache:

sudo a2enmod rewrite authz_core headers

Reiniciaremos o Apache no final deste tutorial, mas reiniciar o Apache regularmente durante a instalação e configuração é certamente um bom hábito, então vamos fazê-lo agora:

sudo systemctl restart apache2

Etapa 4: Instale o PHP 7.0

Agora podemos instalar o PHP 7.0 junto com todos os módulos PHP necessários exigidos pelo Selfoss RSS Reader:

sudo apt-get -y install php php-gd php-mbstring php-common php-mysql php-imagick php-xml libapache2-mod-php php-curl php-tidy php-zip

Etapa 5: Instale o Servidor MySQL

Instale o servidor de banco de dados MySQL:

sudo apt-get -y install mysql-server

Durante a instalação do servidor MySQL, certifique-se de inserir uma senha segura para o rootusuário MySQL . Este rootusuário é diferente do rootusuário no Ubuntu, pois é usado apenas para conectar-se ao seu servidor de banco de dados com privilégios totais.

Inicie e habilite o servidor MySQL para executar automaticamente no momento da inicialização:

sudo systemctl enable mysql
sudo systemctl start mysql    

Proteja a instalação do servidor MySQL:

sudo mysql_secure_installation

Quando solicitado, digite a senha que você criou para o rootusuário MYSQL durante a instalação. Simplesmente responda "Y" a todas as outras perguntas de sim / não, pois as sugestões padrão são as opções mais seguras.

Etapa 6: Criar banco de dados para o Selfoss RSS Reader

Efetue login no shell do MySQL como rootusuário do MySQL executando o seguinte comando:

sudo mysql -u root -p

Para acessar o prompt de comando do MySQL, basta digitar a rootsenha do MySQL quando solicitado.

Execute as seguintes consultas para criar um banco de dados MySQL e um usuário de banco de dados para o Selfoss RSS Reader:

CREATE DATABASE selfoss_db CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'selfoss_user'@'localhost' IDENTIFIED BY 'UltraSecurePassword';
GRANT ALL PRIVILEGES ON selfoss_db.* TO 'selfoss_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Você pode substituir o nome do banco de dados selfoss_dbe o nome de usuário selfoss_userpor algo mais ao seu gosto, se preferir. Além disso, certifique-se de substituir "UltraSecurePassword" por uma senha realmente segura.

Etapa 7: Instale os arquivos do Selfoss RSS Reader

Altere seu diretório de trabalho atual para o diretório da web padrão:

cd /var/www/html/

Se você receber uma mensagem de erro dizendo algo parecido 'No such file or directory', tente o seguinte comando:

cd /var/www/ ; sudo mkdir html ; cd html

Seu diretório de trabalho atual será agora: /var/www/html/. Você pode verificar isso com o pwdcomando (print working directory):

pwd

Agora use wgetpara baixar o pacote de instalação do Selfoss RSS Reader:

sudo wget --content-disposition https://github.com/SSilence/selfoss/archive/2.17.zip

Observação: você deve definitivamente verificar a versão mais recente visitando a página de download do Selfoss RSS Reader .

Liste o diretório atual para verificar se você fez o download do arquivo com sucesso:

ls -la

Remover index.html:

sudo rm index.html

Vamos instalar rapidamente unzippara poder descompactar o arquivo:

sudo apt-get -y install unzip

Agora descompacte o arquivo zip:

sudo unzip selfoss-2.17.zip

Mova todos os arquivos de instalação para o diretório raiz da web:

sudo mv -v selfoss-2.17/* selfoss-2.17/.* /var/www/html 2>/dev/null

Altere a propriedade dos arquivos da web para evitar problemas com permissões:

sudo chown -R www-data:www-data * ./

Reinicie o Apache novamente:

sudo systemctl restart apache2

Etapa 8: Instalar e executar o Composer

O Selfoss RSS Reader exige que usemos composerpara baixar alguns plugins, então vamos instalar composer:

sudo apt-get -y install composer

Agora verifique se você está no diretório webroot:

cd /var/www/html

Execute o compositor usando o www-datausuário:

sudo -u www-data composer install 

Você verá algumas mensagens de aviso composersobre não poder gravar no cache, mas não se preocupe muito com isso, pois tudo ainda será instalado corretamente.

Agora estamos prontos para avançar para a etapa final.

Etapa 9: Instalação completa do leitor Selfoss RSS

  1. Primeiro, precisamos atualizar o arquivo de configuração do Selfoss RSS Reader config.inicom as configurações corretas do banco de dados, para garantir que você ainda esteja no diretório webroot e copie defaults.inipara config.ini:

    sudo cp -iv defaults.ini config.ini
    
  2. Em seguida, abra o config.iniarquivo de configuração e adicione os seguintes valores de banco de dados:

    [globals]
    db_type=mysql
    db_host=localhost
    db_database=selfoss_db
    db_username=selfoss_user
    db_password=UltraSecurePassword
    db_port=3306
    
  3. Agora precisamos adicionar um hash de senha config.ini, mas primeiro precisamos gerá-lo, então visite o seguinte URL no seu navegador:

    http://YOUR_VULTR_IP_ADDRESS/password
    

    Em seguida, digite a senha desejada no Passwordcampo e clique em Generate.

    Simplesmente copie o valor do hash resultante para a opção de senha no config.iniarquivo para que a seção de senha agora seja algo como isto:

    username=admin
    password=b729a37c34ff9648c33d67de3b289b58b7486dd71236343a6c2c275c2cc0477bd1d254eb92248bfa753169547d4bd2e81c2c9e460ba5bba822af1e87722dd12a
    salt=<long string of random chracters>
    

    Nota: Seu hash da senha obviamente será diferente do hash mostrado acima e você pode escolher outro nome de usuário.

  4. Remova todas as outras opções não editadas do config.iniarquivo para que seu arquivo de configuração completo seja semelhante a este:

    [globals]
    db_type=mysql
    db_host=localhost
    db_database=db1
    db_username=u1
    db_password=usecpass1
    db_port=3306
    username=admin
    password=b729a37c34ff9648c33d67de3b289b58b7486dd71236343a6c2c275c2cc0477bd1d254eb92248bfa753169547d4bd2e81c2c9e460ba5bba822af1e87722dd12a
    salt=<long string of random chracters>
    

    Nota: Se você deseja alterar qualquer uma das defaults.iniopções, basta adicioná-las à lista de opções acima.

    Quando você terminar de editar o arquivo de configuração, poderá salvar e sair do arquivo.

  5. Agora você pode fazer login no Selfoss RSS Reader visitando a página inicial e digitando seu nome de usuário e senha:

     http://YOUR_VULTR_IP_ADDRESS/
    
  6. Se você deseja que o leitor atualize automaticamente seus feeds (e quase certamente o faz), precisará editar seu crontab:

    sudo crontab -e
    

    Adicione a seguinte linha para atualizar seus feeds a cada hora:

    0 * * * * www-data cd /var/www/html && php cliupdate.php
    

Se você ainda não definiu as configurações de DNS do Vultr, pode fazê-lo usando o painel de controle do DNS do Vultr.

Também é aconselhável configurar seu site para usar SSL, pois a maioria dos navegadores modernos emitirá avisos quando os sites não têm o SSL ativado e os certificados SSL agora estão disponíveis gratuitamente.

De qualquer forma, agora você pode começar a adicionar seus feeds e personalizar ainda mais seu leitor, se desejar.



Leave a Comment

A IA pode lutar contra o aumento do número de ataques de ransomware

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

ReactOS: Este é o futuro do Windows?

ReactOS: Este é o futuro do Windows?

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.

Fique conectado por meio do aplicativo WhatsApp Desktop 24 * 7

Fique conectado por meio do aplicativo WhatsApp Desktop 24 * 7

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+

Como a IA pode levar a automação de processos ao próximo nível?

Como a IA pode levar a automação de processos ao próximo nível?

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.

A atualização do suplemento do macOS Catalina 10.15.4 está causando mais problemas do que resolvendo

A atualização do suplemento do macOS Catalina 10.15.4 está causando mais problemas do que resolvendo

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

13 Ferramentas de Extração de Dados Comerciais de Big Data

13 Ferramentas de Extração de Dados Comerciais de Big Data

O que é um sistema de arquivos de registro no diário e como ele funciona?

O que é um sistema de arquivos de registro no diário e como ele funciona?

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

Singularidade tecnológica: um futuro distante da civilização humana?

Singularidade tecnológica: um futuro distante da civilização humana?

À 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

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

O impacto da inteligência artificial na saúde 2021

O impacto da inteligência artificial na saúde 2021

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.