AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / dba / Perguntas / 22717
Accepted
Stephane Rolland
Stephane Rolland
Asked: 2012-08-19 13:54:06 +0800 CST2012-08-19 13:54:06 +0800 CST 2012-08-19 13:54:06 +0800 CST

Alterando a porta do servidor postgresql por motivos de segurança

  • 772

Por motivos de segurança, é comum alterar a porta do Microsoft Sql Server. O assunto é discutido aqui em Mudar a porta do SQL Server é realmente muito mais seguro?

minha pergunta é: isso também se aplica ao PostgreSQL? Ou não tem relação?

postgresql security
  • 3 3 respostas
  • 1323 Views

3 respostas

  • Voted
  1. Best Answer
    Craig Ringer
    2012-08-20T18:00:32+08:002012-08-20T18:00:32+08:00

    As opiniões variam, mas, na minha opinião, é levemente útil usar uma porta não padrão em qualquer serviço exposto à Internet que não seja para uso do público em geral. Alterar sua porta não é segurança. Ele não adiciona absolutamente nenhuma segurança na operação normal e é minimamente útil se sua segurança já estiver comprometida pela descoberta de uma falha de segurança explorável remotamente. Na melhor das hipóteses, é uma opção de atraso e mitigação para dar a você uma chance um pouco maior de corrigir uma falha de segurança antes que um worm a explore.

    O uso de uma porta não padrão não o protegerá de vulnerabilidades exploradas ou de qualquer tipo de ataque direcionado. Isso pode ajudar a reduzir as chances de que um worm simples ou um esforço de varredura casual de base ampla tente explorar uma brecha de segurança em seu serviço, mas não atrasará ninguém que esteja interessado em seu sistema especificamente por um piscar de olhos.

    Observe que o PostgreSQL não tem o mesmo tipo de histórico de graves falhas de segurança remotamente exploráveis ​​que o MS SQL Server tem. Isso não significa que nunca haverá falhas exploráveis ​​remotamente ou em mecanismos de autenticação de plug-in como Kerberos, portanto, você deve estar sempre pronto para a possibilidade.

    Para segurança real, você deve pensar em:

    • Limitando conexões a máquinas confiáveis. Se o seu banco de dados estiver em uma VLAN que contém apenas a si mesmo e o servidor de aplicativos, não faz sentido brincar com as portas. Da mesma forma, se você não precisar que o banco de dados seja exposto à Internet, certifique-se de que ele não seja executado em um host público ou, pelo menos, configure-o para vincular apenas a um endereço IP interno e desative-o com firewall também.

    • Proibindo a autenticação de texto não criptografado. Use pelo menos SSL, se não Kerberos ou outro protocolo moderadamente forte.

    • Autenticação forte ou multifator; nada desse negócio de nome de usuário igual à senha.

    • Certifique-se de que seus aplicativos nunca usem funções de superusuário e tenham apenas os privilégios mínimos necessários nos objetos de banco de dados com os quais interagem. Seus aplicativos não devem se conectar ao usuário/função que possui o banco de dados ou suas tabelas, a menos que seja absolutamente necessário. GRANTlhes os direitos mínimos exigidos.

    • Não permitir conexão remota por funções de superusuário empg_hba.conf

    • Limites de conexão IP. Se todos os clientes da máquina usarem um determinado ISP, use um firewall para descartar conexões de fora dos netblocks IP que você sabe que podem ser usados. Você também pode fazer isso pg_hba.conf, mas se fizer isso no firewall, estará impedindo que eles façam um handshake com o Pg.

    • ... e muito mais. Há muito na rede sobre como bloquear e proteger Pg. Veja, por exemplo, o artigo de Depesz , a apresentação de Bruce Momjian e este artigo do DeveloperWorks .

    Eu altero a porta SSH pública em todas as minhas máquinas por um motivo semelhante. Isso não vai parar ninguém, mas pode desacelerar um pouco os ataques automatizados e os worms. Mais importante, ele reduz o enorme volume de varredura de spam nos logs do meu sistema a ponto de os logs se tornarem úteis novamente.

    • 5
  2. Jack Douglas
    2012-08-31T02:22:37+08:002012-08-31T02:22:37+08:00

    Eu diria Não , embora, claro, isso não seja tanto uma resposta quanto um princípio. O resultado principal é provavelmente uma falsa sensação de segurança extra.

    A pergunta que você precisa fazer é "do que estou tentando me proteger?".

    Em geral, em um banco de dados exposto à Internet pública, você não abriria uma porta para o banco de dados - o mundo veria apenas sua camada de aplicativo.

    Em bancos de dados que só precisam ser acessados ​​por usuários em sua LAN (e VPN), muitas vezes você precisa de acesso direto ao banco de dados, e este é provavelmente o caso que você tem em mente? A segurança na LAN é um equilíbrio entre conveniência e proteção, e acho que você deve escolher se quer:

    1. confie em seus clientes
    2. não confie em seus clientes

    No primeiro caso não há necessidade de alterar o número da porta, no segundo, alterar o número da porta não é suficiente.

    • 3
  3. Chris Travers
    2012-08-31T00:56:13+08:002012-08-31T00:56:13+08:00

    Pessoalmente, eu olharia para isso somente após todas as outras opções. Por exemplo, firewalls, bloqueando o pg_hba.conf apropriadamente, etc. Pode ser útil, mas está tão longe na lista de ferramentas úteis que eu ficaria preocupado se isso fosse uma distração do resto.

    • 2

relate perguntas

  • Os procedimentos armazenados impedem a injeção de SQL?

  • Protegendo senhas de banco de dados

  • Sequências Biológicas do UniProt no PostgreSQL

  • Qual é a diferença entre a replicação do PostgreSQL 9.0 e o Slony-I?

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Como ver a lista de bancos de dados no Oracle?

    • 8 respostas
  • Marko Smith

    Quão grande deve ser o mysql innodb_buffer_pool_size?

    • 4 respostas
  • Marko Smith

    Listar todas as colunas de uma tabela especificada

    • 5 respostas
  • Marko Smith

    restaurar a tabela do arquivo .frm e .ibd?

    • 10 respostas
  • Marko Smith

    Como usar o sqlplus para se conectar a um banco de dados Oracle localizado em outro host sem modificar meu próprio tnsnames.ora

    • 4 respostas
  • Marko Smith

    Como você mysqldump tabela (s) específica (s)?

    • 4 respostas
  • Marko Smith

    Como selecionar a primeira linha de cada grupo?

    • 6 respostas
  • Marko Smith

    Listar os privilégios do banco de dados usando o psql

    • 10 respostas
  • Marko Smith

    Como inserir valores em uma tabela de uma consulta de seleção no PostgreSQL?

    • 4 respostas
  • Marko Smith

    Como faço para listar todos os bancos de dados e tabelas usando o psql?

    • 7 respostas
  • Martin Hope
    Mike Walsh Por que o log de transações continua crescendo ou fica sem espaço? 2012-12-05 18:11:22 +0800 CST
  • Martin Hope
    Stephane Rolland Listar todas as colunas de uma tabela especificada 2012-08-14 04:44:44 +0800 CST
  • Martin Hope
    haxney O MySQL pode realizar consultas razoavelmente em bilhões de linhas? 2012-07-03 11:36:13 +0800 CST
  • Martin Hope
    qazwsx Como posso monitorar o andamento de uma importação de um arquivo .sql grande? 2012-05-03 08:54:41 +0800 CST
  • Martin Hope
    markdorison Como você mysqldump tabela (s) específica (s)? 2011-12-17 12:39:37 +0800 CST
  • Martin Hope
    pedrosanta Listar os privilégios do banco de dados usando o psql 2011-08-04 11:01:21 +0800 CST
  • Martin Hope
    Jonas Como posso cronometrar consultas SQL usando psql? 2011-06-04 02:22:54 +0800 CST
  • Martin Hope
    Jonas Como inserir valores em uma tabela de uma consulta de seleção no PostgreSQL? 2011-05-28 00:33:05 +0800 CST
  • Martin Hope
    Jonas Como faço para listar todos os bancos de dados e tabelas usando o psql? 2011-02-18 00:45:49 +0800 CST
  • Martin Hope
    bernd_k Quando devo usar uma restrição exclusiva em vez de um índice exclusivo? 2011-01-05 02:32:27 +0800 CST

Hot tag

sql-server mysql postgresql sql-server-2014 sql-server-2016 oracle sql-server-2008 database-design query-performance sql-server-2017

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve