Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk mendapatkan rentetan sambungan untuk panggilan balik pengesahan dalam SSH dalam golang?

Bagaimana untuk mendapatkan rentetan sambungan untuk panggilan balik pengesahan dalam SSH dalam golang?

PHPz
PHPzke hadapan
2024-02-09 15:40:081013semak imbas

如何在 golang 中的 SSH 中获取身份验证回调的连接字符串?

editor php Youzi akan memperkenalkan anda cara mendapatkan rentetan sambungan panggilan balik pengesahan dalam SSH di golang. Dalam protokol SSH, panggil balik pengesahan ialah pautan penting, yang digunakan untuk mengesahkan identiti pelanggan dan mewujudkan sambungan selamat. Untuk mendapatkan rentetan sambungan untuk panggilan balik pengesahan, kita boleh menggunakan fungsi dan kaedah yang disediakan oleh pakej ssh dalam golang dengan parameter dan tetapan yang betul. Dalam artikel seterusnya, kami akan menerangkan proses ini secara terperinci untuk membantu anda mengendalikan sambungan dan pengesahan SSH secara fleksibel dalam golang.

Kandungan soalan

Kod konfigurasi pelayan saya ialah:

serverConfig := ssh.ServerConfig{
        PublicKeyCallback: func(c ssh.ConnMetadata, pubKey ssh.PublicKey) (*ssh.Permissions, error) {
        ...
    }
}

Saya menggunakan sesuatu seperti ssh://user@host:port/path untuk memulakan sambungan ssh. Bagaimanakah saya boleh mendapatkan bahagian laluan rentetan sambungan ssh dalam panggilan balik ini atau sebarang panggilan balik lain yang boleh menyemak kunci/kata laluan pengguna? ssh://user@host:port/path 之类的内容启动 ssh 连接。如何在此回调或任何其他可以检查用户密钥/密码的回调中获取 ssh 连接字符串的 path 部分?

解决方法

SSH 与 http 不同,http 中包含 ssh://user@host:port/path。格式确实是 user@host:port 但它不需要 ssh:// 和路径构造。在您的问题中, PublicKeyCallback 正在使用公钥。如果您正在执行自定义操作,请在 PublicKeyCallback

Penyelesaian🎜🎜SSH berbeza daripada http, yang mengandungi ssh://user@host:port/path. Formatnya sememangnya user@host:port tetapi ia tidak memerlukan ssh:// dan pembinaan laluan. Dalam soalan anda, PublicKeyCallback menggunakan kunci awam. Jika anda melakukan operasi tersuai, lakukan di luar PublicKeyCallback. 🎜

Atas ialah kandungan terperinci Bagaimana untuk mendapatkan rentetan sambungan untuk panggilan balik pengesahan dalam SSH dalam golang?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:stackoverflow.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam