SLI: GPU model must be the same. Been a while, but occasionally they would release different GPUs under the same name that would not work. The cards can more or less be any brand. (There are some incompatibilities possible with EVGA cards from the 900 series before and after they added support for LED SLI Bridges)
Minimum of 8x PCIe lanes available regardless of PCIe bandwidth for each card.
GTX1060 cannot SLI unlike previous generation x60 series cards. Though that may be sensible since they did release two GPUs under that name. The 3GB and 6GB versions don't have a matching number of SM units.
Crossfire: Same GPU families can Crossfire, but this may only apply to older cards. So an HD7870 and an HD7850 can crossfire, the larger card just soft disables the excess resources. AMD's rebranding also added a little confusion as the R9-270 and R9-270X could also crossfire with those two.
R9-390 and R9-390X can crossfire, and presumably R9-380 and R9-380X. Not sure on the Nano, Fury, and Fury X which are all versions of the same GPU. Haven't seen very many crossfire implementations of that series.
Minimum of 4x PCIe lanes for Crossfire per card.