Saat melakukan penelitian saya perhatikan bahwa SSH keduanya menggunakan TCP dan UDP. Saya benar-benar mengerti penggunaan TCP, tetapi UDP agak aneh. Mengapa saya menggunakan protokol transport "tidak dapat diandalkan" dengan jabat tangan minimal untuk akses shell yang aman?
Satu-satunya penggunaan yang dapat saya pikirkan adalah untuk SCP, jadi (besar) pengiriman file. Tetapi sekali lagi, bukankah TCP akan lebih berguna karena hal-hal yang berkaitan dengan handshaking?
Bahkan, saya mempertimbangkan hanya membuka TCP untuk SSH, tetapi tidak mengetahui implikasi dari itu akan sangat merugikan.
EDIT
Ternyata tidak hanya tesis tentang ssh atas UDP, tetapi juga implementasi ssh sepenuhnya, yang disebut mosh . Namun, ssh klasik masih hanya menggunakan TCP, sebagaimana ditentukan dalam RFC -nya .
Jawaban:
Saya mencobanya dengan beberapa koneksi SSH dari Windows ke Unix dan Unix ke Unix dan saya tidak mendapatkan paket UDP tunggal pada port 22. Juga server hanya mendengarkan TCP.
Dalam tesis ini mereka mencoba mengimplementasikan UDP untuk transport SSH, tetapi mereka juga menyebutkan bahwa default hanya menggunakan TCP: ". OpenSSH menggunakan TCP secara konsisten untuk semua koneksi jaringannya dan dengan demikian untuk fitur VPN-nya." Halaman Wikipedia mungkin mengatakan itu UDP karena pengembang SSH membuat permintaan awal untuk penugasan UDP & TCP, tetapi RFC terkait tidak menyebutkannya.
sumber
... Protokol SSH menggunakan atau telah menggunakan 22 / UDP untuk kontrol tunneling melalui TCP. Jika didekodekan dengan benar melalui Wireshark dan Anda sedang melakukan tunneling koneksi melalui ssh-agent atau tunneling dari jarak jauh atau secara lokal, Anda akan melihat bahwa UDP dienkapsulasi dalam segmen TCP.
sumber