Buenas a todos hoy vengo a traeros un login que he realizado gracias a HaveGone, un gran diseñador.
Aqui una preview.
Y aqui os dejo los archivos y os explico como editarlo.
Una vez descargados los adjuntos...
Vamos a root, abrimos constinfo.py, y agregamos lo siguiente:
abierto = 0
ahora, vamos a intrologin.py
y buscamos:
self.sema.SetPosition(300, 160)
Aqui cada uno lo pondrá en la pantalla cambiando esas coordenadas.
luego
self.sema.AddFlag("movable")
Esto sirve para que podais mover el login por toda la pantalla arrastrandolo, si no lo quereis, simplemente borrais esa linea.
Antes que nada decir que muchos no conoceran esto y yo dentro de unos días lo probaré pero gracias a Shogun conocí esto y veo que en muchas web's ayuda.
Toda la información está sacada de: Debes iniciar sesión para ver el contenido del enlace en esta publicación.
¿Que es CloudFlare?
¿Cómo funciona?
Características más destacables:
¿Cuál es su precio?
Hola a todos los usuarios de Metin2Zone, hoy quería compartir con vosotros la configuración que usamos en el servidor del World of Metin2. Esto os dará una protección básica contra los ataques más comunes.
En primer lugar, debemos añadir estas líneas a /etc/sysctl.conf
security.bsd.see_other_uids=0
net.inet.ip.random_id=1
net.inet.ip.redirect=0
net.inet.ip.sourceroute=0
net.inet.ip.accept_sourceroute=0
net.inet.icmp.maskrepl=0
net.inet.icmp.log_redirect=0
net.inet.icmp.drop_redirect=1
net.inet.tcp.drop_synfin=1
net.inet.tcp.icmp_may_rst=0
net.inet.udp.blackhole=1
net.inet.tcp.blackhole=2
Una vez hecho esto ejecutamos este comando para cargar la nueva configuración:
service sysctl restart
En segundo lugar tenemos el firewall PacketFiler (pf) que deberéis activar (no voy a explicar aquí como se hace, Google is your friend) y a continuación modificar /etc/pf.conf ;aquí os dejo la que usa el WOM.
ext_if="em0"
service_ports="{ 21, 1137 }"
public_ports="{ 80, 443 }"
game_ports="{ 11000, 13000, 13001, 13002, 13010, 13011, 13012, 13020, 13021, 13022, 13030, 13031, 13032, 13099 }"
table <trusted_hosts> const {}
table <abusive_hosts> persist
# options
set block-policy drop
set loginterface $ext_if
set skip on lo
# Normalizes packets and masks the OS's shortcomings such as SYN/FIN packets
# [scrub reassemble tcp](BID 10183) and sequence number approximation
# bugs (BID 7487).
scrub on $ext_if reassemble tcp no-df random-id
# Filters
antispoof quick for { lo0 $ext_if }
block in
pass out all keep state
pass out on $ext_if all modulate state
pass in quick from <trusted_hosts>
block in quick from <abusive_hosts>
## allow ping in
pass in inet proto icmp all icmp-type echoreq
pass in on $ext_if proto tcp to any port $service_ports flags S/SA keep state
(max-src-conn 30, max-src-conn-rate 10/5, overload <abusive_hosts> flush)
pass in on $ext_if proto tcp to any port $public_ports flags S/SA keep state
(max-src-conn 30, max-src-conn-rate 10/5, overload <abusive_hosts> flush)
pass in on $ext_if proto {tcp,udp} to any port $game_ports flags S/SA keep state
(max-src-conn 20, max-src-conn-rate 10/5, overload <abusive_hosts> flush)
Debéis adaptar esta configuración a vuestro servidor claro está, en primer lugar modificando los game ports a los que utilicéis. En segundo lugar:
table <trusted_hosts> const {}
entre las llaves debéis poner las direcciones IP a las que se les da acceso libre sin pasar por el firewall, separadas por comas si son más de una. Es aconsejable poner aquí la IP de tu servidor web (si está en otro host) y la tuya propia (para evitar quedar bloqueados por error mientras probamos)
En las tres últimas líneas configuramos los límites que vamos a permitir por dirección IP.
Esto significa que permitimos hasta 30 conexiones por IP, a una velocidad máxima de 10 conexiones cada 5 segundos, y quien supere estos límites será puesto en la tabla abusive_hosts, es decir, baneado. Si quitamos esta última parte las conexiones que superen el límite se descartarán, pero no se baneará al infractor. En el tercer párrafo,correspondiente a los game ports, admitimos conexiones UDP, esto es necesario para la comprobación del cliente en la pantalla de login (CH1 NORM, etc.) Si bloqueásemos completamente UDP los canales saldrían siempre off (...)
Para vaciar la tabla de bans en caso de que algún jugador o nosotros mismos haya sido baneado por error debemos usar el siguiente comando:
pfctl -t abusive_hosts -T flush
Espero que este post sirva de ayuda a alguien, un saludo.