mayo 29, 2020

Solucionar el error: setpwnam: File exists

El error se presenta cuando se usa chfn o chsh

# chfn informes
Changing finger information for informes.
Name []: Informes exaleconomia
Office []:
Office Phone []:
Home Phone []:

setpwnam: File exists
Finger information *NOT* changed. Try again later.

# chsh -s /bin/bash myuser
Changing shell for myuser.
setpwnam: File exists
Shell *NOT* changed. Try again later.

Esto indica que está bloqueado el archivo /etc/passwd
Para solucionarlo solo borra /etc/ptmp y se resolverá el problema

rm /etc/ptmp

Respalda el archivo, siempre respalda.

---
Si te sirvió la solución, da clic en la propaganda.

abril 08, 2020

Error en modulo de autenticación fprintd-pam

su: PAM adding faulty module: /lib64/security/pam_fprintd.so: 1 Time(s)
su: PAM unable to dlopen(/lib64/security/pam_fprintd.so): /lib64/security/pam_fprintd.so: cannot open shared object file: No such file or directory: 1 Time(s)

Aquí resuelve algunas cosas
https://bugzilla.redhat.com/show_bug.cgi?id=505266

Aquí dice como configurar fprintd-pam
https://wiki.archlinux.org/index.php/Fprint

Aquí dice como usar los comandos de yum con fprintd-pam
https://yum-info.contradodigital.com/view-package/base/fprintd-pam/

Mi solución
yum install fprintd-pam

marzo 30, 2020

error en el servidor Servicio de perfil de usuario al iniciar sesión. No se puede cargar perfil de usuario. Windows 7

Windows 7:

1) Entrar en modo seguro, esta es la única forma en que el windows carga, para entrar en modo seguro solo tienen que oprimir f8 apenas se prende el computador, hay les da varias opciones y escogen la de entrar en modo seguro.

2) Cuando ya haya cargado windows 7 se van a inicio y en el buscador escriben ¨regedit¨ , y oprimen enter una vez lo visualicen en el buscador, hay se les abre una ventana, en esa ventana se meten en HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList. En Profilelist aparecen 5 carpetas; S-1-5-18; S-1-5-19; S-1-5-20; S-1-5-21-numeros; S-1-5-21-numeros.

3) En estos dos últimos donde hay un chorrero de números al final debe haber uno que termina con .bak, y otro sin .bak, verifiquen haciendo click sobre el que termina en .bak y tiene que haber un archivo que dice C:\Users\TEMP, ojo si no es ese y es este C:\Users\(nombre de usuario), entonces hay un error, toca cambiarlos.

4) El cambio lo hacen de la siguiente forma, primero colocan al final de los números al que no tiene .bak por .bak2, después el que tiene .bak borran el .bak, y por ultimo al que le pusimos .bak2 lo reemplazamos de nuevo pero esta vez por .bak

5) Listo, cerramos y reiniciamos, debe ya entrar normalmente, espero que les sirva.....

febrero 26, 2020

Wordpress Permalinks not working with Apache and SSL. Los Enlaces Permanentes de Wordpress no funcionan con Apache y SSL.

Wordpress Permalinks not working with Apache and SSL.


Los Enlaces Permanentes de Wordpress no funcionan con Apache y SSL.


Buscando la solución a que los Enlaces Permanentes de Wordpress no funcionen con Apache, la única forma que lo solucionó fue lo siguiente.

Solución:

Cambiar
AllowOverride none
a
AllowOverride All

Quedando así la solución que resolvió mi problema en particular.

<Directory /var/www/html>
    AllowOverride All
    Require all granted
</Directory>
<Directory />
    AllowOverride All
    Require all denied
</Directory>

Deja un comentario si te sirvió o si crees que hay una solución más eficiente, me serviría mucho.

enero 24, 2020

IPTABLES HOWTO: Ejemplos de iptables para Sysadmins

VERSION ANALIZADA: iptables 1.4.7-1.4.12 (iptables -V)
Si no sabes que es Iptables o quieres una introducción sobre que es y como utilizarlo, puedes consultar la siguiente guía
IPTABLES HOWTO: Guia iptables para Sysadmins
Para poder trabajar con iptables, necesitamos privilegios de root.
En muchos sistemas, por defecto, se encuentra en /sbin/iptables o /usr/sbin/iptables

Ejemplos de reglas para IPTABLES:

Reset iptables firewall rules
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
iptables -F
iptables -t nat -F
Ver el estado de tu firewall y listar reglas
Type the following command as root:
iptables -L -n -v
iptables -n -L -v --line-numbers

iptables -L INPUT -n -v
iptables -L OUTPUT -n -v --line-numbers
Eliminar reglas de Firewall iptables -L INPUT -n --line-numbers
iptables -L OUTPUT -n --line-numbers
iptables -L OUTPUT -n --line-numbers | less
iptables -L OUTPUT -n --line-numbers | grep 202.54.1.1
Se puede eliminar por número de regla
iptables -D INPUT 4
O especificar una regla que coincida
iptables -D INPUT -s 202.54.1.1 -j DROP
Establecer las políticas de firewall por defecto  
Para eliminar todo el tráfico:
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP
iptables -L -v -n
Sólo a bloquear el tráfico entrante
Para eliminar todos los paquetes entrantes / enviado, pero permitir el tráfico saliente, escriba:
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
iptables -A INPUT -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -L -v -n


Eliminar direcciones de red privada en la interfaz pública (Suponiendo eth1 como interfaz pública)
iptables -A INPUT -i eth1 -s 192.168.0.0/24 -j DROP
iptables -A INPUT -i eth1 -s 10.0.0.0/8 -j DROP
Bloquear IP:
iptables -A INPUT -s 192.168.1.5 -j DROP
iptables -A INPUT -s 192.114.71.13 -j DROP
Guardar reglas:
iptables-save > /root/iptables.fw

To save firewall rules under CentOS / RHEL / Fedora Linux, enter:
service iptables save

Restaurar reglas:
iptables-restore < /root/iptables.fw

To restore firewall rules under CentOS / RHEL / Fedora Linux, enter:
service iptables restart



Una forma de recargar reglas automáticamente al reiniciar el servidor:
vi /etc/rc.local
...
# Reload IPTABLES Rules automatically on restart
/sbin/iptables-restore < /root/iptables.fw


En CentOS pueden almacenarse las reglas en el siguiente fichero para recargarlas automáticamente:
/etc/sysconfig/iptables


Permitir todo el tráfico de loopback, y eliminar todo el tráfico a 127/8 que no usa lo0
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT ! -i lo -d 127.0.0.0/8 -j REJECT


Eliminar cualquier paquete TCP que no se ha iniciado con el Flag SYN activo
iptables -A INPUT -p tcp ! --syn -m state --state NEW -j DROP

Aceptar todas las conexiones entrantes establecidas
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

Eliminar cualquier paquete inválido que no pueda ser identificado
iptables -A INPUT -m state --state INVALID -j DROPDrop all inbound telnet traffic
iptables -I INPUT -p tcp --dport 23 -j DROPDrop all outbound web traffic
iptables -I OUTPUT -p tcp --dport 80 -j DROPDrop all outbound traffic to 192.168.0.1
iptables -I OUTPUT -p tcp --dest 192.168.0.1 -j DROPAllow all inbound web traffic
iptables -I INPUT -p tcp --dport 80 -j ACCEPTAllow inbound port traffic for localhost
iptables -I INPUT -s 12.0.0.1 -p tcp --dport 2003 -j ACCEPTAllow inbound HTTPS traffic from 10.2.2.4
iptables -I INPUT -s 10.2.2.4 -p tcp -m tcp --dport 443 -j DROPDeny outbound traffic to 192.2.4.0-192.2.4.255
iptables -I OUTPUT -d 192.2.4.6.0/24 -j DROP

Bloquear tráfico al dominio facebook.com



Primero miramos la IP de facebook.com y luego su RANGO DE IPs
host -t a www.facebook.com
whois 69.171.228.40 | grep CIDR


Creamos la regla para no permitir acceso
iptables -A OUTPUT -p tcp -d 69.171.224.0/19 -j DROP


También es posible hacerlo por nombre de dominio, pero la ayuda ya dice que es una mala idea ;)
You can also use domain name, enter:
iptables -A OUTPUT -p tcp -d www.facebook.com -j DROP
iptables -A OUTPUT -p tcp -d facebook.com -j DROP


IPTABLES man page:
"... specifying any name to be resolved with a remote query such as DNS (e.g., facebook.com is a really bad idea), a network IP address (with /mask), or a plain IP address ..."


 Allow incoming connections to port 21 from one IP address 11.22.33.44
iptables -A INPUT -p tcp -m state --state NEW --dport 21 --source 11.22.33.44

Permitir todo el tráfico entrante SSH
iptables -A INPUT -i eth0 -p tcp --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT


Permitir SSH saliente
iptables -A OUTPUT -o eth0 -p tcp --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A INPUT -i eth0 -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT


Permitir tráfico HTTP
iptables -A INPUT -i eth0 -p tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sport 80 -m state --state ESTABLISHED -j ACCEPT


Permitir HTTPS saliente.
iptables -A OUTPUT -o eth0 -p tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A INPUT -i eth0 -p tcp --sport 443 -m state --state ESTABLISHED -j ACCEPT


Combinar reglas con multipuerto
iptables -A INPUT -i eth0 -p tcp -m multiport --dports 22,80,443 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp -m multiport --sports 22,80,443 -m state --state ESTABLISHED -j ACCEPT


Deny all other incoming connections to port 21.
iptables -A INPUT -p tcp -m state --state NEW --dport 21 -j DROP

Eliminar la primera regla de entrada
iptables -D INPUT 1

Bloquear o Permitir solicitud de ICMP Ping  
iptables -A INPUT -p icmp --icmp-type echo-request -j DROP
iptables -A INPUT -i eth1 -p icmp --icmp-type echo-request -j DROP
iptables -A INPUT -s 192.168.1.0/24 -p icmp --icmp-type echo-request -j ACCEPT  


A continuación sólo acepta tipo limitado de peticiones ICMP:
### ** assumed that default INPUT policy set to DROP ** #############
iptables -A INPUT -p icmp --icmp-type echo-reply -j ACCEPT
iptables -A INPUT -p icmp --icmp-type destination-unreachable -j ACCEPT
iptables -A INPUT -p icmp --icmp-type time-exceeded -j ACCEPT
## ** all our server to respond to pings ** ##
iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT  


Permitir ping de fuera hacia adentro
iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
iptables -A OUTPUT -p icmp --icmp-type echo-reply -j ACCEPT


Permitir PING de dentro a fuera.
iptables -A OUTPUT -p icmp --icmp-type echo-request -j ACCEPT
iptables -A INPUT -p icmp --icmp-type echo-reply -j ACCEPT


Permitir tráfico DNS saliente.
iptables -A OUTPUT -p udp -o eth0 --dport 53 -j ACCEPT
iptables -A INPUT -p udp -i eth0 --sport 53 -j ACCEPT


Abrir un rango de puertos de entrada
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 7000:7010 -j ACCEPT

Abrir un rango de IPs
## only accept connection to tcp port 80 (Apache) if ip is between 192.168.1.100 and 192.168.1.200 ##
iptables -A INPUT -p tcp --destination-port 80 -m iprange --src-range 192.168.1.100-192.168.1.200 -j ACCEPT

## nat example ##
iptables -t nat -A POSTROUTING -j SNAT --to-source 192.168.1.20-192.168.1.25



Restringir el número de conexiones concurrentes a un servidor por IP
Puedes utilizar el módulo connlimit para crear estas restricciones. Permitir 3 conexiones SSH por cliente:
iptables -A INPUT -p tcp --syn --dport 22 -m connlimit --connlimit-above 3 -j REJECT

Limitar el número de conexiones HTTP a 20:
iptables -p tcp --syn --dport 80 -m connlimit --connlimit-above 20 --connlimit-mask 24 -j DROP

Donde:
--connlimit-above 3 : Match if the number of existing connections is above 3.
--connlimit-mask 24 : Group hosts using the prefix length. For IPv4, this must be a number between (including) 0 and 32.


Eliminar o aceptar paquetes desde una MAC Address
iptables -A INPUT -m mac --mac-source 00:0F:EA:91:04:08 -j DROP
## *only accept traffic for TCP port # 22 from mac 00:0F:EA:91:04:07 * ##
iptables -A INPUT -p tcp --destination-port 22 -m mac --mac-source 00:0F:EA:91:04:07 -j ACCEPT


Prevenir ataques DoS
-Limit 25/minute : Limita a sólo 25 conexiones por minuto.
-Limit-burst 100: Indica que el valor de limit/minute será forzado sólo después del número de conexiones en este nivel
iptables -A INPUT -p tcp --dport 80 -m limit --limit 25/minute --limit-burst 100 -j ACCEPT

Permitir redirección de puertos.
Ejemplo puerto 422 redirigimos al 22, con lo que podemos tener conexiones al puerto 22 y al puerto 422 por ssh.
iptables -t nat -A PREROUTING -p tcp -d 192.168.102.37 --dport 422 -j DNAT --to 192.168.102.37:22
iptables -A INPUT -i eth0 -p tcp --dport 422 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sport 422 -m state --state ESTABLISHED -j ACCEPT


Logar y eliminar paquetes:
iptables -A INPUT -i eth1 -s 10.0.0.0/8 -j LOG --log-prefix "IP_SPOOF A: "
iptables -A INPUT -i eth1 -s 10.0.0.0/8 -j DROP


Logar y eliminar paquetes limitando el número de entradas repetidas en el LOG
iptables -A INPUT -i eth1 -s 10.0.0.0/8 -m limit --limit 5/m --limit-burst 7 -j LOG --log-prefix "IP_SPOOF A: "
iptables -A INPUT -i eth1 -s 10.0.0.0/8 -j DROP


Sacar en el log los paquetes caídos.
Primero creamos una cadena llamada LOGGING:
iptables -N LOGGINGLuego todas las conexiones entrantes vayan por la cadena LOGGING
iptables -A INPUT -j LOGGINGLogueamos paquetes con un log-prefix
iptables -A LOGGING -m limit --limit 2/min -j LOG --log-prefix "IPTables Packet Dropped: " --log-level 7Y los bloqueamos:
iptables -A LOGGING -j DROP

Listado de reglas ejemplo para puertos TCP/UDP comunes:

Replace ACCEPT with DROP to block port:
## open port ssh tcp port 22 ##
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 22 -j ACCEPT

## open cups (printing service) udp/tcp port 631 for LAN users ##
iptables -A INPUT -s 192.168.1.0/24 -p udp -m udp --dport 631 -j ACCEPT
iptables -A INPUT -s 192.168.1.0/24 -p tcp -m tcp --dport 631 -j ACCEPT

## allow time sync via NTP for lan users (open udp port 123) ##
iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p udp --dport 123 -j ACCEPT

## open tcp port 25 (smtp) for all ##
iptables -A INPUT -m state --state NEW -p tcp --dport 25 -j ACCEPT

# open dns server ports for all ##
iptables -A INPUT -m state --state NEW -p udp --dport 53 -j ACCEPT
iptables -A INPUT -m state --state NEW -p tcp --dport 53 -j ACCEPT

## open http/https (Apache) server port to all ##
iptables -A INPUT -m state --state NEW -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -m state --state NEW -p tcp --dport 443 -j ACCEPT

## open tcp port 110 (pop3) for all ##
iptables -A INPUT -m state --state NEW -p tcp --dport 110 -j ACCEPT

## open tcp port 143 (imap) for all ##
iptables -A INPUT -m state --state NEW -p tcp --dport 143 -j ACCEPT

## open access to Samba file server for lan users only ##
iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 137 -j ACCEPT
iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 138 -j ACCEPT
iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 139 -j ACCEPT
iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 445 -j ACCEPT

## open access to proxy server for lan users only ##
iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 3128 -j ACCEPT

## open access to mysql server for lan users only ##
iptables -I INPUT -p tcp --dport 3306 -j ACCEPT



Conclusión:
Esta entrada es una lista básica de reglas para iptables. Puedes crear y construir reglas más complejas a partir de estas, e incluso crear sistemas para automatizar la adición o eliminación de reglas.
Para crear las reglas, es importante comprender y conocer bien TCP/IP.
Puede ser importante o necesario aplicar ciertas modificaciones al kernel mediante sysctl.conf

Fuente: http://www.seavtec.com/en/content/soporte/documentacion/iptables-howto-ejemplos-de-iptables-para-sysadmins

enero 13, 2020

PostgreSQL insertar fecha y hora de ingreso a un campo de la tabla

PostgreSQL

Insertar fecha y hora de ingreso a un campo de la tabla.

Una forma de que automáticamente se inserte el dato de la fecha y hora en que se ingresó el registro en una tabla es usando la instrucción now() como campo por defecto en un tipo de dato TIMESTAMPTZ.

CREATE TABLE nombretabla (
     id         SERIAL PRIMARY KEY,
     otrocampo      VARCHAR NOT NULL,
     creadoenlafecha TIMESTAMPTZ DEFAULT Now()
);

enero 10, 2020

Error al subir archivo en Wordpress. El tamaño máximo de archivo 2 mb.

Para solucionar el error al subir archivo en Wordpress.



El tamaño máximo de archivo 2 mb.

Revisar el archivo php.ini comúnmente ubicado en /etc/php.ini las opciones

post_max_size
upload_max_filesize
memory_limit

Cambia la opción 
upload_max_filesize = 2M

por
upload_max_filesize = 4M

reinicia los servicios
service httpd restart
service php-fpm restart


enero 07, 2020

Problemas para montar un disco externo en Mac


1.- Ejecuta el Terminal
2.- Introduce "diskutil list" y a continuación enter
3.- Vamos a montar el que tiene el identificador como por ejemplo disk3s1.
4.- "diskuril mount disk3s1" el identificador del disco por ejemplo disk3s1.

Si no funciona usar el software Paragon Software https://www.paragon-software.com
Comprar e instalar HFS+
https://www.paragon-software.com/home/hfs-windows/

Comprar e instalar APFS
https://www.paragon-software.com/home/apfs-windows/

Si se puede ver los archivos, realizar una copia de seguridad y formatearlo como NTFS.
Después insertar en disco en la Mac y formatearlo de nuevo como HFS+ o APFS

noviembre 14, 2019

Visualizar el log de SQL Server mediante la herramienta SQL Server Management Studio

Tomado de: https://docs.microsoft.com/en-us/sql/relational-databases/performance/view-the-sql-server-error-log-sql-server-management-studio?view=sql-server-ver15

The SQL Server error log contains user-defined events and certain system events you can use for troubleshooting.

View the logs

  1. In SQL Server Management Studio, select Object Explorer. To open Object Explorer, select F8. Or on the top menu, select View, and then select Object Explorer:
    Object_Explorer
  2. In Object Explorer, connect to an instance of SQL Server, and then expand that instance.
  3. Find and expand the Management section (assuming you have permissions to see it).
  4. Right-click SQL Server Logs, select View, and then choose SQL Server Log.
    View_SQLServer_Log_SSMS
  5. The Log File Viewer appears (it might take a moment) with a list of logs for you to view.

See also


For more information, see MSSQLTips.com's helpful post Identify location of the SQL Server Error Log file.

Solucionar el error: setpwnam: File exists

El error se presenta cuando se usa chfn o chsh # chfn informes Changing finger information for informes. Name []: Informes exaleconomia ...