1.\" 2.\" blackhole - drop refused TCP or UDP connects 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, are permitted provided that the following conditions 6.\" are met: 7.\" 1. Redistributions of source code must retain the above copyright 8.\" notice, this list of conditions and the following disclaimer. 9.\" 2. Redistributions in binary form must reproduce the above copyright 10.\" notice, this list of conditions and the following disclaimer in the 11.\" documentation and/or other materials provided with the distribution. 12.\" 13.\" 14.\" $FreeBSD$ 15.Dd January 1, 2007 16.Dt BLACKHOLE 4 17.Os 18.Sh NAME 19.Nm blackhole 20.Nd a 21.Xr sysctl 8 22MIB for manipulating behaviour in respect of refused TCP or UDP connection 23attempts 24.Sh SYNOPSIS 25.Cd sysctl net.inet.tcp.blackhole[=[0 | 1 | 2]] 26.Cd sysctl net.inet.udp.blackhole[=[0 | 1]] 27.Sh DESCRIPTION 28The 29.Nm 30.Xr sysctl 8 31MIB is used to control system behaviour when connection requests 32are received on TCP or UDP ports where there is no socket listening. 33.Pp 34Normal behaviour, when a TCP SYN segment is received on a port where 35there is no socket accepting connections, is for the system to return 36a RST segment, and drop the connection. 37The connecting system will 38see this as a 39.Dq Connection refused . 40By setting the TCP blackhole 41MIB to a numeric value of one, the incoming SYN segment 42is merely dropped, and no RST is sent, making the system appear 43as a blackhole. 44By setting the MIB value to two, any segment arriving 45on a closed port is dropped without returning a RST. 46This provides some degree of protection against stealth port scans. 47.Pp 48In the UDP instance, enabling blackhole behaviour turns off the sending 49of an ICMP port unreachable message in response to a UDP datagram which 50arrives on a port where there is no socket listening. 51It must be noted that this behaviour will prevent remote systems from running 52.Xr traceroute 8 53to a system. 54.Pp 55The blackhole behaviour is useful to slow down anyone who is port scanning 56a system, attempting to detect vulnerable services on a system. 57It could potentially also slow down someone who is attempting a denial 58of service attack. 59.Sh WARNING 60The TCP and UDP blackhole features should not be regarded as a replacement 61for firewall solutions. 62Better security would consist of the 63.Nm 64.Xr sysctl 8 65MIB used in conjunction with one of the available firewall packages. 66.Pp 67This mechanism is not a substitute for securing a system. 68It should be used together with other security mechanisms. 69.Sh SEE ALSO 70.Xr ip 4 , 71.Xr tcp 4 , 72.Xr udp 4 , 73.Xr ipf 8 , 74.Xr ipfw 8 , 75.Xr pfctl 8 , 76.Xr sysctl 8 77.Sh HISTORY 78The TCP and UDP 79.Nm 80MIBs 81first appeared in 82.Fx 4.0 . 83.Sh AUTHORS 84.An Geoffrey M. Rehmet 85