Challenge-response port knocking for TCP