Puncte:0

tunel ssh pentru 443

drapel ss

Trebuie să obțin un fișier printr-un link (443), care este posibil doar de pe server B.

Am 3 servere, (A B C).

Este posibil să accesați serverul B și descărcați acest fișier de către wget de pe server C.

wget https://NAME:[email protected]/customerInfo/804-577823-10 --no-check-certificate
...
2021-06-18 16:18:01 (24,7 MB/s) - â804-577823-10â salvat [163/163]

Din A la B, este permis doar utilizarea pentru port 22 (ssh), nu port 443.

Trebuie să fac un tunel, care va trece prin A la B prin intermediul 22 și descărcați fișierul de pe C prin intermediul wget port 443, exact la fel, ca si cum as fi pe server B.

Pe scurt, am nevoie de un tunel ssh de la A la B și apoi trebuie să folosesc portul 443, pentru aplica/descărcați fișierul pe C prin intermediul wget din A, la fel ca pe B.

Am încercat, dar fără succes.

ssh -L 4433:C:443 -Nf B

Am încercat chiar și cu proxy, dar fără succes.

wget -e use_proxy=yes -e http_proxy=C https://NAME:[email protected]/customerInfo/804-577823-10 --no-check-certificate

Este posibil?

Mulțumesc.

ACTUALIZAȚI

SERVER_A:443 -> tunel ssh prin portul 22 prin SERVER_B -> SERVER_C:443

Deci, dacă folosesc pe SERVER_A același link ca pe SERVER_B, vreau să primesc dosarul wget din SERVER_C.

Cel mai simplu mod este permiterea portului 443 pe SERVER_C pentru SERVER_A, dar nu este posibil în acest caz.

Permis este doar portul 22 între SERVER_A și SERVER_B.

Este cel mai clar acum?

Mulțumiri.

Puncte:2
drapel us

Depinde de cine deține serverele în ceea ce privește permisiunile pentru a determina ce poți face. De asemenea, ceea ce nu prea înțeleg este dacă aceasta este o descărcare o singură dată sau aveți nevoie de o soluție permanentă.

După ce am citit întrebarea dvs., aș intra pe serverul B cu un shell securizat.

$ ssh utilizator@serverB

Apoi descărcați fișierul de acolo. (Punctul de la sfârșit este important)

$ scp -P 443 user@serverC:/path/to/file.txt .

După aceasta, îl puteți trimite la serverul A

$ scp file.txt user@serverA:~/

Există și soluții mai sofisticate, dar depinde de nevoile tale și de libertatea de a acționa.

Actualizați:

Puteți trimite o comandă către server prin ssh.

ssh user@serverB „aduceți fișierul la C”

Ai putea face o comandă dublă ca:

ssh user@serverB "wget ​​your file @C:443 && scp file.txt you@serverA:~/"

Dar apoi trebuie să aveți serverB să aibă certificatele sale publice instalate la serverA pentru a rămâne fără parolă. Alternativa este un script cu 2 comenzi, așa cum este explicat mai sus.

genderbee avatar
drapel ss
Bună, da, știu, dar am nevoie de acces direct la acest link/fișier care se află pe serverul **C** de pe serverul **A**, așa că trebuie să configurez serverul **A** astfel încât linkul de la * Serverul *C** va fi accesibil pe serverul **A**. Este posibil să o faci prin tunelul ssh?
Whois_me avatar
drapel us
Dețineți serverul B?
genderbee avatar
drapel ss
Da, pot face orice pe serverul B, dar nu pe C, așa că nu pot permite accesul de la serverul A la C direct prin portul 443.
drapel ru
@genderbee, atunci trebuie să mergi pe calea indirectă - scp-l pe serverul B, apoi scp de la serverul B la serverul A. Dacă nu deții A sau C, atunci ar trebui să vorbești cu administratorii lor, deoarece ei nu vor * * A și C pentru a avea orice transfer de fișiere.
Whois_me avatar
drapel us
@genderbee. Deși îmi place provocarea de a tunel computere prin matrice, chiar mă întreb ce încerci să obții.
genderbee avatar
drapel ss
@rm- Este simplu, vreau doar să configurez serverul **A** pentru a obține fișierul prin linkul `wget` (portul 443) în același mod, așa cum aș fi pe serverul **B**, folosind prin tunel (sau proxy?). Acum, când încerc `wget` pe serverul **A**, conexiunea este refuzată chiar și tunelul ssh este deschis.
genderbee avatar
drapel ss
@rm- Vezi actualizarea întrebării, te rog.
Whois_me avatar
drapel us
Da am inteles intrebarea ta. Răspunsul meu îți rezolvă întrebarea? Dacă nu, ar trebui să te uiți la alte soluții, atunci presupun. De aici întrebarea mea suplimentară. Ce încerci cu adevărat să faci? Deci, vă putem ajuta în afara domeniului de aplicare al întrebării dvs.
genderbee avatar
drapel ss
@rm- Am o aplicație bazată pe PHP și această aplicație folosește wget call, deci este necesar să fie folosită de `wget`. Inca fara succes.
Whois_me avatar
drapel us
Ok, hai să facem asta pas cu pas. Puteți obține fișierul când sunteți conectat la serverul B? Consultați: https://www.gnu.org/software/wget/manual/wget.html#URL-Format
genderbee avatar
drapel ss
@rm- Da, pot. Serverul B este prod, deci este posibil să obțineți legătura prin portul 443 de la serverul C. Serverul A este de testare și nu există posibilitatea de a obține legătura prin portul 443 de la serverul C. Am permis doar portul 22 între serverul A și B Cum pot face pe serverul A (test) portul funcțional 443 pentru legătura necesară (serverul C) prin tunel prin portul 22?
Whois_me avatar
drapel us
Pasul următor: Adăugați această comandă wget în comanda ssh. Ca în ssh user@serverB „wget command to server C” și executați pe A. Acest lucru ar trebui să funcționeze. Puteți testa mai întâi conexiunea AB cu ssh@user „touch test.txt”. Ar trebui să existe un fișier nou „test.txt” în interiorul serverului B ( /home/user ) după această comandă.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.