Bulan Oktober 2022 lalu, Apple resmi release MacOS terbaru mereka, yaitu MacOS Ventura. Beberapa fitur baru ditawarkan pada Ventura ini, adapun untuk detailnya bisa cek langsung pada referensi berikut : https://www.apple.com/id/macos/ventura/

Hari kemarin pun saya akhirnya coba upgrade Macbook saya ke Ventura, over all berjalan lancar tanpa kendala. Namun pada saat pemakaian sehari-hari, muncul kendala saat mau melakukan remote SSH ke salah satu server yang berada di cloud. Pada saat SSH muncul pesan error seperti berikut

Unable to negotiate with x.x.x.x port 22: no matching host key type found.
Their offer: ssh-rsa,ssh-dss

Berdasarkan beberapa referensi yang saya cari, sepertinya MacOS Ventura ini menggunakan OpenSSH_9.0p1 yang dimana ssh-rsa sudah didisable sejak versi OpenSSH_8.8, sehingga ketika remote SSH ke server yang masih menggunakan ssh-rsa jadi tidak bisa, dan kebetulan server yang mau di remote masih menggunakan openssh-server versi lama yang belum mendukung key type terbaru.

This release disables RSA signatures using the SHA-1 hash algorithm by default. 
This change has been made as the SHA-1 hash algorithm is cryptographically broken, 
and it is possible to create chosen-prefix hash collisions for <USD$50K [1]

Baca juga : Mengubah Lokasi Directory Screenshot pada MacOS

Adapun untuk solusi hal tersebut, yang paling utama sebenarnya disisi server yang mau diremote, package openssh-server nya harus di update ke versi terbaru, atau jika hal ini tidak bisa, mau tidak mau disisi client, dalam hal ini Macbook saya yang harus mengalah dengan mengaktifkan ssh-rsa kembali dengan cara menambahkan option HostKeyAlgorithms=+ssh-rsa dan PubkeyAcceptedKeyTypes=+ssh-rsa pada file config di Macbook

Buat atau edit file ~/.ssh/config, lalu tambahkan baris berikut

Host old-host
        HostkeyAlgorithms +ssh-rsa
	PubkeyAcceptedAlgorithms +ssh-rsa

old-host silakan diganti dengan IP/hostname yang tidak bisa di remote SSH sesuai case diatas. Jika sudah, lalu chmod 600

chmod 600 ~/.ssh/config

Silakan dicoba test SSH kembali, seharusnya masalah diatas sudah clear dan sudah bisa SSH kembali

Mungkin cukup sekian, semoga bermanfaat