Sebuah jawaban untuk Linux: memungkinkan pengguna untuk mendengarkan port di bawah 1024 yang ditentukan memberikan izin tambahan yang dapat dieksekusi menggunakan setcap
sedemikian rupa sehingga program dapat mengikat ke port <1024:
setcap 'cap_net_bind_service=+ep' /path/to/program
Apa cara yang benar untuk membatalkan izin ini?
linux
capabilities
pengguna2943160
sumber
sumber
man
halaman pendek itu >.>Apa yang diposting @ stephen-harris benar. Tapi saya percaya itu menghilangkan semua kemampuan yang ditambahkan ke program dalam satu kesempatan. Untuk menghapus kemampuan tertentu, berikut ini akan berfungsi (mengikuti contoh dalam pertanyaan)
setcap 'cap_net_bind_service=-ep' /path/to/program
,Perhatikan tanda '-'. Anda dapat memverifikasi kapabilitas {efek dari perintah} di atas yang dapat dieksekusi sebagai berikut:
Dalam kasus setcap -r, semua kemampuan akan hilang dan hasil getcap akan kosong sedangkan '-ep' hanya menghapus apa yang Anda tambahkan dengan '+ ep'. Sangat berguna ketika Anda memberikan banyak kemampuan dan ingin menghapusnya secara selektif.
sumber