Loanwords from Germanic and, more recently, Russian have been feeding *f into Finnic for a good while. Today /f/ has been established as a loanword phoneme in most Finnic varieties (including, I think, all of the literary standards), but for most of the last 2000 years, the consonant has been adapted into native Finnic phonology in various shapes.
Five substitutions are usually recognized:
- *f → /p/
Mostly in oldest loans from Proto-Germanic or Proto-Scandinavian. The oldest examples could feasibly even precede Grimm’s Law, and therefore actually involve *pʰ → *p (the likes of *pëlto ‘field’). Others can be dated as slightly later, e.g. *pasto ~ *paasto ‘fast’ ← Gmc. *fastōn-, showing the probably relatively late *ā > *ō. A few examples are found even in much more recent loanwords such as Fi. porstua ‘porch’ ← Sw. förstuga or förstuva; Fi. upseeri ‘officer’ (perhaps since expected **vo and **hs are or were not phonotactically possible).
- /f/ → ∅
In initial consonant clusters, e.g. Fi. läski ‘(pork) fat’, riski ‘strong’ ← Sw. fläsk, frisk.
- /f/ → /v/
This is found initially (Fi. vaari ‘grandfather, old man’ ← Sw. far ‘father’) and after a consonant (Fi. konvehti ‘confectionary’). I suspect the switch from the first substitution pattern to this marks the onset of *w > [ʋ]. This may have been completed only after Proto-Finnic, since several dialects of Finnish have been recorded even in the 20th century with [w] adjacent to rounded vowels: kuva [kuwa] ‘picture’, vuosi [wuosi] ‘year’, vyö [wyø] ‘belt’ etc. Dialectal variants such as kasva- ~ kasua- ‘to grow’, kivi ~ [kiw] ~ [kiu] ‘stone’ could also speak in favor of *kaswa-, *kiwi and not **kasva-, **kivi as the starting points. Likewise the Estonian metathesis *Vuh > /Vhv/, more easily rewritten as *wh > *hw.
- /f/ → /h/
Found initially preceding a labial vowel (Fi. huotra < *hootra ‘scabbard’ ← Gmc *fōdra-) and word-internally preceding a consonant (Fi. luhti ‘loft’, sahrami ‘saffron’, uhri ‘sacrifice, offer’).
- /f/ → /hv/
Found between vowels, e.g. Es. Fi. sohva ‘sofa’, Es. kohv ~ Fi. kahvi ‘coffee’ (contrast though Livonian and dialectal Fi. kaffe, Karelian koffi ~ koofi ~ koufi etc.)
Altogether we have, in the newer layers, /h/-substitutions for preserving voicelessness, /v/-substitutions for preserving labiality and continuancy, and /hv/ for covering both.
There’s however also a sixth that I have usually not seen mentioned: substitution as /uh/ (~ /yh/), unpacking the consonant in the opposite order from the kahvi type. At least two other examples appear to be known. One is the Russian loan ‘kaftan’: Fi. Krl. Izh. Vot. kauhtana, Ludian–Veps kauhtan. (Estonian has rather kahvtan.) The other is Fi. Krl. Izh. tiuhta ‘reed; awn’ ← Gmc. *stifta- (> Sw. stift), with the sound development remarked on in LÄGLOS in the word’s entry (in the 3rd volume), but not in the foreword overview of sound substitutions (in the 1st volume). I think a few additional examples could be adducible too:
- Fi. Izh. vyyhti ‘weft’ (← Gmc. *wifti-), whose vowel length is usually attributed to sporadic lengthening before coda /h/ and labialization to irregular influence from /v/. But Karelian shows viyhti; I think this is likely to be more original. In Finnish and Ingrian, evidently *iü > yy. Finnish and Karelian dialects plus Ludian show also viihti ~ viihť, which could be instead the real example of secondary lengthening (but also maybe a parallel development of *iü).
- *riuhto-, *riuhtat- ‘to rip, tug’ (Fi. Krl. Izh. Lu.), with a variant reuhto- in Finnish. Maybe a derivative from Germanic *rīfan- (> Sw. riva) or *reufan (> Eng. reave) ‘to tear’? For *t-suffixed forms, I only know of the noun rift though.
- Fi. töyhtö ‘tuft, crest’, Krl. töyhäkkä ‘fluffy’,  töyhistyö ‘to puff, bristle up’ (probably ← Fi, per öy). Has immediate resemblance with the English, though Scandinavian only seems to have an s-affixed variant tofs (→ Fi. tupsu ‘tuft, tassel’). Looking at Low German could maybe turn up a suitable loan original?
It can be noted that all of these examples occur in the context *-Vft-. This is probably not an accident: **-fk- does not occur in Germanic (possible enough in Russian though, and giving e.g. colloq. Fi. lafka ‘store’ ← Ru. лaвка), while **-VUhR- does not seem to occur in Finnic. A few rare examples of -VihR- can be found, but usually with simplified variants alongside: in Finnish e.g. (standard form first) kaisla ~ kaihla ~ kahila ‘reed’, laina ~ laihna ‘loan’, raihnas ~ raina ‘decrepit, geriatric’, saiho ~ saihvo ‘corral, pen’.
 Krl. töyhäkkä has also a 2nd sense ‘haughty’, which together with töyhteä ‘to fuss about’ are probably better compared with Fi. touhuta ‘id.’, touhu ‘fuss, bustle’ (with typical affective/deminutive fronting).