buluma.ssh_chroot_jail
Rola Ansible ssh_chroot_jail
Prosta obsługa chroot jail dla SSH.
GitHub | Wersja | Zgłoszenia | Żądania Pulla | Pobrania |
---|---|---|---|---|
Przykładowy Playbook
Ten przykład pochodzi z molecule/default/converge.yml
i jest testowany przy każdym wpushu, żądaniu pull i wydaniu.
---
- name: Zrealizuj
hosts: all
become: true
vars:
ssh_chroot_l2chroot_path: /usr/bin/l2chroot
ssh_chroot_jail_users:
- name: foo
home: /home/foo
shell: /bin/bash
roles:
- role: buluma.ssh_chroot_jail
Maszyna musi być przygotowana. W CI odbywa się to przy pomocy molecule/default/prepare.yml
:
---
- name: Przygotuj
hosts: all
become: yes
gather_facts: no
roles:
- role: buluma.bootstrap
Zobacz także pełne wyjaśnienie i przykład dotyczące używania tych ról.
Zmienne Roli
Domyślne wartości dla zmiennych są ustawione w defaults/main.yml
:
---
ssh_chroot_jail_path: /var/jail
ssh_chroot_jail_group_name: ssh_jailed
ssh_chroot_jail_users: []
ssh_chroot_jail_dirs:
- bin
- dev
- etc
- lib
- lib64
- usr/bin
- usr/lib
- usr/lib64
- home
# Może obejmować typ: c, b, p
# c = urządzenie znakowe (z buforem) [domyślnie]
# b = urządzenie blokowe (buforowane)
# p = urządzenie FIFO
# cokolwiek innego może powodować błędy z mknod lub systemd-tmpfiles
ssh_chroot_jail_devs:
- {dev: 'null', major: '1', minor: '3'}
- {dev: 'random', major: '5', minor: '0'}
- {dev: 'urandom', major: '1', minor: '5'}
- {dev: 'zero', major: '1', minor: '8'}
ssh_chroot_tmpfiles_conf_path: /etc/tmpfiles.d/ssh-chroot.conf
ssh_chroot_bins:
- /bin/cp
- /bin/sh
- /bin/bash
- /bin/ls
- /bin/rm
- /bin/cat
- /bin/grep
- /bin/sed
- /bin/chmod
- /bin/chown
- /bin/ed
- /bin/nano
- /usr/bin/tail
- /usr/bin/head
- /usr/bin/awk
- /usr/bin/wc
- /usr/bin/sort
- /usr/bin/uniq
- /usr/bin/cut
- /usr/bin/scp
- /usr/bin/tee
- /usr/bin/touch
- /usr/bin/vim
- /usr/bin/vi
- /usr/bin/dircolors
- /usr/bin/tput
- /usr/bin/free
- /usr/bin/top
- /usr/bin/find
- bin: /usr/bin/which
l2chroot: false
- /usr/bin/id
- /usr/bin/whoami
- /usr/bin/groups
# Można również ustawić tryb, np. do ustawienia setuid lub różnych uprawnień.
# - bin: /bin/ping
# mode: 4755
ssh_chroot_l2chroot_template: l2chroot.j2
ssh_chroot_l2chroot_path: /usr/local/bin/l2chroot
ssh_chroot_copy_extra_items:
- /etc/hosts
- /etc/passwd
- /etc/group
- /etc/ld.so.cache
- /etc/ld.so.conf
- /etc/nsswitch.conf
ssh_chroot_sshd_chroot_jail_config: |
Match group {{ ssh_chroot_jail_group_name }}
ChrootDirectory {{ ssh_chroot_jail_path }}
X11Forwarding no
AllowTcpForwarding no
ssh_chroot_jail_dirs_recurse: true
Wymagania
- Pakiety pip wymienione w requirements.txt.
Stan używanych ról
Poniższe role są używane do przygotowania systemu. Możesz przygotować swój system w inny sposób.
Wymaganie | GitHub | Wersja |
---|---|---|
buluma.bootstrap |
Kontekst
Ta rola jest częścią wielu kompatybilnych ról. Zobacz dokumentację tych ról w celu uzyskania dodatkowych informacji.
Oto przegląd pokrewnych ról:
Kompatybilność
Ta rola była testowana na tych obrazach kontenerów:
kontener | tagi |
---|---|
Debian | wszystkie |
Ubuntu | wszystkie |
Kali | wszystkie |
Minimalna wymagana wersja Ansible to 2.12, testy zostały wykonane na:
- poprzedniej wersji.
- bieżącej wersji.
- wersji deweloperskiej.
Jeśli znajdziesz problemy, zarejestruj je w GitHubie
Dziennik zmian
Licencja
Informacje o autorze
ansible-galaxy install buluma.ssh_chroot_jail