Bagikan melalui


Sudo untuk Windows

Sudo untuk Windows adalah cara bagi pengguna untuk menjalankan perintah yang ditinggikan (sebagai administrator) langsung dari sesi konsol yang tidak ditinggikan di Windows.

Baca pengumuman, yang mencakup video demo dan mendalami cara kerja Sudo untuk Windows.

Prasyarat

Perintah Sudo untuk Windows tersedia di Windows 11, versi 24H2 atau yang lebih tinggi. (Periksa pembaruan Windows).

Cara mengaktifkan Sudo untuk Windows

Untuk mengaktifkan Sudo untuk Windows, buka Tingkat Lanjut Sistem > di Pengaturan Windows dan atur Aktifkan sudo ke Aktif.

Aktifkan Sudo

Peringatan

Sudo untuk Windows dapat digunakan sebagai vektor eskalasi hak istimewa potensial ketika diaktifkan dalam konfigurasi tertentu. Anda harus memastikan untuk mengetahui pertimbangan keamanan saat mengaktifkan perintah sudo di komputer Anda.

Cara mengonfigurasi Sudo untuk Windows

Sudo untuk Windows saat ini mendukung tiga opsi konfigurasi yang berbeda. Konfigurasi dapat diatur dari menu Tingkat Lanjut Sistem > atau secara terprogram, menggunakan baris perintah. Opsi konfigurasi meliputi:

  • Di jendela baru (forceNewWindow): Opsi forceNewWindow konfigurasi adalah opsi konfigurasi default untuk Sudo untuk Windows. Gunakan sudo dalam konfigurasi ini untuk menjalankan perintah di jendela baru. Ini mirip dengan perintah runas /user:admin dalam perilakunya.

  • Input tertutup (disableInput): Opsi konfigurasi disableInput akan menjalankan proses dengan hak akses lebih tinggi di jendela saat ini, tetapi dengan penangan input tertutup. Ini berarti bahwa proses yang ditingkatkan tidak akan dapat menerima input dari jendela konsol saat ini. Ini berguna untuk skenario di mana Anda ingin menjalankan perintah sebagai administrator, tetapi tidak ingin mengizinkan perintah untuk menerima input dari jendela konsol saat ini. Opsi konfigurasi ini memberikan beberapa kenyamanan inline opsi konfigurasi sambil mengurangi beberapa risiko keamanan terkait.

  • Inline (normal): Opsi normal konfigurasi ini yang paling mirip dengan bagaimana sudo berperilaku pada sistem operasi lainnya. Konfigurasi ini akan menjalankan proses yang ditingkatkan di jendela saat ini dan prosesnya akan dapat menerima input dari sesi konsol saat ini. Ini berguna untuk skenario di mana Anda ingin menjalankan perintah sebagai administrator dan ingin mengizinkan perintah untuk menerima input dari jendela konsol saat ini. Opsi konfigurasi ini memberikan kenyamanan paling mudah, tetapi Anda hanya boleh memilih opsi ini jika Anda terbiasa dengan risiko keamanan terkait.

Anda dapat memilih di antara konfigurasi ini dari menu Tingkat Lanjut Sistem > atau mengubah konfigurasi secara terprogram, di baris perintah yang ditinggikan (konsol admin), menggunakan:

  • sudo config --enable <configuration_option>

Perbarui <configuration_option> ke forceNewWindow, , disableInputatau normal.

Cara menggunakan Sudo untuk Windows

Untuk menggunakan Sudo untuk Windows, cukup prepend sudo ke perintah yang ingin Anda jalankan sebagai administrator. Misalnya, untuk berjalan netstat -ab sebagai administrator, Anda akan berjalan sudo netstat -ab di jendela konsol Anda.

Skenario pengembang umum

Berikut adalah beberapa skenario umum di mana pengembang mungkin menggunakan sudo:

  • Mengedit file sistem: sudo notepad C:\Windows\System32\drivers\etc\hosts
  • Menginstal paket secara global: sudo npm install -g package-name
  • Menjalankan alat administratif: sudo diskpart

Nota

Untuk pekerjaan pengembangan yang melibatkan direktori sistem seperti C:\Windows\, pertimbangkan untuk menggunakan lingkungan pengembangan atau pendekatan alternatif jika memungkinkan. Sudo harus digunakan dengan bijaksana dan hanya ketika izin yang ditinggikan benar-benar diperlukan.

Karena sudo meningkatkan proses yang ditargetkan untuk dijalankan dengan izin tingkat administrator, perintah akan terbuka yang meminta Anda untuk memverifikasi bahwa Anda ingin melanjutkan.

Pertimbangan Keamanan

Ada risiko yang terkait dengan menjalankan sudo dalam konfigurasi Input tertutup (disableInput) atau Inline (normal). Dimungkinkan bagi proses berbahaya untuk mencoba mengontrol proses yang ditinggikan dengan menggunakan koneksi yang dibuat oleh sudo.exe yang tidak ditinggikan dan proses sudo.exe yang ditinggikan.

Opsi disableInput konfigurasi mengurangi risiko dengan menutup pegangan input. Memutuskan handel input dari jendela konsol saat ini berarti bahwa proses yang tidak ditingkatkan tidak dapat mengirim input ke proses yang ditingkatkan.

Opsi inline konfigurasi menjalankan proses yang ditingkatkan di jendela saat ini dan prosesnya dapat menerima input dari sesi konsol saat ini. Proses yang tidak ditingkatkan dapat mengirim input ke proses yang ditingkatkan dalam jendela konsol yang sama atau mendapatkan informasi dari output di jendela saat ini dalam konfigurasi ini.

FAQ

Bagaimana Sudo untuk Windows berbeda dari perintah yang ada runas ?

Perintah sudo ini menawarkan cara untuk dengan cepat menjalankan perintah dengan akses administrator dari konteks lingkungan baris perintah yang tidak memiliki akses administrator saat ini dan sudah dikenal oleh beberapa pengguna yang beralih dari sistem operasi lain. Perintah runas memungkinkan Anda menjalankan program sebagai pengguna mana pun, termasuk administrator jika Anda menginginkannya. Saat ini, perintah sudo pada Windows tidak mendukung menjalankan program sebagai pengguna lain. Perbedaan utama lainnya antara sudo dan runas meliputi:

  • runas memungkinkan Anda menjalankan program sebagai pengguna lain, termasuk tetapi tidak terbatas pada sebagai administrator. Fungsionalitas ini ada di peta jalan untuk perintah sudo, tetapi belum ada.

  • sudo memungkinkan Anda untuk dengan cepat meningkatkan proses (sebagai administrator):

    • Anda dapat memilih untuk melakukannya di jendela baru, yang menyerupai runas alur administrator.
    • Anda dapat memilih untuk menghubungkan proses dengan hak istimewa tinggi ke jendela konsol saat ini menggunakan opsi konfigurasi disableInput dan normal. Ini tidak didukung dengan runas.
  • runas dapat meminta pengguna untuk kata sandi di baris perintah.

  • sudo hanya dapat ditingkatkan melalui fitur keamanan Kontrol Akun Pengguna (UAC) yang dirancang untuk melindungi sistem operasi dari perubahan yang tidak sah menggunakan permintaan verifikasi.

Anda harus mempertimbangkan kasus penggunaan khusus Anda dan berencana untuk menggunakan perintah yang paling sesuai dengan kebutuhan Anda. Anda juga harus mempertimbangkan implikasi keamanan dari menjalankan sudo dalam disableInput mode dan normal . Opsi konfigurasi default forceNewWindow disarankan kecuali Anda terbiasa dan nyaman dengan risiko yang terkait dengan konfigurasi lain sudo .

Repositori Sudo for Windows sumber terbuka

Sudo untuk Windows sumber terbuka dan menyambut kontribusi dan umpan balik Anda. Anda dapat menemukan kode sumber untuk Sudo untuk Windows di GitHub.

Fungsionalitas Tambahan

Jika Anda mencari fungsionalitas tambahan yang tidak disediakan Sudo untuk Windows, lihat gsudo Gerardo Grignoli yang memiliki sejumlah fitur tambahan dan opsi konfigurasi atau lihat solusi lain dari komunitas.