Short Answer: Wikipedia!!
Long Answer: Since the others have pointed you to some good resources, I will just add general advice on how to go about learning to produce, distinguish and describe phonetic units (or at least the way I went about learning these things).
To start, being bilingual (tri-, quadri-, ...) helps. So, if you know another language, you already have some idea how the phonetics of that language differs from yours, and you can distinguish among a bigger set of speech sounds. Even if you don't, here are some ways you can improve on the things I mentioned above.
First, an understanding, in phonetics, of why certain speech sounds are called what they are is paramount. As you probably are aware, something like a
voiceless labeo-dental fricative [f] is called that for a reason. The trick is to break down each word in that name and pay careful attention to what your vocal cavity is doing while making an
[fːːː] sound. Then compare with what changes when you change each word in that name: change
dental [θ] etc. Begin by analyzing sounds that you know occur in English, i.e., sounds you are familiar with. Once you are comfortable with what such terms really stand for (in other words, what your vocal cavity does), you will be able to put together such strings of words and guess the sounds on your own, even if you have never heard these before. For example, none of the languages I grew up speaking (I had the luck of growing up trilingual) had a
voiceless palatal plosive [c], but I knew what a
voiceless velar plosive [k] was, and I knew how to produce a
(voiced) palatal approximant [j], then all I had to do is to position my tongue as in
[j] and "do what I do" with
[k], and voila!
How to check if you've got the correct sound? Well, there are tons of resources online for that. My favorite is Wikipedia, where clear audio for most vowels and consonants (including these ones: affricates, co-articulated consonants, non-pulmonic consonants) that you would want is available. Moreover, the individual pages on the phones (such as this one for
[c]) contain a list of languages (dialects) that make use of the phone at least allophonically. You can use these references to search for recordings (videos, audios, music if you prefer) in these languages to hear these sounds in actual speech. At least for the more populous languages, you can definitely find something on youtube. A lot of people on youtube teach ways to produce specific sounds or to distinguish between "similar" sounds that are hard for non-natives, and some of them are really good. For instance, some good ones include this video teaching how to distinguish
[ɨ], this one providing a fun tutorial on producing an
alveolar trill [r] and this one explaining rather clearly one of the hardest three-way distinction among fricatives in any language I know of. For sounds that occur in more obscure languages than Russian or Swedish (addressed in the videos I linked), you can search the UCLA Phonetics Archive. Some of the audios are old (and not the clearest), but still is an indispensable resource for auditory training.
I don't think any Memrise/Duolingo style resource exists for phonetics, which seems to be what you are looking for:
I would like to see adaptive skill calibration (drop to simpler drills w/errors, advance when mastered), spaced repetition.
However, if you take the time to go through some of the stuff I mentioned, you should be able to get much better.
It goes without saying that just listening won't help you accomplish what you are after. You will have to be able to produce the distinctions you hear (it's kind of cyclical: if you can produce a distinction, you will automatically realize what the distinction is). I would suggest starting off with the sounds of English (as that is your native tongue), and then trying to listen to some language with relatively simple phonetics, such as Finnish or Hungarian (Note: I am not suggesting these are any easier to learn than other languages, but simply that they have fewer allophonic variations to deal with as a beginner), but which are quite different than English in that they will be able to help you try out and understand new sounds and features, such as (lack of) aspiration, palatal stops, vowel and consonant length etc.
Lastly, regarding the allophone/phoneme business, do not worry if you can't hear the difference between all the variations of a certain phoneme. In general, native speakers are supposed to be deaf to these variations. Once you get used to sound patterns in other languages, the allophones will automatically make themselves apparent to you. Often reading about these allophonic variations first, and then trying to listen specifically for the things you read about helps. This works really well in phonetics, to try to search for something once you know that it exists; sort of like how you can understand (not the meaning, but to be able to hear words clearly) songs in foreign languages once you have the lyrics. For the specific case of allophonic deaspiration of English stops, check out these two videos (n.b.: imho, turning off aspiration is probably the phonetic feature English speakers, even pros, struggle with the most).
As a final word of caution, remember that (as @user6726 mentions in his answer), IPA symbols are meant to be approximate. The same symbol may be used in two languages or dialects to stand for two or more different sounds. For example, the symbol
ʃ is used to refer to a post-alveolar sibilant in each of English, Bengali, Kabardian (one of their many many sibilants) and sometimes Russian, even though none of them is exactly like any of the others. And, the symbol
ð used for each of English, Icelandic and Danish when again all three are very clearly distinct.