In blood groups you always need to consider two things: The antigens present on red blood cells (RBC) and the antibodies present in plasma, which lead to clumping of RBCs if they match. Don't mix up the words antigen and antibody! A healthy individual will never have antibodies against the antigens on their own RBCs, but they will have antibodies against antigens which are not present on their own RBCs. (*)
Also always remember that blood transfusions consist only of RBCs! The plasma and antibodies are removed. If you mix blood of two people directly, all combinations will coagulate unless the blood types are identical. Thus, when thinking about donor and acceptor match, you have to consider the acceptor's antibodies and the donor's antigens - nothing else.
Finally, Rh+ means RBCs have the Rh antigen, Rh- means they don't.
A universal acceptor will thus be someone who has no antibodies at all (because their antigens don't matter - they receive no antibodies from the donor). This is the case if the RBCs have all antigens: AB+
A universal donor will be someone whose RBCs have no antigens at all (because their antibodies don't matter, they get removed before transfusion): O-
As a side note: The ABO system and Rh are only the two most dangerous blood groups when they are mismatched. There are many more RBC antigen types (around 35) and in fact hospitals will consider several of these when matching donors and acceptors.
(*) We don't completely know why we make antibodies against antigens not present on RBCs yet. One hypothesis is that the bacteria in the intestines produce antigens which 'look' similar to our blood antigens. Also, this only applies to the A/B/O antigen. All other antigens work like normal antigens such as bacterial ones - after your immune system has seen them the once, you have antibodies against them.