Wiem jak podłączyć „do” określonego portu podczas ssh'ing.
ssh user@remotehostip -p XXX
ale czy istnieje sposób na ustanowienie ssh „z” określonym portem?
Mam na myśli, czy istnieje sposób na określenie portu, z którego będzie korzystał mój komputer lokalny?
Odpowiedzi:
To nie jest łatwo możliwe. Jak można to zrobić, zależy od tego, gdzie powinien być widoczny port źródłowy: Też lokalnie, czy wystarczy, jeśli jest to właściwy port z perspektywy sieci zewnętrznej?
Możesz uruchomić klienta SSH w kontenerze LXC. Nigdy tego nie zrobiłem, dlatego nie mogę ci tego szczegółowo wyjaśnić. Ale tworzysz interfejs sieci wirtualnej i dołączasz go do tego kontenera, aby
ssh
korzystał z tego interfejsu, ponieważ jest to jedyny (zewnętrzny) interfejs, który widzi.W systemie hosta powinno być możliwe wykrycie, że pakiet pochodzi z tego interfejsu. W ten sposób możesz użyć NAT (SNAT) Netfiltera do przepisania adresu źródłowego za pomocą czegoś takiego:
Oczywiście to nie działa (lub staje się bardziej skomplikowane), jeśli łączysz się z portami innymi niż 22.
źródło
sshfs
i ktoś powiedział, że to działa z tym poleceniem, ale nie wierzę w to. Jeśli znajdziesz odpowiedź, daj nam znać :)!Być może jest to składnia polecenia, której szukasz. ssh -p XXX użytkownik @ remotehostip Musisz zmienić kolejność opcji. Wypróbuj teraz, działa dla mnie. Z poważaniem.
źródło
Prostym rozwiązaniem tego problemu, jeśli przekierowujesz porty przez router, jest ustawienie portu wejściowego na cokolwiek chcesz, a portu lokalnego na 22. Twój komputer będzie nadal przyjmował połączenie ssh na 22 jak zwykle, ale w rzeczywistości będzie łączyć się spoza twojej sieci użyjesz portu przychodzącego. Jeśli tylko próbujesz powstrzymać boty przed uderzeniem twojej maszyny w 22, powinno to zrobić.
To może nie pomóc w rozwiązaniu konkretnego problemu, ale wyobrażam sobie, że wiele osób trafia tutaj z tego powodu.
źródło
Zaproponowałem opcję -Z portnum ...
Źródło tutaj: https://github.com/Zibri/openssh-portable
A oto żądanie ściągnięcia: https://github.com/openssh/openssh-portable/pull/130
źródło