-
Notifications
You must be signed in to change notification settings - Fork 0
GUIA install anexo2
Lembrete: https://www.public-software-group.org/mercurial/liquid_feedback_core/file/e0b8175fda29/README indica como usar comenados de pg_dump para UPDATE de logica mantendo os dados.
Lembrar que não basta apt postgis, precisa indicar a versão do pacote: sudo apt install postgis postgresql-13-postgis-3
....
Secure Shell para conectar ao servidor através de terminal Unix. Requer os dois lados com aplicações devidamente configuradas: “server SSH” e “client SSH”. Para client em ambiente Windows, ver também Moba. A conexão segura pode ser realizada através de login (user e senha) ou, mais seguro e menos burocrático, através do registro de chaves.
Editar o arquivo /etc/ssh/sshd_config e configurar os parâmetros abaixo
# parâmetro para definir o intervalo para enviar pacotes para não perder a conexão com o cliente SSH, foi configurado a 240s
ServerAliveInterval 240
# Contagem total de pacotes de inatividade a serem enviados ao cliente, o valor é multiplicado pelo intervalo acima para definir o tempo máximo da conexão no exemplo 2x240s = 480s = 8min
ServerAliveCountMax 2
# Parâmetro para manter a conexão ativa, caso não esteja definido, ainda que os parâmetros anteriores estejam definidos, não manterá a conexão ativa
TCPKeepAlive yes(verificar com grep -i alive /etc/ssh/sshd_config) = ?? cadê ServerAliveInterval??
O SSH permite o acesso externo de serviços internos a usuários conectados por meio de redirecionamento de portas no cliente, o comando é o abaixo
ssh -L <listen_port>:<host_tolisten>:<origin_remote_port> <user>@<host>
Exemplo: para que um usuário (nome de usuário: john) tenha acesso ao mysql (porta 3306) que está configurado no servidor com endereço 122.100.0.2, o usuário precisaria digitar o comando em um terminal:
ssh -L 1000:localhost:3306 john@122.100.0.2
Com o comando acima, o usuário conseguiria acessar o mysql no endereço local 127.0.0.1:1000
(desde que previamente registrado no SSH ou sempre livre? e o firewall?)
Comando para acessar PostgreSQL externo no PC local
ssh -L 5432:localhost:5432 user@server
(pede senha? precisa key?)
Criação de chaves.. ?Indicar como proceder nos lados server e client.
# Se necessário ativar o repositório onde o pacote se encontra
# sudo add-apt-repository universe
# Instala o fail2ban
sudo apt update
sudo apt install fail2ban
# Habilitar o serviço para início automático e iniciar, preferindo comando “service”
sudo service fail2ban status
sudo systemctl enable fail2ban
# sudo systemctl start fail2ban
sudo service fail2ban start
sudo service fail2ban status(conferir migração ida e volta pro git)
Copiar arquivos de configuração
# Criar fail2ban.local, que será usado ao invés do fail2ban.conf
cp /etc/fail2ban/fail2ban.conf /etc/fail2ban/fail2ban.local
# Fazer o mesmo com o jail.conf
cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
Configuração mínima para funcionamento a ser definida na seção DEFAULT
[DEFAULT]
# ip range que ignorado pelas políticas do fail2ban
ignoreip = 192.168.56.2/24
# tempo em segundos em quem um ip ficará bloqueado
bantime = 21600
# intervalo de máximo para aplicação que punição por eventos malsucedidos
findtime = 300
# máximo de tentativas durante o intervalo anterior
maxretry = 3
banaction = iptables-multiport
backend = systemd
O Fail2ban permite a monitoração de vários serviços, mas é necessários configurar na seção respectiva, por exemplo para habilitar o monitoramento do SSH é necessário definir o parâmetro enabled=true
[sshd]
enabled = true
Também é possível redefinir os parâmetros definidos na seção DEFAULT acrescentando-os dentro da seção.
# mostra o status do serviço
sudo fail2ban-client status
# Mostra o log do jail do SSH (mostra o total de ips banidos e também os lista)
sudo fail2ban-client status sshd
# monitorar o log
sudo tail -f /var/log/fail2ban.log
# monitorar o status fail2ban
sudo journalctl -b -u fail2banBug !!
sudo nano /etc/php/7.4/fpm/php.ini com display_errors = On e depois sudo service nginx restart.
Mesmo assim nada, ainda fica con Off no Master
Banco de dados. Ver também PostgreSQL, install, upgrade e restart.
Os arquivos de configuração do PostgreSQL possuem como proprietário o usuário postgres, sendo assim, qualquer arquivo de configuração dele devem ser feitos por esse usuário e não pelo root.
Para definir o usuário atual como postgres é necessário executar os comandos:
# muda o usuário para o root
sudo su
# muda para o usuário postgres
su postgresConfigurar o PostgreSQL para rodar localmente
Abrir o arquivo /etc/postgresql/12/main/postgresql.conf e alterar o parâmetro listen_address.
listen_addresses = '*' para listen_addresses = '127.0.0.1'
- Modificar o pg_hba (host based authentication): abrir o arquivo
/etc/postgresql/10/main/pg_hba.conf
1.1 Modificar a linha:
# Database administrative login by Unix domain socket
local all postgres peer
para
local all postgres peer map=superuser
1.2 Modificar a linha
# IPv4 local connections:
host all all 127.0.0.1/32 md5
para
host all all 127.0.0.1/32 trust
- Modificando
/etc/postgresql/10/main/pg_ident.confabaixo da linha:
# MAPNAME SYSTEM-USERNAME PG-USERNAME
foi adicionada configuração para o usuário
superuser <USUARIO> postgres
superuser root postgres
superuser postgres postgres
3 - Exportar o usuário postgres na variável de ambiente
Adicionar abaixo ao final do arquivo .bashrc uma linha com export PGUSER=postgres, e carregar usando source .bashrc ou exportar na linha de comando.
4 - Reiniciar o serviço do PostgreSQL com service postgresql restart
Os comandos a seguir devem ser executados no psql.
-- comando para criar um super usuário
CREATE ROLE user1 SUPERUSER CREATEDB NOCREATEROLE INHERIT LOGIN ENCRYPTED PASSWORD 'senhadousuario’;
-- permissão para que o usuário user1 se conecte ao banco1
GRANT CONNECT ON DATABASE banco1 TO user1;
-- concede todas as permissões de acesso do banco1 ao usuário user1
GRANT ALL ON DATABASE banco1 TO user1;
-- alterar o proprietário de um banco
ALTER DATABASE banco1 OWNER TO user1;(wiki temporária!)