I'm answering myself because I've found both answer and solution. After looking through code my answer is: no, but... But since Godot uses ENet implementation which provides certain functions, I've written small modification for Godot 2.2 and (hopefully) Godot 3.0. It extends ENet functionality with two functions: one to disconnect player by his id, and another one to obtain peer IP address by his id. The code is here. It has been tested with Godot 2.2 but not with 3.0 (my graphic card does not support OpenGL 3). Here's the sample how it can be used to blacklist/ban certain IPs:
server.gd
var blacklist = ["127.0.0.1", "192.168.10.44"]
_ready():
get_tree().connect("network_peer_connected", self, "_client_connected")
# ...
func _client_connected(id):
var adr = get_tree().get_network_peer_address(id)
assert(not adr.empty())
if adr.ip in blacklist:
rpc_id(id, "kicked", "you have been banned from this server")
get_tree().disconnect_network_peer(id)
client.gd
remote kicked(reason):
show_info("Kicked from server: " + reason)