:: gem list -remote :: configuração iptables

1

Uma vez que eu bloqueei meu servidor VPS com iptables, o que significa que eu só tenho algumas portas selecionadas abertas para acesso de entrada, meu comando Gem parou de funcionar e não tenho certeza do que estou fazendo errado.

Esta é uma pergunta dupla.

1º. Este é o comando executado na linha de comando para Gem.

gem list -r

Antes, ele mostrava uma lista de gemas remotas disponíveis para instalação, agora ele pára, a menos que eu abra todas as portas através do iptables novamente. Eu li em alguns lugares para abrir a porta 443, mas os exemplos que vi foram muito estranhos para mim e o que eu tentei tirar, não funcionou. Então alguém tem alguma ideia? Aqui está uma saída de minhas configurações do iptables.

Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
num   pkts bytes target     prot opt in     out     source               destination         
1      193 14308 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0            tcp dpt:22
2        0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0            tcp dpt:80
3        0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0            tcp dpt:81
4        0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0            tcp dpt:82
5        0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0            tcp dpt:8080
6        0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0            tcp dpt:8090
7        0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0            tcp dpt:443
8       28  2214 LOGGING    all  --  *      *       0.0.0.0/0            0.0.0.0/0           

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
num   pkts bytes target     prot opt in     out     source               destination         

Chain OUTPUT (policy ACCEPT 154 packets, 16540 bytes)
num   pkts bytes target     prot opt in     out     source               destination         

Chain LOGGING (1 references)
num   pkts bytes target     prot opt in     out     source               destination         
1       28  2214 LOG        all  --  *      *       0.0.0.0/0            0.0.0.0/0            LOG flags 0 level 4 prefix "IPTables Dropped"
2       28  2214 DROP       all  --  *      *       0.0.0.0/0            0.0.0.0/0           

A segunda parte da minha pergunta é, na ausência de documentação, como posso revelar quais endereços IP e portas um programa como o gem, neste caso, está acessando? Espero que haja algum tipo de programa que eu possa digitar em um comando semelhante ao seguinte:

sandbox-wrap 'gem list -r'

E observe a exibição de informações de acesso à Internet na tela.

Obrigado Iain por responder a pergunta. Para o resto de vocês, aqui está uma cópia do novo iptables com a correção. Eu adicionei uma nova linha para a posição número 1 da tabela de filtros, cadeia INPUT.

Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
num   pkts bytes target     prot opt in     out     source               destination         
1        7   488 ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            state RELATED,ESTABLISHED
2      700 50592 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0            tcp dpt:22
3        0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0            tcp dpt:80
4        0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0            tcp dpt:81
5        0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0            tcp dpt:82
6        0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0            tcp dpt:8080
7        0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0            tcp dpt:8090
8        1    40 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0            tcp dpt:443
9       83  6958 LOGGING    all  --  *      *       0.0.0.0/0            0.0.0.0/0           
    
por user2281135 31.01.2016 / 11:22

1 resposta

0

Como configurado, acho que seu principal problema é o DROP no final da cadeia LOGGING. Ele está descartando todos os pacotes que o alcançam. O comando gem estará usando uma porta efêmera aleatória para estabelecer a conexão com o sistema remoto. Os pacotes serão devolvidos e, como você não faz, você só permite que os pacotes expliquem portas na sua cadeia INPUT e os está bloqueando com o DROP.

É normal permitir conexões relacionadas / estabelecidas adicionando isso no início da cadeia INPUT

iptables -I INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

Isso permitirá que pacotes sejam relacionados à conexão gem de saída.

    
por 31.01.2016 / 11:45