User Tools

Site Tools


команда_chroot

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
команда_chroot [2020/07/16 15:05]
val [Debian/Ubuntu]
команда_chroot [2024/04/26 09:46] (current)
val [Debian/Ubuntu]
Line 31: Line 31:
 cp /bin/cat /​var/​www/​bin/​ cp /bin/cat /​var/​www/​bin/​
 cp /​usr/​bin/​file /​var/​www/​usr/​bin/​ cp /​usr/​bin/​file /​var/​www/​usr/​bin/​
 +cp /​usr/​bin/​date /​var/​www/​usr/​bin/​
  
 cp /​usr/​share/​misc/​magic.mgc /​var/​www/​usr/​share/​misc/​ cp /​usr/​share/​misc/​magic.mgc /​var/​www/​usr/​share/​misc/​
Line 44: Line 45:
 cp /​lib/​x86_64-linux-gnu/​libc.so.* /​var/​www/​lib/​x86_64-linux-gnu/​ cp /​lib/​x86_64-linux-gnu/​libc.so.* /​var/​www/​lib/​x86_64-linux-gnu/​
 cp /​lib/​x86_64-linux-gnu/​libz.so.* /​var/​www/​lib/​x86_64-linux-gnu/​ cp /​lib/​x86_64-linux-gnu/​libz.so.* /​var/​www/​lib/​x86_64-linux-gnu/​
 +#​debian11_12 cp /​lib/​x86_64-linux-gnu/​libbz2.so.* /​var/​www/​lib/​x86_64-linux-gnu/​
 +#debian12 cp /​lib/​x86_64-linux-gnu/​liblz* /​var/​www/​lib/​x86_64-linux-gnu/​
 cp /​usr/​lib/​x86_64-linux-gnu/​libmagic.so.* /​var/​www/​usr/​lib/​x86_64-linux-gnu/​ cp /​usr/​lib/​x86_64-linux-gnu/​libmagic.so.* /​var/​www/​usr/​lib/​x86_64-linux-gnu/​
 </​code><​code>​ </​code><​code>​
Line 50: Line 53:
  
 === Создание окружения через debootstrap === === Создание окружения через debootstrap ===
 +
 +  * [[https://​wiki.debian.org/​ru/​Debootstrap]]
 +
 <​code>​ <​code>​
 debian# apt install debootstrap debian# apt install debootstrap
Line 62: Line 68:
   * [[http://​www.serverschool.com/​dedicated-servers/​how-to-build-a-chroot-environment-in-centos/​|How to Build a Chroot Environment in CentOS]]   * [[http://​www.serverschool.com/​dedicated-servers/​how-to-build-a-chroot-environment-in-centos/​|How to Build a Chroot Environment in CentOS]]
  
-==== FreeBSD ==== 
- 
-=== Создание окружения "в ручную"​ === 
-<​code>​ 
-# ldd /bin/sh 
-# ldd /bin/cat 
-# ldd /​usr/​bin/​file 
- 
-# man file 
- 
-# mkdir /​var/​www/​bin 
-# mkdir /​var/​www/​lib/​ 
- 
-# mkdir /​var/​www/​usr 
-# mkdir /​var/​www/​usr/​bin 
-# mkdir /​var/​www/​usr/​lib 
-# mkdir /​var/​www/​libexec/​ 
-# mkdir -p /​var/​www/​usr/​share/​misc 
- 
-# cp /bin/sh /​var/​www/​bin/​ 
-# cp /bin/cat /​var/​www/​bin/​ 
-# cp /​usr/​bin/​file /​var/​www/​usr/​bin/​ 
- 
-# cp /​usr/​share/​misc/​magic.mgc /​var/​www/​usr/​share/​misc/​ 
-  
-# cp /​lib/​libedit.so.7 /​var/​www/​lib/​ 
-# cp /​lib/​libncurses.so.8 /​var/​www/​lib/​ 
-# cp /​lib/​libz.so.* /​var/​www/​lib/​ 
-# cp /​lib/​libc.so.7 /​var/​www/​lib/​ 
-# cp /​usr/​lib/​libmagic.so.4 /​var/​www/​usr/​lib/​ 
-# cp /​libexec/​ld-elf.so.1 /​var/​www/​libexec/​ 
-</​code>​ 
- 
-=== Создание окружения через make buildworld === 
- 
-[[Технология jail#​Создание "​мира"​]] 
  
 ==== Тестирование ==== ==== Тестирование ====
 <​code>​ <​code>​
-debian# chroot /var/www/ /bin/bash+# chroot /var/www/ /bin/bash
   или   или
-freebsdchroot ​/var/www/bin/sh+unshare -R /var/www /bin/bash
  
 # echo * # echo *
Line 114: Line 84:
 </​code>​ </​code>​
  
-==== Тестирование изоляции процессов ==== 
-<​code>​ 
-debian# mkdir /​var/​www/​proc 
  
-debian# mount --bind /proc /​var/​www/​proc 
- 
-debian# chroot /var/www/ /bin/bash 
- 
-# echo /proc/* 
- 
-# apt install procps 
- 
-# ps ax 
-</​code>​ 
 ===== shell inetd web сервер в chroot ===== ===== shell inetd web сервер в chroot =====
  
   * [[Сервис INETD]]   * [[Сервис INETD]]
  
-==== Debian/​Ubuntu/​FreeBSD ​====+==== Debian/​Ubuntu====
  
 <​code>​ <​code>​
Line 143: Line 100:
 ... ...
 base=/ base=/
 +log=/​webd.log
 ... ...
 </​code>​ </​code>​
  
 +===== Поиск всех процессов в chroot =====
  
-==== FreeBSD ====+  * [[https://​support.cpanel.net/​hc/​en-us/​articles/​1500012454701-How-To-Find-The-List-Of-All-The-Chroot-ed-Processes-On-The-System|How To Find The List Of All The Chroot-ed Processes On The System?]]
  
 <​code>​ <​code>​
-# cat /etc/inetd.conf +for file in `find /proc-type l -name "​root"​ -print 2> /dev/null | grep -Eiv /task2> /dev/null`; do PID=`ls -d $file 2> /dev/null| awk -F "/" '​{print $3}'` && printf "%s = %s = %s\n" "​$PID"​ `ps -p "​$PID"​ 2> /dev/null | tail -n1 | awk '​{print $4}'` `readlink $file 2> /dev/null` | grep -Eiv "(= /​$|^\s*=\s*$|^.*?​=\s*$)";​done
-</code><​code>​ +
-... +
-#http stream tcp nowait root /usr/local/sbin/webd webd +
-http stream tcp nowait root /usr/sbin/chroot chroot ​/var/www/ /sbin/webd +
-</code><​code>​ +
-# service inetd restart+
 </​code>​ </​code>​
 +
команда_chroot.1594901139.txt.gz · Last modified: 2020/07/16 15:05 by val