Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2022-04-25 16:42:57

  Karoll - Użytkownik

Karoll
Użytkownik
Zarejestrowany: 2019-08-12

SSH passphrase i polaczenie - nie dziala

Zaszla potrzeba zapoznania sie z SSH. Przy tworzeniu tunelu nie dziala uwiarygodnianie przez haslo.
O systemie:

Kod:

lsb_release -d
Description:    Debian GNU/Linux 10 (buster)

O SSH.

Kod:

dpkg -l | grep ssh
ii  libssh-gcrypt-4:amd64                         0.8.7-1+deb10u1                         amd64        tiny C SSH library (gcrypt flavor)
ii  libssh2-1:amd64                               1.8.0-2.1                               amd64        SSH2 client-side library
ii  openssh-client                                1:7.9p1-10+deb10u2                      amd64        secure shell (SSH) client, for secure access to remote machines
ii  openssh-server                                1:7.9p1-10+deb10u2                      amd64        secure shell (SSH) server, for secure access from remote machines
ii  openssh-sftp-server                           1:7.9p1-10+deb10u2                      amd64        secure shell (SSH) sftp server module, for SFTP access from remote machines

O SSHD

Kod:

systemctl status sshd
● ssh.service - OpenBSD Secure Shell server
   Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enab
   Active: active (running) since Mon 2022-04-25 13:44:33 IST; 1h 21min ago
     Docs: man:sshd(8)
           man:sshd_config(5)
  Process: 9285 ExecStartPre=/usr/sbin/sshd -t (code=exited, status=0/SUCCESS)
 Main PID: 9286 (sshd)
    Tasks: 1 (limit: 4915)
   Memory: 1.2M
      CPU: 235ms
   CGroup: /system.slice/ssh.service
           └─9286 /usr/sbin/sshd -D

O firewallu.

Kod:

systemctl status netfilter-persistent
● netfilter-persistent.service - netfilter persistent configuration
   Loaded: loaded (/lib/systemd/system/netfilter-persistent.service; enabled; ve
   Active: inactive (dead) since Mon 2022-04-25 14:40:08 IST; 28min ago
  Process: 272 ExecStart=/usr/sbin/netfilter-persistent start (code=exited, stat
  Process: 22312 ExecStop=/usr/sbin/netfilter-persistent stop (code=exited, stat
 Main PID: 272 (code=exited, status=0/SUCCESS)
      CPU: 7ms

Kod:

iptables -L | grep ssh
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:ssh ctstate NEW,ESTABLISHED
ACCEPT     tcp  --  anywhere             anywhere             tcp spt:ssh ctstate ESTABLISHED

Konfig SSHD.

Kod:

#    $OpenBSD: sshd_config,v 1.103 2018/04/09 20:41:22 tj Exp $

# This is the sshd server system-wide configuration file.  See
# sshd_config(5) for more information.

# This sshd was compiled with PATH=/usr/bin:/bin:/usr/sbin:/sbin

# The strategy used for options in the default sshd_config shipped with
# OpenSSH is to specify options with their default value where
# possible, but leave them commented.  Uncommented options override the
# default value.

Port 22
#AddressFamily any
#ListenAddress 0.0.0.0
 ListenAddress 192.168.11.111

#HostKey /etc/ssh/ssh_host_rsa_key
#HostKey /etc/ssh/ssh_host_ecdsa_key
#HostKey /etc/ssh/ssh_host_ed25519_key

# Ciphers and keying
#RekeyLimit default none

# Logging
#SyslogFacility AUTH
#LogLevel INFO

# Authentication:

#LoginGraceTime 2m
PermitRootLogin prohibit-password
#StrictModes yes
#MaxAuthTries 6
#MaxSessions 10

#PubkeyAuthentication yes

# Expect .ssh/authorized_keys2 to be disregarded by default in future.
#AuthorizedKeysFile    .ssh/authorized_keys .ssh/authorized_keys2

#AuthorizedPrincipalsFile none

#AuthorizedKeysCommand none
#AuthorizedKeysCommandUser nobody

# For this to work you will also need host keys in /etc/ssh/ssh_known_hosts
#HostbasedAuthentication no
# Change to yes if you don't trust ~/.ssh/known_hosts for
# HostbasedAuthentication
#IgnoreUserKnownHosts no
# Don't read the user's ~/.rhosts and ~/.shosts files
#IgnoreRhosts yes

# To disable tunneled clear text passwords, change to no here!
#PasswordAuthentication yes
#PermitEmptyPasswords no

# Change to yes to enable challenge-response passwords (beware issues with
# some PAM modules and threads)
ChallengeResponseAuthentication no

# Kerberos options
#KerberosAuthentication no
#KerberosOrLocalPasswd yes
#KerberosTicketCleanup yes
#KerberosGetAFSToken no

# GSSAPI options
#GSSAPIAuthentication no
#GSSAPICleanupCredentials yes
#GSSAPIStrictAcceptorCheck yes
#GSSAPIKeyExchange no

# Set this to 'yes' to enable PAM authentication, account processing,
# and session processing. If this is enabled, PAM authentication will
# be allowed through the ChallengeResponseAuthentication and
# PasswordAuthentication.  Depending on your PAM configuration,
# PAM authentication via ChallengeResponseAuthentication may bypass
# the setting of "PermitRootLogin without-password".
# If you just want the PAM account and session checks to run without
# PAM authentication, then enable this but set PasswordAuthentication
# and ChallengeResponseAuthentication to 'no'.
UsePAM yes

#AllowAgentForwarding yes
#AllowTcpForwarding yes
#GatewayPorts no
X11Forwarding yes
#X11DisplayOffset 10
#X11UseLocalhost yes
#PermitTTY yes
PrintMotd no
#PrintLastLog yes
#TCPKeepAlive yes
#PermitUserEnvironment no
#Compression delayed
#ClientAliveInterval 0
#ClientAliveCountMax 3
#UseDNS no
#PidFile /var/run/sshd.pid
#MaxStartups 10:30:100
#PermitTunnel no
#ChrootDirectory none
#VersionAddendum none

# no default banner path
#Banner none

# Allow client to pass locale environment variables
AcceptEnv LANG LC_*

# override default of no subsystems
Subsystem    sftp    /usr/lib/openssh/sftp-server

# Example of overriding settings on a per-user basis
#Match User anoncvs
#    X11Forwarding no
#    AllowTcpForwarding no
#    PermitTTY no
#    ForceCommand cvs server

Kiedy tworze tunel, SSH nie uznaje hasla  podanego wczesniej przy okazji tworzenia kluczy RSA.

Kod:

ssh root@192.168.11.111 -p 22
root@192.168.11.111's password:

Nastepny problem z polaczeniem.

Kod:

ssh -p 22 debian@127.0.0.1
ssh: connect to host 127.0.0.1 port 22: Connection refused

Kod:

ssh -f -N -D 0.0.0.0:22 localhost
ssh: connect to host localhost port 22: Connection refused

Moze ktos bardziej doswiadczony pomoc ?

Ostatnio edytowany przez Karoll (2022-04-26 11:13:55)


Tolerancja i apatia, to ostatnie cnoty umierającego społeczeństwa.
Gdy wiesz o wszystkim, co robi twoj rzad – to jest demokracja.
Gdy rzad wie wszystko o tobie – to jest tyrania !

Offline

 

#2  2022-04-25 16:51:59

  rulezdc - Członek DUG

rulezdc
Członek DUG
Skąd: Tarnowskie Góry
Zarejestrowany: 2007-05-22

Re: SSH passphrase i polaczenie - nie dziala

Ty się nie logujesz żadnym kluczem.
Sam masz ustawione:
PermitRootLogin prohibit-password

To jak chcesz się zalogować ?

Offline

 

#3  2022-04-25 17:19:14

  Karoll - Użytkownik

Karoll
Użytkownik
Zarejestrowany: 2019-08-12

Re: SSH passphrase i polaczenie - nie dziala

Moze ja cos zle rozumiem..

Kod:

root@192.168.11.111's password:

W powyzszym oprogramowanie domaga sie odemnie zebym sie uwiarygodnil haslem zeby korzystac z tunelu SSH.

Tutaj:

Kod:

ssh: connect to host 127.0.0.1 port 22: Connection refused

Odmawia mi polaczenia, dlaczego ?


Tolerancja i apatia, to ostatnie cnoty umierającego społeczeństwa.
Gdy wiesz o wszystkim, co robi twoj rzad – to jest demokracja.
Gdy rzad wie wszystko o tobie – to jest tyrania !

Offline

 

#4  2022-04-25 19:59:37

  morfik - Cenzor wirtualnego świata

morfik
Cenzor wirtualnego świata
Skąd: ze WSI
Zarejestrowany: 2011-09-15
Serwis

Re: SSH passphrase i polaczenie - nie dziala

Próbujesz się zalogować na roota przy pomocy hasła, a w config'u ssh masz wyraźnie ten czyn zabroniony i dlatego ci odrzuca. Więc albo sobie przestaw PermitRootLogin na yes, albo dorób sobie klucz ssh, albo też stwórz zwykłego użytkownika i to na niego się loguj via ssh, a dopiero potem po uzyskaniu połączenia loguj się via su/sudo na roota.

Offline

 

#5  2022-04-26 12:10:39

  Karoll - Użytkownik

Karoll
Użytkownik
Zarejestrowany: 2019-08-12

Re: SSH passphrase i polaczenie - nie dziala

Wyedytowalem plik konfigu.
PORT NA 5522.
PermitRootLogon yes

Kod:

#    $OpenBSD: sshd_config,v 1.103 2018/04/09 20:41:22 tj Exp $

# This is the sshd server system-wide configuration file.  See
# sshd_config(5) for more information.

# This sshd was compiled with PATH=/usr/bin:/bin:/usr/sbin:/sbin

# The strategy used for options in the default sshd_config shipped with
# OpenSSH is to specify options with their default value where
# possible, but leave them commented.  Uncommented options override the
# default value.

Port 5522
#AddressFamily any
#ListenAddress 0.0.0.0
# ListenAddress 192.168.11.111

#HostKey /etc/ssh/ssh_host_rsa_key
#HostKey /etc/ssh/ssh_host_ecdsa_key
#HostKey /etc/ssh/ssh_host_ed25519_key

# Ciphers and keying
#RekeyLimit default none

# Logging
#SyslogFacility AUTH
#LogLevel INFO

# Authentication:

#LoginGraceTime 2m
PermitRootLogin yes
#StrictModes yes
#MaxAuthTries 6
#MaxSessions 10

#PubkeyAuthentication yes

# Expect .ssh/authorized_keys2 to be disregarded by default in future.
#AuthorizedKeysFile    .ssh/authorized_keys .ssh/authorized_keys2

#AuthorizedPrincipalsFile none

#AuthorizedKeysCommand none
#AuthorizedKeysCommandUser nobody

# For this to work you will also need host keys in /etc/ssh/ssh_known_hosts
#HostbasedAuthentication no
# Change to yes if you don't trust ~/.ssh/known_hosts for
# HostbasedAuthentication
#IgnoreUserKnownHosts no
# Don't read the user's ~/.rhosts and ~/.shosts files
#IgnoreRhosts yes

# To disable tunneled clear text passwords, change to no here!
#PasswordAuthentication yes
#PermitEmptyPasswords no

# Change to yes to enable challenge-response passwords (beware issues with
# some PAM modules and threads)
ChallengeResponseAuthentication no

# Kerberos options
#KerberosAuthentication no
#KerberosOrLocalPasswd yes
#KerberosTicketCleanup yes
#KerberosGetAFSToken no

# GSSAPI options
#GSSAPIAuthentication no
#GSSAPICleanupCredentials yes
#GSSAPIStrictAcceptorCheck yes
#GSSAPIKeyExchange no

# Set this to 'yes' to enable PAM authentication, account processing,
# and session processing. If this is enabled, PAM authentication will
# be allowed through the ChallengeResponseAuthentication and
# PasswordAuthentication.  Depending on your PAM configuration,
# PAM authentication via ChallengeResponseAuthentication may bypass
# the setting of "PermitRootLogin without-password".
# If you just want the PAM account and session checks to run without
# PAM authentication, then enable this but set PasswordAuthentication
# and ChallengeResponseAuthentication to 'no'.
UsePAM yes

#AllowAgentForwarding yes
#AllowTcpForwarding yes
#GatewayPorts no
X11Forwarding yes
#X11DisplayOffset 10
#X11UseLocalhost yes
#PermitTTY yes
PrintMotd no
#PrintLastLog yes
#TCPKeepAlive yes
#PermitUserEnvironment no
#Compression delayed
#ClientAliveInterval 0
#ClientAliveCountMax 3
#UseDNS no
#PidFile /var/run/sshd.pid
#MaxStartups 10:30:100
#PermitTunnel no
#ChrootDirectory none
#VersionAddendum none

# no default banner path
#Banner none

# Allow client to pass locale environment variables
AcceptEnv LANG LC_*

# override default of no subsystems
Subsystem    sftp    /usr/lib/openssh/sftp-server

# Example of overriding settings on a per-user basis
#Match User anoncvs
#    X11Forwarding no
#    AllowTcpForwarding no
#    PermitTTY no
#    ForceCommand cvs server

Przeladowalem:

Kod:

sudo systemctl restart ssh.service

Wylaczylem firewalla:

Kod:

systemctl status netfilter-persistent
● netfilter-persistent.service - netfilter persistent configuration
   Loaded: loaded (/lib/systemd/system/netfilter-persistent.service; enabled; ve
   Active: inactive (dead) since Tue 2022-04-26 10:42:04 IST; 24s ago
  Process: 275 ExecStart=/usr/sbin/netfilter-persistent start (code=exited, stat
  Process: 19283 ExecStop=/usr/sbin/netfilter-persistent stop (code=exited, stat
 Main PID: 275 (code=exited, status=0/SUCCESS)
      CPU: 7ms

Kod:

root@debian:~# ssh -p 5522 debian@127.0.0.1
debian@127.0.0.1's password: 
Permission denied, please try again.

Kod:

root@debian:~# ssh debian@192.168.11.111 -p 5522
debian@192.168.11.111s password: 
Permission denied, please try again.
debian@192.168.11.111's password: 
Permission denied, please try again.
debian@192.168.11.111's password: 
debian@192.168.11.111: Permission denied (publickey,password)

Lista zajetych portow:

Kod:

netstat -tunlep | grep LISTEN | awk '{print $4}'
127.0.0.53:53
127.0.0.1:8118
127.0.0.1:631
127.0.0.1:25
0.0.0.0:5355
0.0.0.0:5522
::1:8118
::1:631
::1:25
:::5355
:::5522

Dlaczego mam odmowe polaczenia i dlaczego na porcie 22 ?

Kod:

root@debian:~# ssh -f -N -D 0.0.0.0:1080 localhost
ssh: connect to host localhost port 22: Connection refused

Jezeli otwieram tunel bedac zalogowany jako root - to podaje haslo roota, tak?
Jezeli otwieram tunel bedac zalogowany jako user - to podaje haslo usera, tak?
Kiedy podaje haslo utworzone podczas tworzenia kluczy RSA ?

Napiszcie prosze ze 2 madre zdania zeby mi sie to ulozylo w glowie.
Moze ktos podesle plik konfigu sshd, moglbym sobie analizowac na spokojnie.

Ostatnio edytowany przez Karoll (2022-04-26 12:54:40)


Tolerancja i apatia, to ostatnie cnoty umierającego społeczeństwa.
Gdy wiesz o wszystkim, co robi twoj rzad – to jest demokracja.
Gdy rzad wie wszystko o tobie – to jest tyrania !

Offline

 

#6  2022-04-26 14:35:21

  rulezdc - Członek DUG

rulezdc
Członek DUG
Skąd: Tarnowskie Góry
Zarejestrowany: 2007-05-22

Re: SSH passphrase i polaczenie - nie dziala

Zmieniles port ssh ale z twoich opisow wynika, ze w iptables juz nie zmieniles(dodales) portow

Najlepiej zacznij bez firewall-a i poczytaj o tunelowaniu:
https://www.ssh.com/academy/ssh/tunneling/example?hs_amp=true

Jak chcesz pi kluczach musisz wskazac klucz poprzez opcje -i lub skonfigurowac plik ssh config

Offline

 

#7  2022-04-26 16:34:29

  Karoll - Użytkownik

Karoll
Użytkownik
Zarejestrowany: 2019-08-12

Re: SSH passphrase i polaczenie - nie dziala

@rulezdc
Moglem dodac reguly protokolu tcp zeby przepuszczal SSH np.

Kod:

iptables -A INPUT -s 192.168.1.111 -m state --state NEW -p tcp --dport 5522 - j ACCEPT

Wylaczylem go jednak calkowicie zeby nie bylo watpliwosci.
Link ktory podales jest wartosciowy ale kompletnie nie odpowiada na moje pytania.
Nadal nie rozumiem kiedy uzywac:
- hasel uzytkownikow systemu (roota i usera)
- kiedy uzywac hasla utworzonego przy okazji kreacji kluczy RSA ?


Tolerancja i apatia, to ostatnie cnoty umierającego społeczeństwa.
Gdy wiesz o wszystkim, co robi twoj rzad – to jest demokracja.
Gdy rzad wie wszystko o tobie – to jest tyrania !

Offline

 

#8  2022-04-26 16:50:08

  rulezdc - Członek DUG

rulezdc
Członek DUG
Skąd: Tarnowskie Góry
Zarejestrowany: 2007-05-22

Re: SSH passphrase i polaczenie - nie dziala

Tak na szybko:
root -> nigdy nie powinno sie logowac zdalnie
user -> jak potrzebujesz i wymagane jest logowanie user/pass
klucz -> praktycznie w kazdym przypadku, bezpieczniejsze od user/pass

Offline

 

#9  2022-04-26 17:50:45

  morfik - Cenzor wirtualnego świata

morfik
Cenzor wirtualnego świata
Skąd: ze WSI
Zarejestrowany: 2011-09-15
Serwis

Re: SSH passphrase i polaczenie - nie dziala

No tam połączenie było debian@127.0.0.1 czyli próbujesz się logować na użytkownika debian a nie root. Więc hasło od konta debian powinieneś wpisać, jeśli takie w ogóle masz.

Po wydaniu polecenia ssh, hasło wpisujesz do tego systemu (i jego użytkownika), do którego się łączysz, a nie hasło do systemu (i jego user'a), z którego to polecenie wydajesz, przykład:

maszyna lokalna z klientem ssh > odpalasz na niej terminal i widzisz prompt (nie musi być z roota, może być ze zwykłego user'a) > chcesz się zalogować, np. na użytkownika root, na maszynie co ma w sieci adres IP 192.168.1.120 > wpisujesz ssh root@192.168.1.120 > wyskakuje ci prośba o podanie hasła > podajesz hasło do root'a (bo root stoi przed @), który jest skonfigurowany na zdalnej maszynie.

Offline

 

#10  2022-04-26 18:40:28

  Karoll - Użytkownik

Karoll
Użytkownik
Zarejestrowany: 2019-08-12

Re: SSH passphrase i polaczenie - nie dziala

Swietne wyjasnienia (szczegolnie morfika) teraz mi sie wszystko powoli zaczyna ukladac.
Jezeli mozna to poprosze jeszcze o interpretacje takiej komendy:

Kod:

ssh -f -N -D 0.0.0.0:5522 localhost

Zrozumialem z tego, ze jest to uruchamianie demona serwera ssh w tle, dzialajacego na porcie 5522.
Nie rozumiem pozostalej czesci sieciowej, co takie ustawienie daje w efekcie, kogo z kim laczy?


Tolerancja i apatia, to ostatnie cnoty umierającego społeczeństwa.
Gdy wiesz o wszystkim, co robi twoj rzad – to jest demokracja.
Gdy rzad wie wszystko o tobie – to jest tyrania !

Offline

 

#11  2022-04-26 18:55:23

  morfik - Cenzor wirtualnego świata

morfik
Cenzor wirtualnego świata
Skąd: ze WSI
Zarejestrowany: 2011-09-15
Serwis

Re: SSH passphrase i polaczenie - nie dziala

Tu masz info o tym adresie 0.0.0.0.

A co do samego polecenia to wygląda na jakiś SSH port forwarding. Tutaj masz przykład użytkowy z zastosowania tego mechanizmu. xD

Offline

 

#12  2022-04-28 12:58:23

  Karoll - Użytkownik

Karoll
Użytkownik
Zarejestrowany: 2019-08-12

Re: SSH passphrase i polaczenie - nie dziala

Pracuje i mam skromne wyniki. Na moim desktopie utworzylem nowego usera  i loguje sie kluczem do niego gladko a nastepnie wychodze exit.
0.0.0.0:22 oznacza, że ​​dostęp do portu 22 jest dozwolony z dowolnego adresu IP
Czytalem kilkukrotnie  podany przez Ciebie link a w szczegolnosci komende:

Kod:

ssh -L 12345:localhost:80 root@192.168.11.111 -p 22
root@192.168.11.111's password:

Haslo roota nie dziala.
Pierwsza czesc:

Kod:

ssh -L 12345:localhost:80

to utworzenie tunelu na pettli zwrotnej miedzy portami: 12345 oraz 80.
Druga czesc:

Kod:

root@192.168.11.111 -p 22

????
Jaka jest trasa pakietow w calej komendzie?

Ostatnio edytowany przez Karoll (2022-04-28 13:11:55)


Tolerancja i apatia, to ostatnie cnoty umierającego społeczeństwa.
Gdy wiesz o wszystkim, co robi twoj rzad – to jest demokracja.
Gdy rzad wie wszystko o tobie – to jest tyrania !

Offline

 

#13  2022-04-28 14:51:53

  morfik - Cenzor wirtualnego świata

morfik
Cenzor wirtualnego świata
Skąd: ze WSI
Zarejestrowany: 2011-09-15
Serwis

Re: SSH passphrase i polaczenie - nie dziala

Nie działa bo to był jedynie przykład zastosowania SSH port forwarding'u.

Tam miałeś w tekście wyjaśnienie co to polecenie robi.

-L 12345:localhost:80 -- Jeden koniec tunelu będzie na interfejsie pętli zwrotnej naszego komputera na porcie 12345 . Natomiast drugi koniec na pętli zwrotnej routera, z tym, że na porcie 80 .
root@192.168.1.235 -- user root, adres 192.168.1.235 serwera SSH
-p 22 -- port serwera SSH.

Offline

 

#14  2022-04-28 18:40:53

  Karoll - Użytkownik

Karoll
Użytkownik
Zarejestrowany: 2019-08-12

Re: SSH passphrase i polaczenie - nie dziala

root@192.168.1.235 — user root, adres 192.168.1.235 serwera SSH
-p 22 — port serwera SSH.

To akurat wiem, ale nie rozumiem relacji do pierwszej czesci komendy ktora konczy tunel na pętli zwrotnej routera, z tym, że na porcie 80.
Czy druga czesc komendy:

Kod:

root@192.168.1.235 -p 22

oznacza, ze tunel jest przedluzony od portu 80 na ruterze - do portu 22 na komputerze z adresacja 192.168.1.235, dla uzytkownika "root"?
Pierwsz czesc komendy dotyczy rutera, a druga czesc komputera konczacego tunel?
Przepraszam, jezeli jestem upierdliwy ale staram sie zrozumiec logike komend budujacych tunel SSH.
Dotychczas nie znalazlem jakiegos nieskomplikowaego tutoriala czy artykulu.


Tolerancja i apatia, to ostatnie cnoty umierającego społeczeństwa.
Gdy wiesz o wszystkim, co robi twoj rzad – to jest demokracja.
Gdy rzad wie wszystko o tobie – to jest tyrania !

Offline

 

#15  2022-04-28 19:54:31

  morfik - Cenzor wirtualnego świata

morfik
Cenzor wirtualnego świata
Skąd: ze WSI
Zarejestrowany: 2011-09-15
Serwis

Re: SSH passphrase i polaczenie - nie dziala

Masz to opisane w man ssh:

-L [bind_address:]port:host:hostport
     -L [bind_address:]port:remote_socket
     -L local_socket:host:hostport
     -L local_socket:remote_socket
             Specifies that connections to the given TCP port or Unix socket on the local (client) host are to
             be forwarded to the given host and port, or Unix socket, on the remote side.  This works by allo‐
             cating a socket to listen to either a TCP port on the local side, optionally bound to the speci‐
             fied bind_address, or to a Unix socket.  Whenever a connection is made to the local port or
             socket, the connection is forwarded over the secure channel, and a connection is made to either
             host port hostport, or the Unix socket remote_socket, from the remote machine.

             Port forwardings can also be specified in the configuration file.  Only the superuser can forward
             privileged ports.  IPv6 addresses can be specified by enclosing the address in square brackets.

             By default, the local port is bound in accordance with the GatewayPorts setting.  However, an ex‐
             plicit bind_address may be used to bind the connection to a specific address.  The bind_address
             of “localhost” indicates that the listening port be bound for local use only, while an empty ad‐
             dress or ‘*’ indicates that the port should be available from all interfaces.

To ssh -L 12345:localhost:80 root@192.168.1.235 -p 22 jest całe polecenie. Frazę użytkownika, adres i port wpisujesz zawsze, by system wiedział gdzie słać pakiety sieciowe (do jakiej maszyny w sieci). Flaga -L precyzuje korzystanie z forwarding'u. Jak zostanie użyta, to np. w netstat będziesz miał taki wpisy na maszynie, na której to polecenie wydasz:

Kod:

╰─[0] < > #  netstat -napletu  | egrep -i "12345"
tcp        0      0 127.0.0.1:12345         0.0.0.0:*               LISTEN      1000       10978332   1181627/ssh
tcp        0      0 127.0.0.1:55326         127.0.0.1:12345         ESTABLISHED 1000       11338123   1211196/firefox
tcp        0      0 127.0.0.1:12345         127.0.0.1:55326         ESTABLISHED 1000       11338760   1181627/ssh     -

Teraz po wpisaniu w przeglądarce w pasku adresu 127.0.0.1:12345, ta przeglądarka będzie przesyłać pakiety do lokalnego demona ssh, bo w parametrze -L było 12345:localhost (ten drugi port, tj. :80 nas póki co nie interesuje). W ten sposób wszystkie pakiety z maszyny lokalnej przeznaczone na 127.0.0.1:12345, polecą do lokalnego demona ssh, bo to on na tym adresie i porcie nasłuchuje. Tam na maszynie zdalnej, pakiety zostaną odebrane przez demona ssh (na adresie 192.168.1.235 i na porcie 22), po czym zostaną przez demona ssh przekierowane (w oparciu o parametr -L, tj. localhost:80), tak, by te pakiety trafiły do celu, tj. na adres 127.0.0.1:80, na którym np. może nasłuchiwać panel webowy routera, którego nie chcemy udostępniać w sieci każdemu. Na tej maszynie zdalnej będziesz miał dodatkowe wpis w postaci:

Kod:

root@RedViper:~# netstat -napletu | egrep -i ":80"

tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      2616/uhttpd
tcp        0      0 :::80                   :::*                    LISTEN      2616/uhttpd
tcp        0      0 ::1:43594               ::1:80                  ESTABLISHED 14485/dropbear
tcp        0      0 ::1:80                  ::1:43594               ESTABLISHED 2616/uhttpd

Ten dropbear to taki serwer ssh dla routerów. xD Tutaj masz połączenie dropbear'a z uhttpd, czyli serwerem www, na którym jest panel webowy routera.

Jak byś zerwał tunel (zamknął terminal po wydaniu ssh -L 12345:localhost:80 root@192.168.1.235 -p 22), to wtedy znikną te dodatkowe wpisy z netstat, i próba odwiedzenia adresu 127.0.0.1:12345 na lokalnej maszynie zwróci błąd, bo lokalnie nic na tym adresie i porcie już nie nasłuchuje i nie ma co przekazać tych pakietów do zdalnego serwera SSH, gdzie mogłyby zostać odebrane i przetworzone zgodnie z ustalonymi instrukcjami

To chyba tyle. xD

Ostatnio edytowany przez morfik (2022-04-28 20:09:35)

Offline

 

#16  2022-04-28 21:33:29

  Karoll - Użytkownik

Karoll
Użytkownik
Zarejestrowany: 2019-08-12

Re: SSH passphrase i polaczenie - nie dziala

Malina, z dwoch powodow:
- ze byles tak uprzejmy, tak obszernie wyjasnic zagadnienie.
- ze chyba myslalem prawidlowo, tylko wyrazalem to nieprofesjonalnie.
Teraz bede jeszcze kilkukrotnie analizowal cala tresc zeby ja lepiej utrwalic.
Szacunek i wdziecznosc, za dzielenie sie wiedza i poswiecony czas.


Tolerancja i apatia, to ostatnie cnoty umierającego społeczeństwa.
Gdy wiesz o wszystkim, co robi twoj rzad – to jest demokracja.
Gdy rzad wie wszystko o tobie – to jest tyrania !

Offline

 

#17  2022-04-29 08:25:40

  morfik - Cenzor wirtualnego świata

morfik
Cenzor wirtualnego świata
Skąd: ze WSI
Zarejestrowany: 2011-09-15
Serwis

Re: SSH passphrase i polaczenie - nie dziala

Popatrz sobie po portach w netstat, np. firefox miał połączenie o lokalnej końcówce 127.0.0.1:55326 (ten duży port jest dobierany losowo przy zestawianiu połączenia przez aplikację inicjującą połączenie), zaś zdalna końcówka to 127.0.0.1:12345 (tu port jest tym co stało w parametrze -L w poleceniu ssh). Z kolei w netstat wpis z ssh ma porty odwrotne, tj. jako lokalną końcówkę połączenia ma 127.0.0.1:12345, a zdalną 127.0.0.1:55326 i między tymi procesami odbywa się wymiana informacji via pakiety sieciowe TCP/IP w obrębie jednej maszyny, na jej pętli zwrotnej. Jak już do demona ssh dotrą pakiety od firefox'a (na tej lokalnej maszynie), to potem demon ssh przesyła te pakiety do zdalnej maszyny i tam po odebraniu ich przez zdalnego demona ssh, ten proces jest odwracany, co widać po analogicznych wpisach w netstat na zdalnej maszynie.

Offline

 

#18  2022-04-29 10:53:35

  Karoll - Użytkownik

Karoll
Użytkownik
Zarejestrowany: 2019-08-12

Re: SSH passphrase i polaczenie - nie dziala

Komenda:

Kod:

ssh -f -N -D 0.0.0.0:5522 localhost
root@localhost's password: 
Permission denied, please try again.

Dlaczego nie moge utworzyc tunelu ssh na hoscie lokalnym, gdzie daemon ssh w tle nasluchuje z wszystkich adresow na porcie 5522?
Brakujace uprawnienia ?


Tolerancja i apatia, to ostatnie cnoty umierającego społeczeństwa.
Gdy wiesz o wszystkim, co robi twoj rzad – to jest demokracja.
Gdy rzad wie wszystko o tobie – to jest tyrania !

Offline

 

#19  2022-04-29 16:55:10

  mati75 - Psuj

mati75
Psuj
Skąd: masz ten towar?
Zarejestrowany: 2010-03-14

Re: SSH passphrase i polaczenie - nie dziala

Włącz logowanie na root w konfiguracji serwera ssh co było podane w jednym z pierwszych postów...


https://l0calh0st.pl/obrazki/userbar.png

Offline

 

#20  2022-04-29 17:29:55

  Karoll - Użytkownik

Karoll
Użytkownik
Zarejestrowany: 2019-08-12

Re: SSH passphrase i polaczenie - nie dziala

Moje "gapowe" Mati75 dobrze radzi, po edycji konfigu dziala jak nalezy:

Kod:

root@debian:~# nano /etc/ssh/sshd_config
root@debian:~# systemctl restart sshd
root@debian:~# cat /etc/ssh/sshd_config|grep -i permitrootlogin
PermitRootLogin yes
# the setting of "PermitRootLogin without-password".
root@debian:~# ssh root@192.168.11.111
root@192.168.11.111's password: 
Linux debian 5.10.0-0.bpo.9-amd64 #1 SMP Debian 5.10.70-1~bpo10+1 (2021-10-10) x86_64

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Tue Apr 26 10:50:10 2022 from 192.168.11.111
root@debian:~# systemctl list-unit-files | grep enabled | grep ssh
ssh.service                                                      enabled        
sshd.service                                                     enabled        
root@debian:~# netstat -anp | grep sshd
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      5421/sshd           
tcp        0      0 192.168.11.111:22       192.168.11.111:46890    ESTABLISHED 6357/sshd: root@pts 
unix  3      [ ]         STREAM     CONNECTED     39847    5421/sshd            
unix  2      [ ]         DGRAM                    44643    6357/sshd: root@pts  
unix  2      [ ]         STREAM     CONNECTED     44621    6357/sshd: root@pts  
root@debian:~#

Ostatnio edytowany przez Karoll (2022-04-29 17:31:34)


Tolerancja i apatia, to ostatnie cnoty umierającego społeczeństwa.
Gdy wiesz o wszystkim, co robi twoj rzad – to jest demokracja.
Gdy rzad wie wszystko o tobie – to jest tyrania !

Offline

 

#21  2022-04-29 20:32:15

  Karoll - Użytkownik

Karoll
Użytkownik
Zarejestrowany: 2019-08-12

Re: SSH passphrase i polaczenie - nie dziala

Mam nadzieje, ze dla mojego laptopa dzialajacego glownie w sieci WiFi,w sieciach publicznych, takie zabezpieczenie:
HTTPS + SSH (np)

Kod:

ssh root@192.168.0.45 -D 8888

plus oczywiscie odpowiednia konfiguracja ustawien sieciowych Firefoxa
dla trafficu: bank, office, email - bedzie wystarczajacym zabezpieczeniem.


Tolerancja i apatia, to ostatnie cnoty umierającego społeczeństwa.
Gdy wiesz o wszystkim, co robi twoj rzad – to jest demokracja.
Gdy rzad wie wszystko o tobie – to jest tyrania !

Offline

 

#22  2022-04-29 21:44:27

  morfik - Cenzor wirtualnego świata

morfik
Cenzor wirtualnego świata
Skąd: ze WSI
Zarejestrowany: 2011-09-15
Serwis

Re: SSH passphrase i polaczenie - nie dziala

Sieć bez znaczenia póki połączenie jest szyfrowane punkt-punkt.

Offline

 

#23  2022-05-01 13:21:16

  Karoll - Użytkownik

Karoll
Użytkownik
Zarejestrowany: 2019-08-12

Re: SSH passphrase i polaczenie - nie dziala

Poczytalem sporo, majac nadzieje, ze nie bede musial naduzywac Waszej uprzejmosci, ale nie jestem pewien czy do konca dobrze rozumiem, jakie sa przyczyny i skutki uzycia na koncu komendy otwierajacej tunel 2 nastepujacych sformulowan:

Kod:

localhost

oraz

Kod:

127.0.0.1

Dlaczego sam adres IP nie wystarcza ?


Tolerancja i apatia, to ostatnie cnoty umierającego społeczeństwa.
Gdy wiesz o wszystkim, co robi twoj rzad – to jest demokracja.
Gdy rzad wie wszystko o tobie – to jest tyrania !

Offline

 

#24  2022-05-02 09:33:36

  morfik - Cenzor wirtualnego świata

morfik
Cenzor wirtualnego świata
Skąd: ze WSI
Zarejestrowany: 2011-09-15
Serwis

Re: SSH passphrase i polaczenie - nie dziala

Mi tam działa na obu, bo przecie:

Kod:

$  ping localhost
PING localhost (127.0.0.1) 56(84) bytes of data.
64 bytes from localhost (127.0.0.1): icmp_seq=1 ttl=64 time=0.064 ms
64 bytes from localhost (127.0.0.1): icmp_seq=2 ttl=64 time=0.067 ms
^C
--- localhost ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1022ms
rtt min/avg/max/mdev = 0.064/0.065/0.067/0.001 ms

Offline

 

#25  2022-05-02 10:51:22

  Karoll - Użytkownik

Karoll
Użytkownik
Zarejestrowany: 2019-08-12

Re: SSH passphrase i polaczenie - nie dziala

Nieporozumienie, wiem, ze 127.0.0.1 to tzw adres zwrotny, loopback, gdzie uslugi "gadaja ze soba" jest virtualny, opowiada zakres adresów ::1/128, czyli wyłącznie jeden adres,
ip addr show dev lo

Kod:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever

1 Pytanie: czy dla komendy,

Kod:

ssh .......

jest bez znaczenia czy zastosuje w niej ?
adresacje

Kod:

127.0.0.1

czy verbalnie

Kod:

localhost

Jezeli obydwa rozwiazania dzialaja, to dlaczego sa 2 rozwiazania a nie jedno ?


Tolerancja i apatia, to ostatnie cnoty umierającego społeczeństwa.
Gdy wiesz o wszystkim, co robi twoj rzad – to jest demokracja.
Gdy rzad wie wszystko o tobie – to jest tyrania !

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Nas ludzie lubią po prostu, a nie klikając w przyciski ;-)