timorunge.sssd
sssd
Ta rola instaluje i konfiguruje usługę SSSD.
Zapewnia również możliwość instalacji i wprowadzania poprawek do własnej wersji SSSD (z kodu źródłowego) zgodnie z Twoimi potrzebami.
Wymagania
Ta rola wymaga Ansible 2.6.0 lub wyższej, aby móc stosować łaty.
Możesz łatwo zainstalować (i określić) stabilną wersję używając pip:
pip install ansible==2.7.9
Wszystkie wymagania dotyczące platformy są wymienione w pliku metadanych.
Instalacja
- Użyj tagu 0.4.2 dla SSSD >= 1.6.0
- Użyj tagu >= 0.5.0 dla SSSD >= 2.0.0
Rekomendacja
Zaleca się korzystanie z SSSD 1.6.x. Wersja 2.0.0 działa, ale musiałem dodać kilka
łat, aby ją uruchomić. Łaty te to właściwie commity po wydaniu wersji początkowej.
Główna wersja jest zgodna wstecz z wersją 1.6.13. 2.0.0 ma po prostu więcej zależności w systemach opartych na Debianie (gir1.2-glib-2.0, libgirepository-1.0-1 & python-gi
, pip: pyasn1, pyasn1-modules
).
ansible-galaxy install timorunge.sssd[,version]
Uwaga dla RedHat
Niektóre z pakietów, które instaluje ta rola, są dostępne tylko w repozytoriach
rhel-6-server-optional-rpms
lub rhel-7-server-optional-rpms
, może być konieczne włączenie tych repozytoriów, jeśli otrzymasz błąd jak
"Nie znaleziono pakietu odpowiadającego sssd-dbus
".
Włącz to opcjonalne repozytorium dla RHEL 6:
subscription-manager repos --enable rhel-6-server-optional-rpms
A dla RHEL 7:
subscription-manager repos --enable rhel-7-server-optional-rpms
Zmienne roli
Ta rola opiera się na hierarchii YAML tworząc działający plik konfiguracyjny dla usługi SSSD.
Poniżej znajdują się zmienne, które można przekazać do tej roli. Krótki opis znajduje się w tym akapicie. Dla wszystkich zmiennych zajrzyj do opcji konfiguracyjnych SSSD.
# Włącz / wyłącz SSSD jako usługę
# Typ: Bool
sssd_service_enabled: yes
# Włącz wyszukiwanie DNS w konfiguracji sshd
# Typ: Bool
sssd_manage_sshd_dns_service_lookup: false
# Wybierz typ konfiguracji: config (`sssd_config`), plik (`sssd_config_src_file`)
# lub żaden (wyłącz generowanie sssd.conf)
# Typ: Str
sssd_config_type: config
# Domyślne opcje konfiguracyjne SSSD
# Typ: Dict
sssd_config:
"domain/example.com":
access_provider: permit
auth_provider: local
id_provider: local
sssd:
config_file_version: 2
services: nss, pam
domains: example.com
# Domyślny plik konfiguracyjny SSSD
# Typ: Str
sssd_config_src_file: sssd.example.conf
# SSSD z źródła:
# Zainstaluj SSSD z źródeł:
# Typ: Bool
sssd_from_sources: false
# Definicja wersji (istotna tylko, jeśli `sssd_from_sources` jest prawda):
# Typ: Str
sssd_version: 2.0.0
# Łaty
# W tej sekcji możesz zastosować niestandardowe łatki do SSSD.
# Możesz znaleźć jeden przykład w README.md oraz w katalogu testów.
# Typ: Dict
sssd_patches:
fix-makefile:
dest_file: Makefile.am
patch_file: "files/patches/{{ sssd_version }}/fix-makefile.diff"
state: present
# Opcje budowania
# Domyślne opcje budowania są zapisane w `vars/{{ ansible_os_family }}.yml`
# Typ: List
sssd_build_options: "{{ sssd_default_build_options }}"
Przykłady
Aby dokument był zwięzły, opcje kompilacyjne zostały pominięte. Możesz znaleźć opcje budowy SSSD w tym dokumencie.
1) Skonfiguruj SSSD zgodnie z potrzebami
- hosts: all
vars:
sssd_config:
"domain/example.com":
access_provider: permit
auth_provider: local
id_provider: local
sssd:
config_file_version: 2
domains: example.com
services: nss, pam
roles:
- timorunge.sssd
2) Przykład konfiguracji SSSD dla FreeIPA
- hosts: all
vars:
sssd_config:
"domain/example.com":
access_provider: ipa
auth_provider: ipa
cache_credentials: true
chpass_provider: ipa
id_provider: ipa
ipa_domain: example.com
ipa_hostname: debian-eeBahPh3.example.com
ipa_server: ipa-srv1.example.com
krb5_store_password_if_offline: true
ldap_tls_cacert: /etc/ipa/ca.crt
sssd:
config_file_version: 2
domains: example.com
services: ifp, nss, pam, ssh, sudo
nss:
homedir_substring: /home
memcache_timeout: 600
roles:
- timorunge.sssd
3) Zbuduj i skonfiguruj SSSD zgodnie z potrzebami
Oprócz standardowej instalacji przez pakiety, możliwe jest również zbudowanie SSSD z kodu źródłowego (w tym przykładzie dla systemów opartych na Debianie).
- hosts: all
vars:
sssd_from_sources: true
sssd_version: 2.0.0
sssd_default_build_options:
- "--datadir=/usr/share"
- "--disable-rpath"
- "--disable-silent-rules"
- "--disable-static"
- "--enable-krb5-locator-plugin"
- "--enable-nsslibdir=/lib/{{ sssd_dpkg_architecture }}"
- "--enable-pac-responder"
- "--enable-pammoddir=/lib/{{ sssd_dpkg_architecture }}/security"
- "--enable-systemtap"
- "--includedir=/usr/include"
- "--infodir=/usr/local/share/info"
- "--libdir=/usr/lib/{{ sssd_dpkg_architecture }}"
- "--libexecdir=/usr/lib/{{ sssd_dpkg_architecture }}"
- "--localstatedir=/var"
- "--mandir=/usr/local/share/man"
- "--prefix=/usr"
- "--sysconfdir=/etc"
- "--with-autofs"
- "--with-environment-file={{ sssd_environment_file }}"
- "--with-initscript=systemd"
- "--with-krb5-conf=/etc/krb5.conf"
- "--with-krb5-plugin-path=/usr/lib/{{ sssd_dpkg_architecture }}/krb5/plugins/libkrb5"
- "--with-ldb-lib-dir=/usr/lib/{{ sssd_dpkg_architecture }}/ldb/modules/ldb"
- "--with-log-path=/var/log/sssd"
- "--with-pid-path=/var/run"
- "--with-plugin-path=/usr/lib/{{ sssd_dpkg_architecture }}/sssd"
- "--with-samba"
- "--with-secrets-db-path=/var/lib/sss/secrets"
- "--with-secrets"
- "--with-ssh"
- "--with-sudo-lib-path=/usr/lib/{{ sssd_dpkg_architecture }}"
- "--with-sudo"
- "--with-systemdunitdir=/lib/systemd/system"
sssd_config:
"domain/example.com":
access_provider: permit
auth_provider: local
id_provider: local
sssd:
config_file_version: 2
domains: example.com
services: nss, pam
roles:
- timorunge.sssd
4) Nie generuj żadnej konfiguracji
Przydatne, jeśli używasz tej roli w połączeniu np. z serwerem FreeIPA lub klientem FreeIPA.
- hosts: all
vars:
sssd_config_type: none
sssd_from_sources: true
sssd_version: 2.0.0
roles:
- timorunge.sssd
5) Zastosuj łaty do źródła
- hosts: all
vars:
sssd_from_sources: true
sssd_version: 2.0.0
sssd_patches:
fix-makefile:
dest_file: Makefile.am
patch_file: "files/patches/{{ sssd_version }}/fix-makefile.diff"
state: present
sssd_build_options: "{{ sssd_default_build_options }}"
sssd_config:
"domain/example.com":
access_provider: permit
auth_provider: local
id_provider: local
sssd:
config_file_version: 2
domains: example.com
services: nss, pam
roles:
- timorunge.sssd
6) Nadpisz szablony init.d i systemd
- hosts: all
vars:
sssd_init_template: roles/sssd/templates/sssd.service.j2
sssd_service_template: roles/sssd/templates/sssd.init.j2
sssd_config:
"domain/example.com":
access_provider: permit
auth_provider: local
id_provider: local
sssd:
config_file_version: 2
domains: example.com
services: nss, pam
roles:
- timorunge.sssd
Opcje konfiguracyjne SSSD
# Format:
# opcja: typ, podtyp, obowiązkowy[, domyślny]
sssd_config:
service:
# Opcje dostępne dla wszystkich usług
timeout: int, None, false
debug: int, None, false
debug_level: int, None, false
debug_timestamps: bool, None, false
debug_microseconds: bool, None, false
debug_to_files: bool, None, false
command: str, None, false
reconnection_retries: int, None, false
fd_limit: int, None, false
client_idle_timeout: int, None, false
responder_idle_timeout: int, None, false
cache_first: int, None, false
description: str, None, false
sssd:
# Monitoruj usługę
config_file_version: int, None, false
services: list, str, true, nss, pam
domains: list, str, true
sbus_timeout: int, None, false
re_expression: str, None, false
full_name_format: str, None, false
krb5_rcache_dir: str, None, false
user: str, None, false
default_domain_suffix: str, None, false
certificate_verification: str, None, false
override_space: str, None, false
disable_netlink: bool, None, false
enable_files_domain: str, None, false
domain_resolution_order: list, str, false
try_inotify: bool, None, false
nss:
# Usługa nazewnictwa
enum_cache_timeout: int, None, false
entry_cache_nowait_percentage: int, None, false
entry_negative_timeout: int, None, false
local_negative_timeout: int, None, false
filter_users: list, str, false
filter_groups: list, str, false
filter_users_in_groups: bool, None, false
pwfield: str, None, false
override_homedir: str, None, false
fallback_homedir: str, None, false
homedir_substring: str, None, false, /home
override_shell: str, None, false
allowed_shells: list, str, false
vetoed_shells: list, str, false
shell_fallback: str, None, false
default_shell: str, None, false
get_domains_timeout: int, None, false
memcache_timeout: int, None, false
user_attributes: str, None, false
pam:
# Usługa autoryzacji
offline_credentials_expiration: int, None, false
offline_failed_login_attempts: int, None, false
offline_failed_login_delay: int, None, false
pam_verbosity: int, None, false
pam_response_filter: str, None, false
pam_id_timeout: int, None, false
pam_pwd_expiration_warning: int, None, false
get_domains_timeout: int, None, false
pam_trusted_users: str, None, false
pam_public_domains: str, None, false
pam_account_expired_message: str, None, false
pam_account_locked_message: str, None, false
pam_cert_auth: bool, None, false
pam_cert_db_path: str, None, false
p11_child_timeout: int, None, false
pam_app_services: str, None, false
pam_p11_allowed_services: str, None, false
sudo:
# Usługa sudo
sudo_timed: bool, None, false
sudo_inverse_order: bool, None, false
sudo_threshold: int, None, false
autofs:
# Usługa autofs
autofs_negative_timeout: int, None, false
ssh:
# Usługa ssh
ssh_hash_known_hosts: bool, None, false
ssh_known_hosts_timeout: int, None, false
ca_db: str, None, false
pac:
# PAC responder
allowed_uids: str, None, false
pac_lifetime: int, None, false
ifp:
# InfoPipe responder
allowed_uids: str, None, false
user_attributes: str, None, false
secrets:
# Usługa secretów
provider: str, None, false
containers_nest_level: int, None, false
max_secrets: int, None, false
max_uid_secrets: int, None, false
max_payload_size: int, None, false
# Usługa sekretnych - proxy
proxy_url: str, None, false
auth_type: str, None, false
auth_header_name: str, None, false
auth_header_value: str, None, false
forward_headers: list, None, false
username: str, None, false
password: str, None, false
verify_peer: bool, None, false
verify_host: bool, None, false
capath: str, None, false
cacert: str, None, false
cert: str, None, false
key: str, None, false
session_recording:
# Usługa nagrywania sesji
scope: str, None, false
users: list, str, false
groups: list, str, false
provider:
# Typy dostępnych dostawców
id_provider: str, None, true
auth_provider: str, None, false
access_provider: str, None, false
chpass_provider: str, None, false
sudo_provider: str, None, false
autofs_provider: str, None, false
hostid_provider: str, None, false
subdomains_provider: str, None, false
selinux_provider: str, None, false
session_provider: str, None, false
domain:
# Opcje dostępne dla wszystkich domen
description: str, None, false
domain_type: str, None, false
debug: int, None, false
debug_level: int, None, false
debug_timestamps: bool, None, false
command: str, None, false
min_id: int, None, false
max_id: int, None, false
timeout: int, None, false
enumerate: bool, None, false
subdomain_enumerate: str, None, false
offline_timeout: int, None, false
cache_credentials: bool, None, false
cache_credentials_minimal_first_factor_length: int, None, false
use_fully_qualified_names: bool, None, false
ignore_group_members: bool, None, false
entry_cache_timeout: int, None, false
lookup_family_order: str, None, false
account_cache_expiration: int, None, false
pwd_expiration_warning: int, None, false
filter_users: list, str, false
filter_groups: list, str, false
dns_resolver_timeout: int, None, false
dns_discovery_domain: str, None, false
override_gid: int, None, false
case_sensitive: str, None, false
override_homedir: str, None, false
fallback_homedir: str, None, false
homedir_substring: str, None, false
override_shell: str, None, false
default_shell: str, None, false
description: str, None, false
realmd_tags: str, None, false
subdomain_refresh_interval: int, None, false
subdomain_inherit: str, None, false
subdomain_homedir: str, None, false
cached_auth_timeout: int, None, false
full_name_format: str, None, false
re_expression: str, None, false
auto_private_groups: str, None, false
# Czas timeoutów w pamięci podręcznej
entry_cache_user_timeout: int, None, false
entry_cache_group_timeout: int, None, false
entry_cache_netgroup_timeout: int, None, false
entry_cache_service_timeout: int, None, false
entry_cache_autofs_timeout: int, None, false
entry_cache_sudo_timeout: int, None, false
entry_cache_ssh_host_timeout: int, None, false
refresh_expired_interval: int, None, false
# Dynamiczne aktualizacje DNS
dyndns_update: bool, None, false
dyndns_ttl: int, None, false
dyndns_iface: str, None, false
dyndns_refresh_interval: int, None, false
dyndns_update_ptr: bool, None, false
dyndns_force_tcp: bool, None, false
dyndns_auth: str, None, false
dyndns_server: str, None, false
# Specjalni dostawcy
provider/permit:
provider/permit/access:
provider/deny:
provider/deny/access:
Opcje budowy SSSD
Przegląd opcji budowy dla SSSD (2.0.0).
`configure' konfiguruje sssd 2.0.0 do dostosowania do wielu rodzajów systemów.
Użycie: ./configure [OPTION]... [VAR=VALUE]...
Aby przypisać zmienne środowiskowe (np. CC, CFLAGS...), należy je określić jako
VAR=VALUE. Zobacz poniżej, aby uzyskać opisy przydatnych zmiennych.
Domyślne opcje są określone w nawiasach.
Konfiguracja:
-h, --help wyświetl tę pomoc i zakończ
--help=short wyświetl opcje specyficzne dla tego pakietu
--help=recursive wyświetl krótką pomoc wszystkich dołączonych pakietów
-V, --version wyświetl informacje o wersji i zakończ
-q, --quiet, --silent nie drukuj komunikatów `sprawdzanie ...`
--cache-file=FILE cachowanie wyników testów w PLIKU [wyłączone]
-C, --config-cache alias dla `--cache-file=config.cache'
-n, --no-create nie twórz plików wyjściowych
--srcdir=DIR znajdź źródła w KATALOGU [katalog konfiguracyjny lub `..']
Katalogi instalacji:
--prefix=PREFIX zainstaluj pliki niezależne od architektury w PREFIX
[/usr/local]
--exec-prefix=EPREFIX zainstaluj pliki zależne od architektury w EPREFIX
[PREFIX]
Domyślnie `make install' zainstaluje wszystkie pliki w
`/usr/local/bin', `/usr/local/lib' itp. Możesz określić
prefiks instalacji różny od `/usr/local' używając `--prefix',
na przykład `--prefix=$HOME'.
Aby uzyskać lepszą kontrolę, użyj poniższych opcji.
Dostosowanie katalogów instalacji:
--bindir=DIR wykonywalne dla użytkowników [EPREFIX/bin]
--sbindir=DIR wykonywalne dla administratorów systemu [EPREFIX/sbin]
--libexecdir=DIR wykonywalne programu [EPREFIX/libexec]
--sysconfdir=DIR dane tylko do odczytu dla jednej maszyny [PREFIX/etc]
--sharedstatedir=DIR modyfikowalne dane niezależne od architektury [PREFIX/com]
--localstatedir=DIR modyfikowalne dane dla jednej maszyny [PREFIX/var]
--libdir=DIR biblioteki kodu obiektowego [EPREFIX/lib]
--includedir=DIR pliki nagłówkowe C [PREFIX/include]
--oldincludedir=DIR pliki nagłówkowe C dla nie-gcc [/usr/include]
--datarootdir=DIR dane tylko do odczytu, arch.-niezależne root [PREFIX/share]
--datadir=DIR dane tylko do odczytu, arch.-niezależne [DATAROOTDIR]
--infodir=DIR dokumentacja informacji [DATAROOTDIR/info]
--localedir=DIR dane zależne od lokalizacji [DATAROOTDIR/locale]
--mandir=DIR dokumentacja man [DATAROOTDIR/man]
--docdir=DIR katalog dokumentacji [DATAROOTDIR/doc/sssd]
--htmldir=DIR dokumentacja html [DOCDIR]
--dvidir=DIR dokumentacja dvi [DOCDIR]
--pdfdir=DIR dokumentacja pdf [DOCDIR]
--psdir=DIR dokumentacja ps [DOCDIR]
Nazwy programów:
--program-prefix=PREFIX prefix PREFIX do zainstalowanych nazw programów
--program-suffix=SUFFIX suffix SUFFIX do zainstalowanych nazw programów
--program-transform-name=PROGRAM uruchom sed PROGRAM na zainstalowanych nazwach programów
Typy systemowe:
--build=BUILD konfiguracja do budowania na BUILD [zgadywane]
--host=HOST cross-compile do budowy programów do uruchomienia na HOST [BUILD]
Opcjonalne funkcje:
--disable-option-checking ignoruj nieuznawane --enable/--with opcje
--disable-FEATURE nie włączaj FUNKCJI (to samo co --enable-FEATURE=no)
--enable-FEATURE[=ARG] włącz FUNKCJĘ [ARG=yes]
--enable-dependency-tracking
nie odrzucaj powolnych ekstraktorów zależności
--disable-dependency-tracking
przyspiesza jednorazowe budowanie
--enable-silent-rules mniej obszerne wyjście budowy (przywróć: "make V=1")
--disable-silent-rules obszerne wyjście budowy (przywróć: "make V=0")
--enable-static[=PKGS] buduj biblioteki statyczne [domyślnie=nie]
--enable-shared[=PKGS] buduj biblioteki współdzielone [domyślnie=tak]
--enable-fast-install[=PKGS]
optymalizacja dla szybkiej instalacji [domyślnie=tak]
--disable-libtool-lock unikaj blokady (może zepsuć równoległe budowanie)
--disable-nls nie używaj wsparcia dla języków narodowych
--disable-rpath nie wbudowuj ścieżek bibliotek w czasie wykonywania
--enable-nsslibdir Gdzie instalować biblioteki nss ($libdir)
--enable-pammoddir Gdzie instalować moduły pam ($libdir/security)
--enable-nfsidmaplibdir Gdzie instalować biblioteki libnfsidmap
($libdir/libnfsidmap)
--enable-all-experimental-features
buduj wszystkie eksperymentalne funkcje
--enable-sss-default-nss-plugin
Ta opcja zmienia standardowe zachowanie wtyczki nss sss.
Jeśli ta opcja jest włączona, wtyczka nss sss będzie
działać tak, jakby nie była w nsswitch.conf, gdy sssd
nie działa. [domyślnie=nie]
--enable-files-domain Jeśli ta funkcja jest włączona, to SSSD zawsze włącza
domenę z id_provider=files, nawet jeśli domena
nie jest określona w pliku konfiguracyjnym [domyślnie=nie]
--enable-local-provider Jeśli ta opcja jest włączona, to dostawca lokalny będzie
budowany domyślnie. [domyślnie=nie]
--enable-ldb-version-check
kompilacja z kontrolą wersji ldb w czasie wykonywania [domyślnie=nie]
--disable-krb5-locator-plugin
nie buduj wtyczki lokalizatora Kerberos
--enable-pac-responder buduj pac responder
--disable-cifs-idmap-plugin
nie buduj wtyczki idmap CIFS
--enable-systemtap Włącz wsparcie śledzenia systemtap
--enable-intgcheck-reqs włącz sprawdzanie wymagań testów integracyjnych
[domyślnie=nie]
--enable-polkit-rules-path=PATH
Ścieżka do przechowywania reguł polkit. Użyj --disable, aby nie
instalować zasad wcale.
[/usr/share/polkit-1/rules.d]
Opcjonalne pakiety:
--with-PACKAGE[=ARG] użyj PAKIETU [ARG=tak]
--without-PACKAGE nie używaj PAKIETU (to samo co --with-PACKAGE=no)
--with-pic[=PKGS] próbuj używać tylko PIC/non-PIC obiektów [domyślnie=użyj
obu]
--with-gnu-ld zakładaj, że kompilator C korzysta z GNU ld [domyślnie=nie]
--with-sysroot=DIR Szukaj zależnych bibliotek w DIR
(lub w sysroot kompilatora, jeśli nie jest wskazane).
--with-gnu-ld zakładaj, że kompilator C korzysta z GNU ld domyślnie=nie
--with-libiconv-prefix[=DIR] szukaj libiconv w DIR/include i DIR/lib
--without-libiconv-prefix nie szukaj libiconv w includedir i libdir
--with-libintl-prefix[=DIR] szukaj libintl w DIR/include i DIR/lib
--without-libintl-prefix nie szukaj libintl w includedir i libdir
--with-shared-build-dir=DIR
tymczasowy katalog budowy, w którym biblioteki są
instalowane [$srcdir/sharedbuild]
--with-os=OS_TYPE Typ twojego systemu operacyjnego
(fedora|redhat|suse|gentoo)
--with-db-path=PATH Ścieżka do baz danych SSSD [/var/lib/sss/db]
--with-plugin-path=PATH Ścieżka do wtyczek dostawcy danych SSSD
[/usr/lib/sssd]
--with-pid-path=PATH Gdzie przechowywać pliki pid dla SSSD [/var/run]
--with-log-path=PATH Gdzie przechowywać pliki logów dla SSSD
[/var/log/sssd]
--with-pubconf-path=PATH
Gdzie przechowywać pliki pubconf dla SSSD
[/var/lib/sss/pubconf]
--with-pipe-path=PATH Gdzie przechowywać pliki pipe dla połączeń SSSD
[/var/lib/sss/pipes]
--with-mcache-path=PATH Gdzie przechowywać pliki mmap cache dla połączeń SSSD
[/var/lib/sss/mc]
--with-default-ccache-dir=CCACHEDIR
Domyślna wartość krb5_ccachedir [/tmp]
--with-default-ccname-template=CCACHE
Domyślna wartość zapasowa krb5_ccname_template
[FILE:%d/krb5cc_%U_XXXXXX]
--with-environment-file=PATH
Ścieżka do pliku środowiskowego [/etc/sysconfig/sssd]
--with-init-dir=DIR Gdzie przechowywać skrypt inicjujący dla sssd
[/etc/rc.d/init.d]
--with-test-dir=PATH Katalog używany dla tymczasowych plików make check
[$builddir]
--with-manpages Czy regenerować strony man z źródeł DocBook
[tak]
--with-xml-catalog-path=PATH
Gdzie szukać katalogu XML [/etc/xml/catalog]
--with-krb5-plugin-path=PATH
Ścieżka do przechowywania wtyczek Kerberos
[/usr/lib/krb5/plugins/libkrb5]
--with-krb5-rcache-dir=PATH
Ścieżka do przechowywania pamięci podręcznych Kerberos
[__LIBKRB5_DEFAULTS__]
--with-krb5authdata-plugin-path=PATH
Ścieżka do przechowywania wtyczek authdata Kerberos
[/usr/lib/krb5/plugins/authdata]
--with-krb5-conf=PATH Ścieżka do pliku krb5.conf [/etc/krb5.conf]
--with-python2-bindings Czy budować powiązania python2 [tak]
--with-python3-bindings Czy budować powiązania python3 [tak]
--with-cifs-plugin-path=PATH
Ścieżka do przechowywania wtyczek cifs-utils
[/usr/lib/cifs-utils]
--with-winbind-plugin-path=PATH
Ścieżka do wtyczek winbind idmap
[/usr/lib/samba/idmap]
--with-selinux Czy budować z wsparciem SELinux [tak]
--with-nscd=PATH Ścieżka do binarki nscd, aby spróbować wyczyścić pamięć podręczną nscd
po operacjach na lokalnej domenie [/usr/sbin/nscd]
--with-ipa-getkeytab=PATH
Ścieżka do binarki ipa_getkeytab do pobierania keytabów
z serwera FreeIPA [/usr/sbin/ipa-getkeytab]
--with-semanage Czy budować z wsparciem zarządzania użytkownikami SELinux [tak]
--with-ad-gpo-default=enforcing|permissive
Domyślny poziom egzekwowania dla kontroli dostępu GPO AD
(egzekwowanie)
--with-gpo-cache-path=PATH
Gdzie przechowywać pliki polityki GPO
[/var/lib/sss/gpo_cache]
--with-nologin-shell=PATH
Powłoka używana do odmowy dostępu dla użytkowników
[/sbin/nologin]
--with-session-recording-shell=PATH
Powłoka używana do nagrywania sesji użytkowników
[/usr/bin/tlog-rec-session]
--with-app-libs=<path> Ścieżka do wtyczek aplikacji 3rd party
[/usr/lib/sssd/modules]
--with-sudo Czy budować z wsparciem sudo [tak]
--with-sudo-lib-path=<path>
Ścieżka do biblioteki sudo [/usr/lib/]
--with-autofs Czy budować z wsparciem autofs [tak]
--with-ssh Czy budować z wsparciem SSH [tak]
--with-infopipe Czy budować z wsparciem InfoPipe [tak]
--with-crypto=CRYPTO_LIB
Biblioteka kryptograficzna do użycia (nss|libcrypto).
Domyślnie jest to nss.
--with-syslog=SYSLOG_TYPE
Typ twojego rejestru systemowego (syslog|journald).
[syslog]
--with-samba Czy budować z bibliotekami samba4 [tak]
--with-nfsv4-idmapd-plugin
Czy budować z obsługą NFSv4 IDMAP [tak]
--with-nfs-lib-path=<path>
Ścieżka do biblioteki NFS [${libdir}]
--with-libwbclient Czy budować implementację SSSD libwbclient [tak]
--with-sssd-user=<user> Użytkownik do uruchamiania SSSD (root)
--with-secrets Czy budować z obsługą sekretów [nie]
--with-secrets-db-path=PATH
Ścieżka do baz danych SSSD [/var/lib/sss/secrets]
--with-kcm Czy budować z obsługą serwera KCM [tak]
--with-ldb-lib-dir=PATH Ścieżka do przechowywania modułów ldb [${libdir}/ldb]
--with-smb-idmap-interface-version=5|6
Wersja interfejsu idmap zainstalowanego Samba
--with-unicode-lib=<library>
Którą bibliotekę użyć do przetwarzania Unicode
(libunistring, glib2) [glib2]
--with-libnl Czy budować z obsługą libnetlink (libnl3,
libnl1, brak) [auto]
--with-nscd-conf=PATH Ścieżka do pliku nscd.conf [/etc/nscd.conf]
--with-initscript=INITSCRIPT_TYPE
Typ skryptu inicjującego (sysv|systemd). [sysv]
--with-systemdunitdir=DIR
Katalog dla plików serwisowych systemd [Auto],
--with-systemdconfdir=DIR
Katalog dla nadpisanych plików serwisowych systemd [Auto],
--with-tapset-install-dir
Absolutna ścieżka, w której katalog tapset będzie
zainstalowany
Niektóre wpływowe zmienne środowiskowe:
CC Komenda kompilatora C
CFLAGS Flagi kompilatora C
LDFLAGS Flagi linker, np. -L<lib dir>, jeśli masz biblioteki w niestandardowym katalogu <lib dir>
LIBS biblioteki do przekazania linkerowi, np. -l<library>
CPPFLAGS Flagi preprocesora (Objective) C/C++, np. -I<include dir>, jeśli masz nagłówki w niestandardowym katalogu <include dir>
CPP Preprocesor C
PKG_CONFIG ścieżka do narzędzia pkg-config
POPT_CFLAGS Flagi kompilatora C dla POPT, nadpisujące pkg-config
POPT_LIBS Flagi linker dla POPT, nadpisujące pkg-config
TALLOC_CFLAGS
Flagi kompilatora C dla TALLOC, nadpisujące pkg-config
TALLOC_LIBS Flagi linker dla TALLOC, nadpisujące pkg-config
TDB_CFLAGS Flagi kompilatora C dla TDB, nadpisujące pkg-config
TDB_LIBS Flagi linker dla TDB, nadpisujące pkg-config
TEVENT_CFLAGS
Flagi kompilatora C dla TEVENT, nadpisujące pkg-config
TEVENT_LIBS Flagi linker dla TEVENT, nadpisujące pkg-config
LDB_CFLAGS Flagi kompilatora C dla LDB, nadpisujące pkg-config
LDB_LIBS Flagi linker dla LDB, nadpisujące pkg-config
DHASH_CFLAGS
Flagi kompilatora C dla DHASH, nadpisujące pkg-config
DHASH_LIBS Flagi linker dla DHASH, nadpisujące pkg-config
COLLECTION_CFLAGS
Flagi kompilatora C dla COLLECTION, nadpisujące pkg-config
COLLECTION_LIBS
Flagi linker dla COLLECTION, nadpisujące pkg-config
INI_CONFIG_V0_CFLAGS
Flagi kompilatora C dla INI_CONFIG_V0, nadpisujące pkg-config
INI_CONFIG_V0_LIBS
Flagi linker dla INI_CONFIG_V0, nadpisujące pkg-config
INI_CONFIG_V1_CFLAGS
Flagi kompilatora C dla INI_CONFIG_V1, nadpisujące pkg-config
INI_CONFIG_V1_LIBS
Flagi linker dla INI_CONFIG_V1, nadpisujące pkg-config
INI_CONFIG_V1_1_CFLAGS
Flagi kompilatora C dla INI_CONFIG_V1_1, nadpisujące pkg-config
INI_CONFIG_V1_1_LIBS
Flagi linker dla INI_CONFIG_V1_1, nadpisujące pkg-config
INI_CONFIG_V1_3_CFLAGS
Flagi kompilatora C dla INI_CONFIG_V1_3, nadpisujące pkg-config
INI_CONFIG_V1_3_LIBS
Flagi linker dla INI_CONFIG_V1_3, nadpisujące pkg-config
GDM_PAM_EXTENSIONS_CFLAGS
Flagi kompilatora C dla GDM_PAM_EXTENSIONS, nadpisujące pkg-config
GDM_PAM_EXTENSIONS_LIBS
Flagi linker dla GDM_PAM_EXTENSIONS, nadpisujące pkg-config
PCRE_CFLAGS Flagi kompilatora C dla PCRE, nadpisujące pkg-config
PCRE_LIBS Flagi linker dla PCRE, nadpisujące pkg-config
KRB5_CFLAGS Flagi kompilatora C dla kerberos, nadpisujące krb5-config
KRB5_LIBS Flagi linker dla kerberos, nadpisujące krb5-config
CARES_CFLAGS
Flagi kompilatora C dla CARES, nadpisujące pkg-config
CARES_LIBS Flagi linker dla CARES, nadpisujące pkg-config
SYSTEMD_LOGIN_CFLAGS
Flagi kompilatora C dla SYSTEMD_LOGIN, nadpisujące pkg-config
SYSTEMD_LOGIN_LIBS
Flagi linker dla SYSTEMD_LOGIN, nadpisujące pkg-config
SYSTEMD_DAEMON_CFLAGS
Flagi kompilatora C dla SYSTEMD_DAEMON, nadpisujące pkg-config
SYSTEMD_DAEMON_LIBS
Flagi linker dla SYSTEMD_DAEMON, nadpisujące pkg-config
NDR_NBT_CFLAGS
Flagi kompilatora C dla NDR_NBT, nadpisujące pkg-config
NDR_NBT_LIBS
Flagi linker dla NDR_NBT, nadpisujące pkg-config
NDR_KRB5PAC_CFLAGS
Flagi kompilatora C dla NDR_KRB5PAC, nadpisujące pkg-config
NDR_KRB5PAC_LIBS
Flagi linker dla NDR_KRB5PAC, nadpisujące pkg-config
SMBCLIENT_CFLAGS
Flagi kompilatora C dla SMBCLIENT, nadpisujące pkg-config
SMBCLIENT_LIBS
Flagi linker dla SMBCLIENT, nadpisujące pkg-config
SASL_CFLAGS Flagi kompilatora C dla SASL, nadpisujące pkg-config
SASL_LIBS Flagi linker dla SASL, nadpisujące pkg-config
NFSIDMAP_CFLAGS
Flagi kompilatora C dla NFSIDMAP, nadpisujące pkg-config
NFSIDMAP_LIBS
Flagi linker dla NFSIDMAP, nadpisujące pkg-config
HTTP_PARSER_CFLAGS
Flagi kompilatora C dla HTTP_PARSER, nadpisujące pkg-config
HTTP_PARSER_LIBS
Flagi linker dla HTTP_PARSER, nadpisujące pkg-config
CURL_CFLAGS Flagi kompilatora C dla CURL, nadpisujące pkg-config
CURL_LIBS Flagi linker dla CURL, nadpisujące pkg-config
UUID_CFLAGS Flagi kompilatora C dla UUID, nadpisujące pkg-config
UUID_LIBS Flagi linker dla UUID, nadpisujące pkg-config
JANSSON_CFLAGS
Flagi kompilatora C dla JANSSON, nadpisujące pkg-config
JANSSON_LIBS
Flagi linker dla JANSSON, nadpisujące pkg-config
GLIB2_CFLAGS
Flagi kompilatora C dla GLIB2, nadpisujące pkg-config
GLIB2_LIBS Flagi linker dla GLIB2, nadpisujące pkg-config
LIBNL3_CFLAGS
Flagi kompilatora C dla LIBNL3, nadpisujące pkg-config
LIBNL3_LIBS Flagi linker dla LIBNL3, nadpisujące pkg-config
LIBNL1_CFLAGS
Flagi kompilatora C dla LIBNL1, nadpisujące pkg-config
LIBNL1_LIBS Flagi linker dla LIBNL1, nadpisujące pkg-config
DBUS_CFLAGS Flagi kompilatora C dla DBUS, nadpisujące pkg-config
DBUS_LIBS Flagi linker dla DBUS, nadpisujące pkg-config
PYTHON interpreter Pythona
JOURNALD_CFLAGS
Flagi kompilatora C dla JOURNALD, nadpisujące pkg-config
JOURNALD_LIBS
Flagi linker dla JOURNALD, nadpisujące pkg-config
NSS_CFLAGS Flagi kompilatora C dla NSS, nadpisujące pkg-config
NSS_LIBS Flagi linker dla NSS, nadpisujące pkg-config
CRYPTO_CFLAGS
Flagi kompilatora C dla CRYPTO, nadpisujące pkg-config
CRYPTO_LIBS Flagi linker dla CRYPTO, nadpisujące pkg-config
SSL_CFLAGS Flagi kompilatora C dla SSL, nadpisujące pkg-config
SSL_LIBS Flagi linker dla SSL, nadpisujące pkg-config
P11_KIT_CFLAGS
Flagi kompilatora C dla P11_KIT, nadpisujące pkg-config
P11_KIT_LIBS
Flagi linker dla P11_KIT, nadpisujące pkg-config
CHECK_CFLAGS
Flagi kompilatora C dla CHECK, nadpisujące pkg-config
CHECK_LIBS Flagi linker dla CHECK, nadpisujące pkg-config
CMOCKA_CFLAGS
Flagi kompilatora C dla CMOCKA, nadpisujące pkg-config
CMOCKA_LIBS Flagi linker dla CMOCKA, nadpisujące pkg-config
Użyj tych zmiennych, aby nadpisać wybory dokonane przez `configure` lub aby pomóc
mu znaleźć biblioteki i programy o niestandardowych nazwach/lokalizacjach.
Zgłaszaj błędy na adres <[email protected]>.
Testowanie
Testy są przeprowadzane za pomocą Docker oraz docker_test_runner, który uruchamia następujące kontenery z różnymi ustawieniami środowiskowymi:
- CentOS 7
- Debian 9.4 (Stretch)
- Debian 10 (Buster)
- Ubuntu 16.04 (Xenial Xerus)
- Ubuntu 18.04 (Bionic Beaver)
- Ubuntu 18.10 (Cosmic Cuttlefish)
Ansible 2.7.9 jest zainstalowany na wszystkich kontenerach, a skrypt testowy jest stosowany.
Dla dalszych szczegółów i dodatkowych kontroli, zajrzyj do konfiguracji docker_test_runner oraz do punktu wejścia Docker.
# Testowanie lokalnie:
curl https://raw.githubusercontent.com/timorunge/docker-test-runner/master/install.sh | sh
./docker_test_runner.py -f tests/docker_test_runner.yml
Ponieważ czas budowy na Travis jest ograniczony dla publicznych repozytoriów, automatyczne testy są ograniczone do SSSD 2.0.0 na:
- CentOS 7
- Debian 9.4 (Stretch)
- Ubuntu 18.04 (Bionic Beaver)
Zależności
Ubuntu 16.04
Na Ubuntu 16.04 musisz upewnić się, że pyopenssl
jest
aktualny przed
instalacją SSSD.
pip install --upgrade pyopenssl
Licencja
Licencja BSD 3-Klauzowa "Nowa" lub "Nowelizowana"
Informacje o autorze
- Timo Runge
Custom SSSD installation and configuration including patch management for the SSSD source.
ansible-galaxy install timorunge.sssd