Nowe posty

Autor Wątek: Problem z iptables - zablokowany dostęp do ssh i ftp  (Przeczytany 1034 razy)

amakesh

  • Gość
Witam!
Mam server zdalny VDS, do którego miałam domyślnie dostęp przez SSH i FTP. Niestety miałam ostatnio problemy z połączniem z  mysql na serwerze - program, który mam na komputerze nijak nie mógł się połączyć z bazą danych.
Myślałam, że to wina iptables i próbowałam pozmieniać ustawienia dla tcp.  Skończyło się to tak, że nie mam dostępu przez ssh ani ftp - połączenie zakończone przez serwer zaraz po logowaniu.
Na szczęście mam jeszcze dostęp(w tym do terminala) przez Webmin, więc chcę to naprawić, ale nie do końca wiem jak..
Próbowałam zmienić poilcy z DROP na ACCEPT, zmieniło się, ale nie odblokowało dostępu a po restarcie serwera wróciło na DROP.
Proszę o pomoc

ufw status verbose
Cytuj
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing), deny (routed)
New profiles: skip

To                         Action      From
--                         ------      ----
22/tcp (SSH)               ALLOW IN    Anywhere                 
224.0.0.251 5353/udp (mDNS) ALLOW IN    Anywhere                 
21                         ALLOW IN    Anywhere                 
22/tcp (SSH (v6))          ALLOW IN    Anywhere (v6)             
ff02::fb 5353/udp (mDNS)   ALLOW IN    Anywhere (v6)             
21 (v6)                    ALLOW IN    Anywhere (v6)             



Cytuj
[root@******* ~]# iptables -L --line-numbers
Chain INPUT (policy DROP)
num  target     prot opt source               destination         
1    ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED
2    REJECT     tcp  --  anywhere             anywhere             tcp flags:!FIN,SYN,RST,ACK/SYN state NEW reject-with tcp-reset
3    DROP       all  --  anywhere             anywhere             state INVALID
4    ACCEPT     all  --  anywhere             anywhere           
5    ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:12443
6    ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:11443
7    ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:11444
8    ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:8447
9    ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:pcsync-https
10   ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:cddbp-alt
11   ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:http
12   ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:https
13   ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:ftp
14   ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:ssh
15   ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:submission
16   ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:smtp
17   ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:urd
18   ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:pop3
19   ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:pop3s
20   ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:imap
21   ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:imaps
22   ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:poppassd
23   ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:mysql
24   ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:postgres
25   ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:ogs-server
26   ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:glrpc
27   ACCEPT     udp  --  anywhere             anywhere             udp dpt:netbios-ns
28   ACCEPT     udp  --  anywhere             anywhere             udp dpt:netbios-dgm
29   ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:netbios-ssn
30   ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:microsoft-ds
31   ACCEPT     udp  --  anywhere             anywhere             udp dpt:openvpn
32   ACCEPT     udp  --  anywhere             anywhere             udp dpt:domain
33   ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:domain
34   ACCEPT     icmp --  anywhere             anywhere             icmptype 8 code 0
35   ACCEPT     all  --  anywhere             anywhere           

Chain FORWARD (policy DROP)
num  target     prot opt source               destination         
1    DOCKER-USER  all  --  anywhere             anywhere           
2    DOCKER-ISOLATION-STAGE-1  all  --  anywhere             anywhere           
3    ACCEPT     all  --  anywhere             anywhere             ctstate RELATED,ESTABLISHED
4    DOCKER     all  --  anywhere             anywhere           
5    ACCEPT     all  --  anywhere             anywhere           
6    ACCEPT     all  --  anywhere             anywhere           
7    ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED
8    REJECT     tcp  --  anywhere             anywhere             tcp flags:!FIN,SYN,RST,ACK/SYN state NEW reject-with tcp-reset
9    DROP       all  --  anywhere             anywhere             state INVALID
10   ACCEPT     all  --  anywhere             anywhere           
11   DROP       all  --  anywhere             anywhere           

Chain OUTPUT (policy DROP)
num  target     prot opt source               destination         
1    ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED
2    REJECT     tcp  --  anywhere             anywhere             tcp flags:!FIN,SYN,RST,ACK/SYN state NEW reject-with tcp-reset
3    DROP       all  --  anywhere             anywhere             state INVALID
4    ACCEPT     all  --  anywhere             anywhere           
5    ACCEPT     all  --  anywhere             anywhere           

Chain DOCKER (1 references)
num  target     prot opt source               destination         

Chain DOCKER-ISOLATION-STAGE-1 (1 references)
num  target     prot opt source               destination         
1    DOCKER-ISOLATION-STAGE-2  all  --  anywhere             anywhere           
2    RETURN     all  --  anywhere             anywhere           

Chain DOCKER-ISOLATION-STAGE-2 (1 references)
num  target     prot opt source               destination         
1    DROP       all  --  anywhere             anywhere           
2    RETURN     all  --  anywhere             anywhere           

Chain DOCKER-USER (1 references)
num  target     prot opt source               destination         
1    RETURN     all  --  anywhere             anywhere       

« Ostatnia zmiana: 2019-01-22, 20:03:37 wysłana przez Amakesh »

beaker

  • Gość
Odp: Problem z iptables - zablokowany dostęp do ssh i ftp
« Odpowiedź #1 dnia: 2019-01-22, 20:26:48 »
Problemów szukaj w usługach, bo to raczej nie iptables skoro proces logowania jest możliwy.

Offline 1709

  • Users
  • Guru
  • *****
  • Wiadomości: 2757
  • 1709
    • Zobacz profil
Odp: Problem z iptables - zablokowany dostęp do ssh i ftp
« Odpowiedź #2 dnia: 2019-01-22, 20:54:22 »
1. Moze masz kopia zapasowa servera zeby w razie "w" przywrocic ?
- Jak nie masz to sie nauczysz robic.
2. Testuje się na maszynie wirtualnej, a przynajmniej nie na waznej / istotnej / produkcyjnej
 https://www.youtube.com/watch?v=TmdL3s5F_R4
( to jaki system jest na filmiku jest najmniej istotne*, a jak kogos stac to moze testować na innych serwerach / maszynach wirtualnych )

Jak w terminalu wpiszesz
iptables -S
To wyskocza Ci wpisane reguly bez slowa "iptables" ktore mozna skopiowac i uzyc w maszynie testowej i przetestowac.
Zreszta pewnie i tak skonfigurowalas zapore uzywajac skrypt, ktory takze mozna sobie skopiowac do testow.

3. W zaporze 
Dla aplikacji / uslug na serverze ( dla aplikacji typu server z ktora lacza sie inni ) powinno byc
... INPUT ...   -m state --state NEW,ESTABLISHED -j ACCEPT ...
... OUTPUT ...  -m state --state ESTABLISHED -j ACCEPT ...
W domu dla aplikacji ( dla aplikacji typu klient, z ktorej sie laczymy gdzies indziej )
... INPUT ...  -m state --state ESTABLISHED -j ACCEPT ...
... OUTPUT ...  -m state --state NEW,ESTABLISHED -j ACCEPT ...
Kropki dalem specjalnie, bo trzeba sobie uzupelnic we wlasnym zakresie, dodajac numery portow, reguly uszczelniajace lub komentarz.
Tylko info, nic wiecej: Opcje  "RELATED" powinno sie dodawac, gdy jest to konieczne
https://explainshell.com/explain?cmd=iptables+-A+INPUT+-m+state+--state+ESTABLISHED%2CRELATED+-j+ACCEPT
Cytuj
"RELATED" oznacza, że pakiet rozpoczyna nowe połączenie, ale jest powiązany z istniejącym połączeniem, takim jak transfer danych FTP lub błąd ICMP.
To czy dana usluga potrzebuje tego, mozna sprawdzic podsluchujac aplikacje/ usluge lub stan polaczen podczas normalnej pracy.

Cytuj
Próbowałam zmienić poilcy z DROP na ACCEPT, zmieniło się, ale nie odblokowało dostępu
Mamy zgadywac czego "ACCEPT" dotyczylo i ze napewno mialo rozwiazac problem, ale nie pomoglo?
« Ostatnia zmiana: 2019-01-23, 21:30:07 wysłana przez 1709 »
PS: Brak polskiej czcionki, nie jest to brak lenistwa, a jej brak w systemie i brak czasu na reczne poprawki.