Вы находитесь на странице: 1из 11

Prez Vzquez Alan Guillermo

Cruz Ramos Jess Alejandro

Administracin de Base de Datos

Jos Evaristo Pacheco Velasco

3 Tipos de Autentificaciones en Oracle

11/11/2016

1. Autenticacin por medio del SO Linux XE / Windows.


A) En Linux con Oracle XE:
1. Creamos el usuario en el sistema operativo
# Useradd lucas
# Passwd lucas
Changing password for lucas.
2. Configuramos los parmetros siguientes:
La autenticacin por sistema operativo no est activada por defecto en Oracle XE.
Para permitir el
Uso de usuarios del sistema operativo, llamados por Oracle OPS$ users, abrimos
SQL Plus o algn
Cliente SQL y ejecutamos el siguiente comando:
Alter system set os_authent_prefix=OPS$ scope=spfile;
Nos modifica el fichero binario:
Cat /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/dbs/spfileXE.ora
Este contiene parmetros de configuracin de la instancia que se est ejecutando.
Reiniciamos la DB:
Shutdown immediate
Startup
Creamos el usuario en nuestra base de datos:
CREATE USER OPS$lucas IDENTIFIED EXTERNALLY DEFAULT;
Le aplicamos los roles y privilegios como cualquier otro usuario:
GRANT CONNECT, RESOURCE TO lucas;
3. Reiniciamos la base de datos:
/etc/init.d/oracle-xe restart
4.- A continuacin, tratamos de conectarnos a Oracle como un usuario del sistema
operativo
Autenticado. Esperamos que falle! Quizs sea necesario configurar algunas
variable de entorno para
Que SQL * PLUS funcione correctamente.

- Vemos la configuracin actual de SQL * PLUS


#cat
/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/config/scripts/sqlplus.sh
# su - tim_hall
$ export ORACLE_HOME=Dato Obtenido del cat enterior
$ export PATH=Dato Obtenido del cat enterior
$ export ORACLE_SID=Dato Obtenido del cat enterior, XE
$ sqlplus /
En el ejemplo:
$export:ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server
$export PATH=$PATH: $ORACLE_HOME/bin: $PATH
$export ORACLE_SID=XE
$sqlplus /
Para que se coloquen automticamente al iniciar sesin un usuario, editar el
archivo
/home/lucas/.bashrc y aadir las lneas 1, 2 y 3. Y para que esta configuracin la
tengan
Usuario que creemos en el sistema las aadimos al fichero /etc/skel/.bashrc.
B) En Windows:
1. Creamos un usuario en el sistema operativo.
2. Configuramos los parmetros siguientes:
Alter system set os_authent_prefix =OPS$ scope=spfile;
Nota: El valor por defecto es OPS$
Si el usuario del sistema operativo es miembro de un grupo de dominio entonces
tambin
Configuramos el siguiente parmetro:
Alter system set remote_os_authent=TRUE scope=spfile;
Nota: El valor por defecto del parmetro es FALSE,
3. Editamos el fichero sqlnet.ora y cambiamos el valor de la siguiente lnea a NTS:
Sqlnet.authentication_services= (NTS)

4. Reiniciamos la base de datos:


Shutdown immediate
Startup
Vemos que los parmetros se hayan modificado correctamente usando:
SQL> show parameter authen
NAME TYPE VALUE
----------------------- ----------- ------------os_authent_prefix string OPS$
remote_os_authent boolean TRUE
5. Creamos un usuario Oracle para autenticacin mediante OS.
Primero comprobamos el nombre del usuario del sistema operativo.
SQL> select UPPER (sys_context ('userenv, os_user')) from dual;
------------------------------------------------------------------NOMBREDELAMAQUINA\LUCAS
Ahora creamos el usuario con el mismo nombre que vimos con la sentencia
anterior,
incluido el nombre de la mquina, aadiendo la clusula identified by
EXTERNALLY.
create user OPS$NOMBREDELAMAQUINA\LUCAS identified EXTERNALLY;
Nota: El nombre del usuario de Oracle debe tener obligatoriamente el mismo
nombre que el usuario
Y el nombre de mquina del sistema operativo y al crearlo debe comenzar con
OPS$.
Damos privilegios como a cualquier otro usuario:
SQL> grant dba to "OPS$MACHINENAME\TOM";
6. Testeamos la conexin a travs del usuario del sistema operativo.
Sqlplus /
SQL> show user;
USER is "OPS$NOMBREDELAMAQUINA\LUCAS"

2.- Conexiones con Autenticacin de Proxy


La autenticacin de proxy permite que una conexin JDBC acte como proxy para
otras conexiones JDBC. Si utiliza la opcin Proxy Conexin cuando crea una
conexin de base de datos, la conexin se utilizar para conectarse como el
usuario especificado para la conexin, pero se autenticar mediante el nombre de
usuario y la contrasea o el nombre completo del usuario proxy.
Por ejemplo, para crear una conexin para un usuario denominado PROXY_USER
pero conectarse mediante el nombre de usuario y la contrasea del usuario de
base de datos existente SCOTT, siga estos pasos.
1. Create el usuario proxy y concdale los privilegios apropiados:
CREATE USER proxy_user IDENTIFICADO POR <contrasea>;
ALTER USER proxy_user GRANT CONECTE
AUTHENTICATED USANDO CONTRASEA;

TRAVS

de

scott

GRANT crea la sesin a proxy_user;


. . <Conceder otros privilegios segn sea necesario.>
2. Create una nueva conexin de base de datos. Por ejemplo: nombre de conexin
= proxy_conn, nombre de usuario = Scott, contrasea = <contrasea para Scott>.
3. Enable (cheque) Conexin del proxy.
4. En el cuadro de dilogo Conexin de proxy de Oracle, seleccione Nombre de
usuario para tipo de proxy
5. Para Proxy User, ingrese PROXY_USER; Y para Proxy Password, ingrese la
contrasea para el usuario de la base de datos PROXY_USER.
6. Haga clic en Aceptar para cerrar el cuadro de dilogo Conexin de proxy de
Oracle.
7. Complete cualquier otra informacin de conexin necesaria y haga clic en
Conectar para crear la conexin.
En este ejemplo, cuando se conecta utilizando la conexin proxy_conn, se utiliza
el nombre de usuario y la contrasea del usuario SCOTT para conectarse a la
base de datos, pero la conexin ve los objetos que el usuario PROXY_USER
puede ver.
Las instrucciones anteriores hacen que se inicien dos sesiones (una para el
usuario proxy y otra para el cliente proxy) cuando se abre la conexin. Si desea
tener una nica sesin (sin una segunda contrasea ni un nombre distintivo
requerido), puede seguir estos pasos en su lugar despus de crear el usuario
proxy y otorgarle los privilegios adecuados:

1. Create una nueva conexin de base de datos. Por ejemplo: nombre de conexin
= proxy_conn, nombre de usuario = proxy_user [Scott], contrasea = <contrasea
para proxy_user>.
2. Para Tipo de conexin, especifique TNS.
(Nota: no habilite la conexin proxy).
3. Para Alias de red, seleccione el alias de red para la base de datos para la
conexin.
4. Complete cualquier otra informacin de conexin necesaria y haga clic en
Conectar para crear la conexin.

3.- Inicio de sesin en un sistema remoto basada en host para una


Shell Segura (ssh)
1.- Asuma el rol de administrador principal o convirtase en superusuario.
El rol de administrador principal incluye el perfil de administrador principal. Para
crear el rol y asignarlo a un usuario, consulte el Captulo 2, Trabajo con Solaris
Management Console (tareas) de Gua de administracin del sistema:
administracin bsica.

2.- En el cliente, habilite la autenticacin basada en host.


En el archivo de configuracin del cliente, /etc/ssh/ssh_config, escriba la siguiente
entrada: HostbasedAuthentication yes
Para ver la sintaxis del archivo, consulte la pgina del comando man ssh_config
(4).
3.- En el servidor, habilite la autenticacin basada en host.
En el archivo de configuracin del servidor, /etc/ssh/sshd_config, escriba la misma
entrada: HostbasedAuthentication yes
Para ver la sintaxis del archivo, consulte la pgina del comando man sshd_config
(4).

4.- En el servidor, configure un archivo que permita que el cliente se reconozca


como un host de confianza.

Para obtener ms informacin, consulte la seccin FILES de la pgina del


comando man sshd (1M).
Agregue el cliente como una entrada al archivo /etc/ssh/shosts.equiv del servidor.
Client-host
Tambin puede indicar a los usuarios que agreguen una entrada para el cliente a
sus archivos ~/.shosts en el servidor.
Client-host
5.- En el servidor, asegrese de que el daemon sshd pueda acceder a la lista de
hosts de confianza.
Establezca IgnoreRhosts en no en el archivo /etc/ssh/sshd_config.

## sshd_config
IgnoreRhosts no
6.- Asegrese de que los usuarios de Secure Shell en su sitio tengan cuentas en
ambos hosts.
7.- Realice una de las siguientes acciones para colocar la clave pblica del cliente
en el servidor.
Modifique el archivo sshd_config en el servidor y luego indique a sus usuarios que
agreguen las claves de host pblicas del cliente a sus archivos
~/.ssh/known_hosts.
## sshd_config
IgnoreUserKnownHosts no
Para obtener instrucciones para el usuario, consulte Cmo generar un par de
clave pblica y clave privada para utilizar con Secure Shell.
Copie la clave pblica del cliente en el servidor.
Las claves de host se almacenan en el directorio /etc/ssh. Las claves suelen ser
generadas por el daemon sshd al iniciar por primera vez.
Agregue la clave al archivo /etc/ssh/ssh_known_hosts en el servidor.
En el cliente, escriba el comando en una lnea sin barra diagonal inversa.

# Cat /etc/ssh/ssh_host_dsa_key.pub | ssh RemoteHost \

'cat >> /etc/ssh/ssh_known_hosts && echo "Host key copied"'


Cuando se le pida, proporcione la contrasea de inicio de sesin.
Cuando el archivo se copia, se muestra el mensaje Host key copied (clave de
host copiada).
Cada lnea en el archivo /etc/ssh/ssh_known_hosts consta de campos que estn
separados por espacios:
Hostnames algorithm-name publickey comment
Edite el archivo /etc/ssh/ssh_known_hosts y agregue RemoteHost como el primer
campo en la entrada copiada.
## /Etc/ssh/ssh_known_hosts File
RemoteHost <copied entry>
Copie la clave pblica del cliente en el servidor.
Las claves de host se almacenan en el directorio /etc/ssh. Las claves suelen ser
generadas por el daemon sshd al iniciar por primera vez.

Agregue la clave al archivo /etc/ssh/ssh_known_hosts en el servidor.


En el cliente, escriba el comando en una lnea sin barra diagonal inversa.

# Cat /etc/ssh/ssh_host_dsa_key.pub | ssh RemoteHost \


'cat >> /etc/ssh/ssh_known_hosts && echo "Host key copied"'
Cuando se le pida proporcione la contrasea de inicio de sesin.
Cuando el archivo se copia, se muestra el mensaje Host key copied (clave de
host copiada).
Cada lnea en el archivo /etc/ssh/ssh_known_hosts consta de campos que estn
separados por espacios: Hostnames algorithm-name publickey comment
Edite el archivo /etc/ssh/ssh_known_hosts y agregue RemoteHost como el primer
campo en la entrada copiada.
## /Etc/ssh/ssh_known_hosts File
RemoteHost <copied entry>

En cada host, los archivos de configuracin de Secure Shell contienen las


siguientes entradas:

## /Etc/ssh/ssh_config
HostBasedAuthentication yes
#
## /Etc/ssh/sshd_config
HostBasedAuthentication yes
IgnoreRhosts no
En cada host, el archivo shosts.equiv contiene una entrada para el otro host:

## /etc/ssh/shosts.equiv on machine2
machine1
## /etc/ssh/shosts.equiv on machine1
machine2
La clave pblica de cada host est en el archivo /etc/ssh/ssh_known_hosts del
otro host:

## /etc/ssh/ssh_known_hosts on machine2
machine1
## /Etc/ssh/ssh_known_hosts on machine1
machine2
Los usuarios tienen una cuenta en ambos hosts:

## /etc/passwd on machine1
Jdoe: x:3111:10:J Doe:/home/jdoe:/bin/sh
## /etc/passwd on machine2
Jdoe: x:3111:10:J Doe:/home/jdoe:/bin/sh

Cmo habilitar Secure Shell v1


Este procedimiento resulta til cuando un host interopera con hosts que ejecutan
v1 y v2.

Asuma el rol de administrador principal o convirtase en superusuario.


El rol de administrador principal incluye el perfil de administrador principal. Para
crear el rol y asignarlo a un usuario, consulte el Captulo 2, Trabajo con Solaris
Management Console (tareas) de Gua de administracin del sistema:
administracin bsica.

Configure el host para que utilice ambos protocolos de Secure Shell.


Edite el archivo /etc/ssh/sshd_config.

# Protocol 2
Protocol 2,1
Proporcione un archivo separado para la clave de host de v1.
Agregue una entrada HostKey al archivo /etc/ssh/sshd_config.

HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_dsa_key
HostKey /etc/ssh/ssh_host_rsa1_key
Genere una clave de host para v1.
# Ssh-keygen -t rsa1 -f /etc/ssh/ssh_host_rsa1_key -N ''
-t rsa1
Indica el algoritmo RSA para v1.

-f
Indica el archivo que contiene la clave de host.

-N ''
Indica que no se requiere ninguna frase de contrasea.

Reinicie el daemon sshd.


# svcadm restart network/ssh: default
Tambin puede reiniciar el sistema.

Вам также может понравиться