Configurando o PAM usando o SSSD
Configure o PAM no Linux usando o serviço SSSD.
- O serviço SSSD deve ser instalado. Se ele não estiver instalado, instale usando
sudo yum install sssd
. - O serviço deve ser configurado para ser iniciado quando o sistema for reinicializado. Você pode executar essa configuração usando
sudo chkconfig sssd on
. - Execute as etapas Impondo SELinux quando a propriedade SELINUX estiver definida como imposta no arquivo
/etc/selinux/config
.Você também pode definir
SELINUX=permissive
ouSELINUX=disabled
, caso em que impor SELinux não é obrigatórioObservação
Reinicie o Linux se atualizar/etc/selinux/config
.
-
Verifique se o arquivo
/etc/sssd/sssd.conf
existe, tem 600 permissões e é de propriedade do usuário raiz. Se o arquivo não existir, crie-o da seguinte forma e executechmod 600
/etc/sssd/sssd.conf
./etc/sssd/sssd.conf
[sssd] config_file_version = 2 services = nss, pam ### domains specify the look up order, ### which should always be LOCAL and then IDCS. domains = LOCAL,IDCS [nss] #Backfill cache at 75%, do not cache bad lookups, # no in-mem cache entry_cache_nowait_percentage = 75 ### 1 Hour caching for non existent user entry_negative_timeout = 3600 [pam] pam_id_timeout = 600 [domain/LOCAL] # Prior to 1.15, must use older files provider id_provider = proxy proxy_lib_name = files # Disable authentication, files provider # always provides local access, enumerate files auth_provider = none access_provider = permit enumerate = true [domain/IDCS] re_expression = (?P<domain>[^\\]*?)\\?(?P<name>[^\\]+$) auth_provider = proxy id_provider = proxy proxy_lib_name = oracle_cloud proxy_pam_target = sssd_proxy_oracle_cloud enumerate = false cache_credentials = true # Default cache timeout 90 mins for user/group info entries, #before it reaches to IDCS for new updates entry_cache_timeout = 5400
Você terá a opção de configurar endereços de e-mail como nomes de usuário de SSO. Para fazer isso, adicione a linha em negrito ao arquivo/etc/sssd/sssd.conf
para especificar a expressão regular.... [pam] [domain/proxy_proxy] re_expression = (?P<domain>[^\\]*?)\\?(?P<name>[^\\]+$) auth_provider = proxy id_provider = proxy ...
-
Verifique se o arquivo
/etc/pam.d/sssd_proxy_oracle_cloud
existe e pertence ao usuário raiz. Se o arquivo não existir, crie-o como usuário raiz e adicione o seguinte:/etc/pam.d/sssd_proxy_oracle_cloud file
auth required pam_oracle_cloud.so account required pam_oracle_cloud.so password required pam_oracle_cloud.so session required pam_oracle_cloud.so
-
Edite
/etc/pam.d/sshd
e adicione o módulopam_oracle_cloud
:/etc/pam.d/sshd
auth sufficient pam_oracle_cloud.so
Observação
Adicione isso antes da linhaauth include password-auth
ouauth substack password-auth*
. -
Edite o
/etc/ssh/sshd_config
para configurar osshd
para permitir o uso de autenticação multifator (MFA):/etc/ssh/sshd_config
Procure a propriedade
ChallengeResponseAuthentication
e defina-a comoyes
. Se a propriedade não estiver no arquivo de configuração, adicione-a. -
Edite o
/etc/opc.conf
para permitir que o plug-in interaja com o serviço IAM:/etc/opc.conf
#This is sample format of opc.conf file, please use the correct information to configure this file. #Enter the Oracle Identity Cloud Service tenancy base url. base_url = https://identity-cloud-service-instance-url #There is no need to change value of scope. scope = urn:opc:idm:__myscopes__ #Enter the location of the wallet. wallet_location = /etc/opc-wallet #Enter the log level, this is optional and the default is 0, which means no log. 0 - None, 1 - Error, 2 - Info, 3 - Debug. log_level = 0 #Enter the log file path, this is optional and defaults to /var/log/opc/pam_nss.log log_file_path = /var/log/opc/pam_nss.log #Enter the value for proxy usage to connect to Oracle Identity Cloud Service. #Set the value to 1 to use a proxy and 0 to not use a proxy. use_proxy=0 #Enter the information below if you set: use_proxy=1 #Enter the proxy url #proxy_url=http://proxy.example.com #Enter the proxy port #proxy_port=80#Enter the username to connect to the proxy url. #proxy_username=username_example #Enter the password of username to connect proxy url. #proxy_pwd=pwd_example
-
Reinicie o sssd e sshd:
-
Para OEL6 e OEL7:
authconfig --enablemkhomedir --enablepamaccess --update
. -
Para OEL8:
authselect select sssd with-mkhomedir with-pamaccess
. -
Execute:
service sshd restart
. -
Execute:
service sssd restart
.
-
Para OEL6 e OEL7: