Ayrıcalıklı olmayan kapların teknik açıklaması oldukça iyidir. Ancak, sıradan bir PC kullanıcısı için değildir. İnsanların ayrıcalıklı kapları ne zaman ve neden kullanmaları gerektiği ve bunların yararları ve dezavantajları nelerdir?
Ayrıcalıklı olmayan kapların teknik açıklaması oldukça iyidir. Ancak, sıradan bir PC kullanıcısı için değildir. İnsanların ayrıcalıklı kapları ne zaman ve neden kullanmaları gerektiği ve bunların yararları ve dezavantajları nelerdir?
Yanıtlar:
Ayrıcalıklı kapları çalıştırmak, kapları üretim ortamında çalıştırmanın en güvenli yoludur. Konteynırlar güvenlik söz konusu olduğunda kötü tanıtım alırlar ve bunun nedenlerinden biri, bazı kullanıcıların bir kullanıcı bir kapta kök alırsa, ana bilgisayarda da kök kazanma olasılığı bulunduğunu bulmasıdır. Temel olarak, ayrıcalıklı olmayan bir kapsayıcı, ana bilgisayardaki kullanıcı kimliğini maskelemek içindir. Ayrıcalıklı kapsayıcılarla, kök olmayan kullanıcılar kapsayıcılar oluşturabilir ve kapsayıcıda kök olarak görünür ve kapsayıcı olarak görünürler, ancak ana bilgisayarda (kullanıcı kullanıcılarını eşlediğiniz her ne olursa olsun) 10000 kullanıcı kimliği olarak görünürler. Geçenlerde Stephane Graber'in LXC (LXC'nin parlak zihinlerinden / öncü geliştiricilerinden biri ve kesinlikle takip edecek biri) blog dizisine dayanan bir blog yazısı yazdım . Tekrar söylüyorum, son derece parlak.
Blogumdan:
Konteynerden:
lxc-attach -n ubuntu-unprived
root@ubuntu-unprived:/# ps -ef
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 04:48 ? 00:00:00 /sbin/init
root 157 1 0 04:48 ? 00:00:00 upstart-udev-bridge --daemon
root 189 1 0 04:48 ? 00:00:00 /lib/systemd/systemd-udevd --daemon
root 244 1 0 04:48 ? 00:00:00 dhclient -1 -v -pf /run/dhclient.eth0.pid
syslog 290 1 0 04:48 ? 00:00:00 rsyslogd
root 343 1 0 04:48 tty4 00:00:00 /sbin/getty -8 38400 tty4
root 345 1 0 04:48 tty2 00:00:00 /sbin/getty -8 38400 tty2
root 346 1 0 04:48 tty3 00:00:00 /sbin/getty -8 38400 tty3
root 359 1 0 04:48 ? 00:00:00 cron
root 386 1 0 04:48 console 00:00:00 /sbin/getty -8 38400 console
root 389 1 0 04:48 tty1 00:00:00 /sbin/getty -8 38400 tty1
root 408 1 0 04:48 ? 00:00:00 upstart-socket-bridge --daemon
root 409 1 0 04:48 ? 00:00:00 upstart-file-bridge --daemon
root 431 0 0 05:06 ? 00:00:00 /bin/bash
root 434 431 0 05:06 ? 00:00:00 ps -ef
Ana bilgisayardan:
lxc-info -Ssip --name ubuntu-unprived
State: RUNNING
PID: 3104
IP: 10.1.0.107
CPU use: 2.27 seconds
BlkIO use: 680.00 KiB
Memory use: 7.24 MiB
Link: vethJ1Y7TG
TX bytes: 7.30 KiB
RX bytes: 46.21 KiB
Total bytes: 53.51 KiB
ps -ef | grep 3104
100000 3104 3067 0 Nov11 ? 00:00:00 /sbin/init
100000 3330 3104 0 Nov11 ? 00:00:00 upstart-udev-bridge --daemon
100000 3362 3104 0 Nov11 ? 00:00:00 /lib/systemd/systemd-udevd --daemon
100000 3417 3104 0 Nov11 ? 00:00:00 dhclient -1 -v -pf /run/dhclient.eth0.pid -lf /var/lib/dhcp/dhclient.eth0.leases eth0
100102 3463 3104 0 Nov11 ? 00:00:00 rsyslogd
100000 3516 3104 0 Nov11 pts/8 00:00:00 /sbin/getty -8 38400 tty4
100000 3518 3104 0 Nov11 pts/6 00:00:00 /sbin/getty -8 38400 tty2
100000 3519 3104 0 Nov11 pts/7 00:00:00 /sbin/getty -8 38400 tty3
100000 3532 3104 0 Nov11 ? 00:00:00 cron
100000 3559 3104 0 Nov11 pts/9 00:00:00 /sbin/getty -8 38400 console
100000 3562 3104 0 Nov11 pts/5 00:00:00 /sbin/getty -8 38400 tty1
100000 3581 3104 0 Nov11 ? 00:00:00 upstart-socket-bridge --daemon
100000 3582 3104 0 Nov11 ? 00:00:00 upstart-file-bridge --daemon
lxc 3780 1518 0 00:10 pts/4 00:00:00 grep --color=auto 3104
Gördüğünüz gibi süreçler konteynerin içinde kök olarak çalışıyor ancak kök olarak değil, ana bilgisayardan 100000 olarak görünüyor.
Özetle: Avantajlar - ek güvenlik ve güvenlik için ek yalıtım. Olumsuz - Başlangıçta başınızı sarmak için biraz kafa karıştırıcı ve acemi kullanıcı için değil.
Test, kum havuzu oluşturma ve kapsülleme için çok değerli araçlardır. Bir web sunucusunun, hassas özel dosyalara erişemeyen, kendi çalışma ortamında güvenli bir şekilde kilitlenmesini mi istiyorsunuz? Bir kap kullanın. Diğer uygulamalarla uyumlu olmayan eski kitaplık sürümlerini ve belirli yapılandırma dosyalarını gerektiren bir uygulamanız var mı? Ayrıca bir kap. Temelde kroot doğru yapılır. Hizmetleri yeterince ayrı tutmanıza izin verir, böylece her birinin bakımı çok daha kolaydır ve mevcut sistemi rahatsız etmek zorunda kalmadan başka bir makineye taşınabilir veya kopyalanabilir.
Dezavantajı, kapsayıcıya neredeyse her şey için yerel olan ad alanını hatırlamanız gerektiğidir. Nerede olduğunuzu bilmelisiniz ve konteynırlar arasındaki iletişim önemsiz değildir. Modülerliğe ihtiyacınız olduğunda iyi bir fikirdir, ancak sanal makinelerin ek yükünü istemezsiniz ve kaplarda sakladığınız şeyler gerçekten fazla ilişkili değildir.
"Sıradan" bir kullanıcı için, iki kişi için tek bir makine kullanmak için kapları kullanabilir ve onları tamamen farklı makinelerdeymiş gibi saklayabilirsiniz. Örneğin, oda arkadaşları.
Paylaşılan bir çekirdeğe rağmen, rakiplerin bazı şekillerde özgürce kırılma gereksinimlerini artırmasına rağmen (veya daha ziyade saldırı yüzeyinin sınırlandırılmasına yardımcı olur), ayrıcalıklı kaplar buna rağmen konak kökünü kazanan düz hack'lerden tamamen yalıtılmış değildir. .
Bu nedenle, biraz yanlış bir varsayım / taleptir. Bununla birlikte, İnternet'teki birçok kullanıcıdaki teknik yetenek düzeyi, gerçekten teknik olarak yetenekli olmadıkları birçok yolla inet hizmetleri çalıştıracaktır, bu yüzden hey. :)