Jump to content

Protección básica de servidor FreeBSD


Shogun

Mensajes recomendados

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.

 

max-src-conn 30, max-src-conn-rate 10/5, overload <abusive_hosts> flush

 

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.

Enlace para comentar
Compartir en otros sitios

Oye amigo shogun porque la parte esta se repite 3 veses

 

 

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 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 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 flush)

Enlace para comentar
Compartir en otros sitios

Ya lo teste en mi server y funciona de maravilla ya nomas falta el anti botnet eso seria genial :D pero te dare mas grasias te meres ses mil grasias :D

 

 

Etas son las ips de botnet xd pero no se detenerlo creo que dejare mi servidor off un timpo mientras sede :D

 

88.212.14.199

88.22.92.116

88.220.244.156

88.225.122.205

88.226.78.95

88.232.38.134

88.61.85.95

88.62.219.45

88.83.104.236

88.93.135.37

89.124.139.48

89.164.230.245

89.176.2.193

89.192.171.11

89.206.122.35

89.209.195.55

89.219.56.139

89.243.7.138

89.31.111.70

89.76.233.112

89.85.223.81

89.92.212.154

9.4.194.200

90.1.167.98

90.100.38.28

90.189.67.157

90.198.93.93

90.242.1.17

90.28.233.21

90.44.44.59

90.5.74.79

90.75.180.223

91.101.52.67

91.102.229.49

91.108.178.237

91.108.195.13

91.108.37.10

91.130.27.101

91.137.127.61

91.152.53.109

91.155.123.74

91.16.93.201

91.160.204.246

91.199.54.123

91.22.238.13

91.239.0.143

91.25.182.237

91.49.178.50

91.53.49.154

91.59.173.3

91.64.149.205

91.77.158.65

91.91.48.145

91.96.199.148

92.10.182.16

92.106.193.38

92.116.238.62

92.128.159.92

92.130.131.239

92.130.140.70

92.156.153.154

92.210.34.135

92.211.146.228

92.218.79.85

92.33.138.165

92.39.216.50

92.82.58.123

93.1.77.90

93.10.29.83

93.109.233.139

93.12.109.162

93.121.105.14

93.121.242.183

93.125.70.101

93.126.129.79

93.134.127.244

93.140.55.137

93.146.138.228

93.153.105.120

93.172.34.218

93.23.239.55

93.24.117.234

93.70.143.45

93.83.82.195

93.85.147.208

93.87.73.225

93.87.85.79

93.97.173.154

93.98.247.147

93.98.252.122

94.100.16.11

94.113.194.94

94.125.134.229

94.127.253.153

94.155.234.63

94.18.116.70

94.196.202.58

94.227.34.192

94.23.145.196

94.236.89.145

94.244.59.128

94.251.249.78

94.29.17.172

94.33.188.194

94.45.156.204

94.5.50.2

94.52.162.191

94.85.143.162

94.93.174.230

94.94.75.138

95.108.37.178

95.123.131.219

95.124.51.231

95.13.150.69

95.142.163.74

95.150.100.8

95.156.18.193

95.163.221.102

95.165.185.65

95.172.191.209

95.189.166.105

95.200.35.109

95.237.32.158

95.238.172.47

95.24.104.107

95.243.217.109

95.3.9.199

95.31.137.87

95.4.223.175

95.48.240.62

95.52.42.40

95.7.95.41

95.81.83.226

95.9.23.166

95.91.183.231

96.138.13.150

96.170.13.195

96.173.116.169

96.198.20.168

96.219.196.203

96.23.52.13

96.244.235.243

96.246.194.245

96.26.100.23

96.4.73.247

96.46.152.56

96.5.115.89

96.90.120.222

96.97.183.116

97.1.145.45

97.15.244.69

97.151.83.138

97.164.122.144

97.168.30.151

97.177.143.147

97.203.225.58

97.206.132.32

97.240.121.248

97.3.182.207

97.32.170.39

97.42.190.96

97.73.14.197

97.79.125.64

98.1.141.144

98.1.198.222

98.123.244.219

98.124.12.188

98.128.116.180

98.14.160.73

98.156.187.157

98.158.6.153

98.166.134.217

98.186.162.113

98.21.117.164

98.239.19.25

98.245.223.96

98.31.82.130

98.37.248.153

98.64.45.86

98.65.163.59

98.7.78.23

98.84.241.199

98.87.27.172

99.0.53.74

99.121.221.205

99.128.183.32

99.13.177.224

99.132.143.71

99.136.32.146

99.141.159.54

99.148.134.82

99.161.44.89

99.193.207.187

99.196.130.123

99.206.93.101

99.35.12.94

99.47.26.97

99.71.27.115

99.81.72.237

99.82.119.127

99.82.84.198

Enlace para comentar
Compartir en otros sitios

  • 2 weeks later...
  • 1 month later...

Unirse a la conversación

Puedes publicar ahora y registrarte más tarde. Si tienes una cuenta, regístrate para publicar con su cuenta.

Guest
Responder a este tema...

×   Has pegado contenido con formato .   Eliminar formato

  Only 75 emoji are allowed.

×   Tu enlace se ha incorporado automáticamente.   Mostrar un enlace en su lugar

×   Se ha restaurado el contenido anterior. .   Borrar editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recientemente navegando por este tema   0 miembros

    • No hay usuarios registrados visitando esta página.
×
×
  • Crear nuevo...