sexta-feira, 24 de maio de 2024

Acessando o ForgeRockAM pelo Administrator Authentication Configuration service

 Para acessar o AM usando o modo administrativo basta usar o seguinte service

https://meu.iam.com.br:8443/am/XUI/?authIndexType=service&authIndexValue=adminconsoleservice

Anteriormente bastava especificar "service=adminconsoleservice" e o openam já resolvia a url, contudo nas últimas versões ele somente está disponível utilizando os dois query parameters authIndexType e authIndexValue

quinta-feira, 19 de janeiro de 2023

Exportar o serverX ao trocar de usuário no terminal

Executar os comandos abaixo e guardar as respectivas respostas

$ xauth list $DISPLAY
<output1>
$ echo $DISPLAY
<outoput2>


Efetuar a troca do usuário

$ su - <usuario>


Criar, caso não exista, o Xauthority

$ touch $HOME/.Xauthority


Executar os comandos abaixo com as respectivas saídas dos primeiros comandos

$ xauth add <output1> 
$ export DISPLAY=<output2>

Fonte : https://unix.stackexchange.com/questions/476290/x11-forwarding-does-not-work-if-su-to-another-user

sexta-feira, 11 de março de 2022

Diferenças entre DML, DDL, DCL


DML, DDL, DCL

Os comandos SQL podem dividir-se em três grandes categorias:

  • DML - Data Manipulation Language - trabalha com linhas;
  • DDL - Data Definition Language - trabalha com objetos (ex: tabelas)
  • DCL - Data Control Language - trabalha com utilizadores;
Comando Descrição Grupo de Comandos
SELECT Utilizado para extrair dados da base de dados DML
INSERT Introduzir novas linhas DML
UPDATE Alterar linhas já existentes DML
DELETE Apagar linhas já existentes DML
CREATE Criar objectos da base de dados (tabelas, índices, vistas) DDL
ALTER Alterar objectos da base de dados (tabelas, índices, vistas) DDL
DROP Apagar objectos da base de dados (tabelas, índices, vistas) DDL
GRANT Conceder acesso à base de dados e aos seus objectos DCL
REVOKE Retirar acesso à base de dados e aos seus objectos DCL

Fonte: https://www.turtlelearning.pt/manSQL/Oracle/introducao/sql-dml-ddl-dcl.htm

quarta-feira, 9 de dezembro de 2020

Limpeza de caches e Swap do Linux

Para limpar o Cache/Buffer de RAM:

$ su -
# sync; echo 1 > /proc/sys/vm/drop_caches
Para limpar entries e inodes:

$ su -
# sync; echo 2 > /proc/sys/vm/drop_caches
Para limpar tudo: Cache/Buffer, entries e Inodes:

$ su -
# sync; echo 3 > /proc/sys/vm/drop_caches
Para limpar o espaço em disco consumido pela SWAP:

$ su -
# swapoff -a && swapon -a;

EXPLICAÇÃO DOS COMANDOS
sync : Vai sincronizar e liberar o buffer do sistema de arquivos, permitindo que você possa limpá-lo sem riscos de corromper nada.

; Executará o comando somente quando o anterior terminar. Somente após a sincronia, o buff poderá ser apagado sem corromper arquivos do sistema.

Escrever 1, 2 ou 3 no arquivo drop_cache vai limpar o cache sem matar nenhum programa, processo ou serviço do sistema.

E por fim, o comando echo fará a escrita no arquivo.

fonte: https://unixuniverse.com.br/linux/ram-buffer-swap

segunda-feira, 4 de novembro de 2019

Como utilizar os sinalizadores UserAccountControl para manipular propriedades de conta de usuário

Como utilizar os sinalizadores UserAccountControl para manipular propriedades de conta de usuário

Aplica-se a: Windows Server 2008 R2Windows Server 2008Microsoft Windows Server 2003

Resumo

Quando você abre as propriedades de uma conta de usuário, clique na guia conta e em seguida, marque ou desmarque as caixas de seleção na caixa de diálogo Opções de conta , os valores numéricos são atribuídos ao atributo UserAccountControl. O valor atribuído ao atributo informa ao Windows quais opções foram habilitadas. Para visualizar as contas de usuário, clique em Iniciar, aponte para programas, aponte para Ferramentas administrativase, em seguida, clique em Active Directory Users and Computers.

Informações adicionais

Você pode exibir e editar esses atributos usando a ferramenta de Ldp.exe ou o snap-in ADSIEdit. msc. A tabela a seguir lista os sinalizadores possíveis que você pode atribuir. Pode não ser possível definir alguns dos valores em um objeto de usuário ou computador porque esses valores devem ser definidos ou redefinidos apenas através do serviço de diretório. Observe que Ldp.exe mostra os valores em hexadecimal. ADSIEdit. msc exibe os valores em decimal. Os sinalizadores são cumulativos. Para desativar uma conta de usuário, defina o atributo UserAccountControl para 0x0202 (0x002 + 0x0200). Em decimal, isso é 514 (2 + 512). Observação: Você pode editar diretamente o Active Directory no Ldp.exe e ADSIEdit. msc. Apenas administradores experientes devem usar essas ferramentas para editar o Active Directory. Ambas as ferramentas estão disponíveis depois que você instalar as ferramentas de suporte da mídia de instalação original do Windows.


Sinalizador de propriedade

Valor em hexadecimal

Valor decimal

SCRIPT

0x0001

1

ACCOUNTDISABLE

0x0002

2

HOMEDIR_REQUIRED

0x0008

8

BLOQUEIO

0x0010

16

PASSWD_NOTREQD

0x0020

32

PASSWD_CANT_CHANGE Observação: Você não pode atribuir essa permissão modificando diretamente o atributo UserAccountControl . Para obter informações sobre como definir a permissão de forma programática, consulte a seção "Descrições de sinalizador de propriedade".

0x0040

64

ENCRYPTED_TEXT_PWD_ALLOWED

0x0080

128

TEMP_DUPLICATE_ACCOUNT

0x0100

256

NORMAL_ACCOUNT

0x0200

512

INTERDOMAIN_TRUST_ACCOUNT

0x0800

2048

WORKSTATION_TRUST_ACCOUNT

0x1000

4096

SERVER_TRUST_ACCOUNT

0x2000

8192

DONT_EXPIRE_PASSWORD

0x10000

65536

MNS_LOGON_ACCOUNT

0x20000

131072

SMARTCARD_REQUIRED

0x40000

262144

TRUSTED_FOR_DELEGATION

0x80000

524288

NOT_DELEGATED

0x100000

1048576

USE_DES_KEY_ONLY

0x200000

2097152

DONT_REQ_PREAUTH

0x400000

4194304

PASSWORD_EXPIRED

0x800000

8388608

TRUSTED_TO_AUTH_FOR_DELEGATION

0x1000000

16777216

PARTIAL_SECRETS_ACCOUNT

0x04000000

67108864

Observação: Em um domínio baseado no Windows Server 2003, LOCK_OUT e PASSWORD_EXPIRED foram substituídos por um atributo chamado ms-DS-User-Account-Control-Computed. Para obter mais informações sobre esse novo atributo, visite o seguinte site:

Descrições de sinalizador de propriedade

  • SCRIPT - script de logon será executado.

  • ACCOUNTDISABLE - a conta de usuário está desabilitada.

  • HOMEDIR_REQUIRED - a pasta base é necessária.

  • PASSWD_NOTREQD - nenhuma senha é necessária.

  • PASSWD_CANT_CHANGE - o usuário não pode alterar a senha. Isso é uma permissão no objeto do usuário. Para obter informações sobre como definir essa permissão, por programação, visite o seguinte site:

  • Modificação de usuário não pode alterar a senha (provedor LDAP)

  • ENCRYPTED_TEXT_PASSWORD_ALLOWED - o usuário pode enviar uma senha criptografada.

  • TEMP_DUPLICATE_ACCOUNT - esta é uma conta para os usuários cujas contas primárias estão em outro domínio. Essa conta fornece acesso de usuário a este domínio, mas não a qualquer domínio que confia neste domínio. Isso às vezes é conhecido como uma conta de usuário local.

  • NORMAL_ACCOUNT - este é um tipo de conta padrão que representa um usuário típico.

  • INTERDOMAIN_TRUST_ACCOUNT - esta é uma permissão para uma conta de um domínio do sistema que confia em outros domínios de confiança.

  • WORKSTATION_TRUST_ACCOUNT - esta é uma conta de computador para um computador que está executando o Microsoft Windows NT 4.0 Workstation, Microsoft Windows NT 4.0 Server, Microsoft Windows 2000 Professional ou Windows 2000 Server e é um membro deste domínio.

  • SERVER_TRUST_ACCOUNT - esta é uma conta de computador para um controlador de domínio que seja membro deste domínio.

  • DONT_EXPIRE_PASSWD - representa a senha nunca expirará na conta.

  • MNS_LOGON_ACCOUNT - esta é uma conta de logon MNS.

  • SMARTCARD_REQUIRED - quando este sinalizador estiver definido, ele força o usuário a fazer logon usando um cartão inteligente. 

  • TRUSTED_FOR_DELEGATION - quando este sinalizador estiver definido, a conta de serviço (a conta de usuário ou computador), na qual um serviço é executado é confiável para delegação de Kerberos. Tais serviços podem representar um cliente solicitando o serviço. Para ativar um serviço para a delegação Kerberos, você deve definir esse sinalizador na propriedade userAccountControl da conta do serviço.

  • NOT_DELEGATED - quando este sinalizador estiver definido, o contexto de segurança do usuário não é delegado a um serviço, mesmo que a conta de serviço é definida como confiável para delegação de Kerberos.

  • USE_DES_KEY_ONLY - (Windows 2000/Windows Server 2003) restringir essa entidade usar tipos de criptografia padrão de criptografia de dados (DES) somente para chaves.

  • DONT_REQUIRE_PREAUTH - (Windows 2000/Windows Server 2003) essa conta não exigir pré-autenticação Kerberos para efetuar logon.

  • PASSWORD_EXPIRED - senha da (Windows 2000/Windows Server 2003) o usuário expirou.

  • TRUSTED_TO_AUTH_FOR_DELEGATION - (Windows 2000/Windows Server 2003) a conta está habilitada para delegação. Essa é uma configuração de segurança. Contas que tenham esta opção habilitada devem ser bem controladas. Essa configuração permite que um serviço que é executado sob a conta assume a identidade do cliente e se autenticar como usuário para outros servidores remotos na rede.

  • PARTIAL_SECRETS_ACCOUNT - (Windows Server 2008/Windows Server 2008 R2) a conta é um controlador de domínio somente leitura (RODC). Essa é uma configuração de segurança. Removendo essa configuração em um RODC comprometimentos de segurança no servidor.


Valores de UserAccountControl

Estes são os valores de UserAccountControl padrão para certos objetos:

Usuário típico: 0x200 (512) Controlador de domínio: 0x82000 (532480) Estação de trabalho/servidor: 0x1000 (4096)

Fonte: https://support.microsoft.com/pt-br/help/305144/how-to-use-useraccountcontrol-to-manipulate-user-account-properties

sexta-feira, 7 de dezembro de 2018

Montagem de LVM

# vgdisplay
  VG Name               fedora
  System ID            
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  7
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                4
  Open LV               1
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               <802.48 GiB
  PE Size               4.00 MiB
  Total PE              205434
  Alloc PE / Size       205434 / <802.48 GiB
  Free  PE / Size       0 / 0  
  VG UUID               j6wtTa-Ivga-ZW45-CssS-13iP-eHRI-B123la

# vgrename <VG UUID> <novo VG Name>
# vgchange -a y
# lvscan -a
  ACTIVE            '/dev/<novo VG Name>/root' [<97.66 GiB] inherit
  ACTIVE            '/dev/<novo VG Name>/home' [488.28 GiB] inherit
  ACTIVE            '/dev/<novo VG Name>/swap' [5.82 GiB] inherit
  ACTIVE            '/dev/<novo VG Name>/opt' [<210.72 GiB] inherit
# mkdir -p /mnt/opt
# mount /dev/<novo VG Name>/opt /mnt/opt

Utilizando o RSYNC do linux

Algumas vantagens e características do comando rsync

  • É eficiente copiar e sincronizar arquivos para ou a partir de um computador remoto.
  • Suporta cópia de links, propriedades de arquivos como usuário, grupos e permissões.
  • É mais rápido do que o scp ( Secure Copy ), porque rsync usa protocolo de atualização remota que permite transferir apenas as diferenças entre dois conjuntos de arquivos. Na primeira vez, ele copia todo o conteúdo de um arquivo ou um diretório de origem para o destino, mas a partir da próxima vez, ele copia apenas os blocos alterados e bytes para o destino.
  • Rsync consome menos banda , uma vez que usa o método de compressão e descompressão durante o envio e recebimento de dados em ambas as extremidades.

A sintaxe básica do comando rsync

# Rsync origem destino opções

Algumas opções do comandos rsync

  1. -V: verbose
  2. -R: cópias de dados de forma recursiva (mas não preservam timestamps e permissão durante a transferência de dados
  3. -A: modo de arquivamento, o modo de arquivo permite a cópia de arquivos de forma recursiva e também preserva links simbólicos, permissões de arquivos, posses usuário e grupo e timestamps
  4. -Z: arquivos serão comprimidos
  5. -H: legíveis, saída em um formato legível para humano (esse é muito bom)

Como instalar o rsync no seu computador com Linux

# yum install rsync (para distribuições baseadas em Red Hat)
# apt-get install rsync (para distribuições baseadas em Debian, o Ubuntu por exemplo)
Não esqueça de ver o nosso Ebook Grátis sobre Ubuntu Linux, o Curso Linux Ubuntu, com ele você vai aprender muitos comando para iniciar no Ubuntu.

1. Como copiar / sincronizar arquivo e diretório em um computador local com Rsync

Este comando irá sincronizar um único arquivo em uma máquina local. Aqui neste exemplo, o arquivo planilha.xls está sendo copiado / sincronizado para o diretório /tmp/backups 
[root@e-tient]# rsync -zvh planilha.xls /tmp/backups/
created directory /tmp/backups
planilha.xls
sent 14.71M bytes received 31 bytes 3.27M bytes/sec 

total size is 16.18M speedup is 1.10
No exemplo acima, você pode ver que, se o destino não existe o rsync irá criar um diretório automaticamente.

Copiar / sincronizar um diretório no computador local

O comando abaixo irá transferir ou sincronizar todos os arquivos de um diretório para outro diretório na mesma máquina.
Aqui neste exemplo, /var/apt/apt/archives contém alguns arquivos de pacotes .deb
[root@e-tinet]# rsync -avzh  /var/apt/apt/archives /tmp/backups/

sending incremental file list

/var/apt/apt/archives
...
sent 4.99M bytes  received 92 bytes  3.33M bytes/sec

total size is 4.99M  speedup is 1.00

2. Copiar / sincronizar arquivos e diretório com um computador remoto

Este comando irá sincronizar um diretório a partir de uma máquina local para uma máquina remota.
Por exemplo : Existe uma pasta no seu computador local o mesmo do exemplo anterior “/var/apt/apt/archives”, que contém alguns pacotes .deb,  se quiser que o conteúdo desse diretório local seja enviado para um servidor remoto, você pode usar comando a seguir.
[root@e-tinet]$ rsync -avz /var/apt/apt/archives root@10.1.1.1:/tmp/

root@10.1.1.1's password:

sending incremental file list

...
sent 4993369 bytes  received 91 bytes  399476.80 bytes/sec

total size is 4991313  speedup is 1.00

Copiar / sincronizar um diretório remoto para um computador local

Este comando irá ajudá-lo a sincronizar um diretório remoto para um diretório local. Aqui neste exemplo, um diretório:
/home/e-tinet/textos  que está em um servidor remoto está sendo copiado em seu computador local em /tmp/textos.

[root@pedro]# rsync -avzh root@10.1.1.1:/home/e-tinet/textos /tmp/textos

root@10.1.1.1's password:

receiving incremental file list

created directory /tmp/textos

....
sent 91 bytes  received 4.99M bytes  322.16K bytes/sec

total size is 4.99M  speedup is 1.00

3. Como usar o Rsync rodando com o SSH

Com rsync, podemos usar o SSH ( Secure Shell ) para transferência de dados, usando SSH durante a transferência de nossos dados eles estarão seguros.
Além disso, quando usamos o rsync precisamos informar o usuário / senha, portanto, usando SSH seu login e senha serão enviados de forma criptografada.

Copiar um arquivo de um servidor remoto para um servidor local com SSH

Para especificar um protocolo com rsync usamos o parametro ” -e “.  Aqui neste exemplo, iremos utilizar ” ssh .


root@e-tiner]# rsync -avzhe ssh root@10.1.1.1:/root/install.log /tmp/

root@10.1.1.1's password:

receiving incremental file list

install.log

sent 30 bytes  received 8.12K bytes  1.48K bytes/sec

total size is 30.74K  speedup is 3.77

Copiar um arquivo de um servidor local para um servidor remoto com SSH

[root@pedro]# rsync -avzhe ssh planilha.xls root@10.1.1.1:/backups/

root@10.1.1.1's password:

sending incremental file list

planilha.xls

sent 14.71M bytes  received 31 bytes  1.28M bytes/sec

total size is 16.18M  speedup is 1.10

4. Mostrar progresso na transferência de dados com rsync

Para mostrar o progresso durante a transferência de dados de uma máquina para outra máquina, podemos usar  o ‘–progress’.
[root@e-tinet# rsync -avzhe ssh --progress /home/arquivos root@10.1.1.1:/root/arquivos

root@10.1.1.1's password:

sending incremental file list

created directory /root/arquivos
/home/arquivos/texto.txt
           1.02M 100%        2.72MB/s        0:00:00 (xfer#1, to-check=3/5)
...
sent 4.99M bytes  received 92 bytes  475.56K bytes/sec

total size is 4.99M  speedup is 1.00

5. Usar a opção –include e –exclude

Estas duas opções permite incluir e excluir arquivos de um copias / sincronização.
Aqui neste exemplo, o comando rsync irá incluir arquivos e diretórios apenas que começam com ‘ M ‘ e excluir todos os outros arquivos e diretórios.
OBS.: Excluir da cópia não excluir o arquivo do sistema de arquivos.
[root@e-tinet]# rsync -avze ssh --include 'm*' --exclude '*' root@10.1.1.2:/var/log/ /root/log

root@10.1.1.2's password:

receiving incremental file list

created directory /var/log

./

Requirename

Requireversion

sent 67 bytes  received 167289 bytes  7438.04 bytes/sec

total size is 434176  speedup is 2.59

6. Uso de opção –delete

Se um arquivo ou pasta não existe na origem, mas já existe no destino, você pode apagar o arquivo / diretório existente.
Podemos usar ‘ —delete‘ para apagar os arquivos que não existem no diretório de origem.
Se a origem e  destino estiver  em sincronia, vamos fazer um teste. Crie um arquivo teste.txt no destino.
[root@e-tinet]# touch teste.txt
[root@e-tinet]# rsync -avz --delete root@10.1.1.1:/home/pedrod .
receiving file list ... done
deleting teste.txt
./
sent 26 bytes  received 390 bytes  48.94 bytes/sec
total size is 45305958  speedup is 108908.55
Uma pequena dica adicional: Tome cuidado com essa opção.

7. Defina o tamanho máximo de arquivos que serão transferidos

Você pode especificar o parâmetro “–max-size” para definir o tamanho máximo do arquivo.
Exemplo: Um arquivo de 200k , então este comando irá transferir apenas os arquivos que são iguais ou menores que 200k .
[root@e-tinet]# rsync -avzhe ssh --max-size='200k' /var/log/ root@10.1.1.2:/root/log

root@10.1.1.2's password:

sending incremental file list

created directory /root/log

...
sent 189.79K bytes  received 224 bytes  13.10K bytes/sec

total size is 38.08M  speedup is 200.43

8. Apagar automaticamente arquivos da origem após a transferência bem sucedida

Agora, vamos imaginar que você tenha um servidor web principal e um servidor de backup, é feito um backup diário para esse servidor de backup, agora você não quer manter essa cópia local do backup no seu servidor web.
Então, você vai esperar até que a transferência seja concluída e, em seguida, apagar aqueles arquivos de backup local manualmente?
Claro que não. Esta exclusão automática pode ser feito usando a opção ” –-remove-source-files” .
Seria praticamente um comando “mv”, mas ele pode ser até executado remotamente.
[root@e-tinet]# rsync --remove-source-files -zvh img.jpg /tmp/backups/

img.jpg

sent 14.71M bytes  received 31 bytes  4.20M bytes/sec

total size is 16.18M  speedup is 1.10

9. Usar o parâmetro –dry-run com o Rsync

Se você está aprendendo a trabalhar com rsync e não sabe exatamente um parâmetro ou outro vai fazer, tome muito cuidado pois o Rsync poderá realmente estragar sua pasta de destino, e infelizmente o Ctrl + Z não funciona nesse caso.
Usando esse parâmetro o Rsync não vai fazer nenhuma alteração no destino, apenas vai mostrar o resultado do comando normalmente, assim fica fácil você encontrar algum erro e não correr o risco de fazer uma cópia desastrosa.
root@e-tinet]# rsync --dry-run --remove-source-files -zvh texto.txt /tmp/backups/

texto.tar

sent 35 bytes  received 15 bytes  100.00 bytes/sec

total size is 16.18M  speedup is 323584.00 (DRY RUN)

10. Definir Limite de banda de Transferência de Arquivos

Você pode configurar o limite de banda durante a transferência dos arquivos de uma máquina para outra usando o  ‘ —bwlimit’.
[root@e-tinet]# rsync --bwlimit=100 -avzhe ssh  /var/log/  root@10.1.1.2:/root/log/
root@10.1.1.2's password:
sending incremental file list
sent 324 bytes  received 12 bytes  61.09 bytes/sec
total size is 38.08M  speedup is 113347.05
Então é isso, tem muitas opções o Rsync é uma ferramenta muito utilizada. Hoje eu utilizo muito para fazer backup e sincronização de arquivos, tanto local como remoto.



Fonte: https://e-tinet.com/linux/sincronizacao-de-arquivos-no-linux-rsync/