Salah satu prinsip dasar keamanan komputer adalah tidak pernah menjalankan apa pun yang tidak Anda butuhkan.
Saya melakukan pgrep
ping untuk suatu proses hari ini ketika saya perhatikan bahwa mesin Ubuntu 9.04 (desktop) saya menjalankan daemon git server. Setelah bersumpah cepat, saya menemukan bahwa git-daemon-run
paket itu telah (mungkin tidak sengaja) diinstal, dan menghapusnya menghilangkan proses itu (dan memastikan bahwa itu tidak akan dimulai lagi nanti).
Tetapi dalam kasus lain, saya ingin paket server diinstal, tetapi tidak ingin server daemon berjalan. Sebagai contoh, saya gunakan lighttpd
untuk pengujian internal (dimulai dengan skrip pengujian khusus untuk beberapa aplikasi, dan hanya mendengarkan pada localhost dalam konfigurasi tersebut) tetapi saya tidak ingin mendengarkan koneksi luar dengan beberapa file konfigurasi acak. (Jika saya ingin menjalankan satu mendengarkan untuk koneksi luar, saya akan mengkonfigurasi dan menjalankannya sendiri.)
Saya benar-benar tidak suka menjalankan semua jenis server acak yang tidak saya butuhkan pada mesin yang terpajan Internet, karena siapa yang tahu lubang keamanan apa yang mereka buka. Dan saya lebih memilih untuk tidak perlu mempermasalahkan firewall, karena itu merupakan sumber kesalahan dan kesalahan konfigurasi yang dapat membuka celah keamanan. Tidak terlalu sulit untuk memiliki mesin Unix yang dikonfigurasi untuk tidak memulai server apa pun kecuali diminta secara khusus oleh admin; NetBSD (dan OpenBSD, juga, saya pikir) datang dengan cara ini secara default.
Bagaimana cara mengkonfigurasi sistem Ubuntu saya untuk tidak memulai daemon server apa pun kecuali saya secara khusus memberi tahu bahwa saya ingin memulai?
(Meminta untuk menginstal paket tidak, dalam buku saya, meminta untuk memulai server. Jika memang seharusnya, itu adalah antarmuka pengguna yang mengerikan, karena banyak instalasi paket bahkan tidak memiliki server untuk memulai, sehingga membuat terlalu mudah untuk secara tidak sengaja memulai server tanpa menyadari Anda telah melakukannya.)
EDIT: Hanya untuk memperjelas, masalahnya bukan bahwa saya ingin dapat menghentikan server yang ada. Masalahnya adalah saya tidak ingin server baru dimulai tanpa permintaan eksplisit. Ini berarti saya harus dapat melakukan tugas sysadmin, seperti menginstal paket, dan yakin bahwa tidak ada server yang telah dimulai. Sebagian besar tanggapan tidak membahas hal ini.