An old table used in a kitchen is going to have years of gunk, cooking oil, dirty and greasy hands, dish washing detergent and lots of other gunk on and in the wood. Linseed oil is only a very small step up from no finish at all. It has no protective qualities and any water and chemicals will easily pass through it into the wood. It's also possible that it has had supermarket cleaners and polishes applied at some time and most of these items contain silicone which is impossible to remove when embedded in the wood.
The way I would approach it is to first take the table apart--at least, get the top off. Get yourself a chemical paint stripper containing methylene chloride. A gel water rinseable formulation would be best. This aggressive type paint remover will do the best job getting the surface clean. If you use the water rinseable type, remove the gunk scrubbing with a stiff scrub brush as you flow on the water.
Once the items are dry, sand them first with 100 grit up to 180 grit without skipping any grits. Or, use a scraper to remove any leftover gunk and smooth the surface. Now deal with any possible remaining contaminates by spraying on a coat of dewaxed shellac. Buy yourself a couple of cans of Zinsser Spray Can shellac. Spray on an even coat to both sides and all edges to create a barrier coat. Apply a second coat. Do not sand between or after the shellac coats or you will destroy the barrier you are attempting to create.
Now, decide on your top coat. My preference is for a non-poly varnish as it looks nicer. Waterlox Original or Behlen Rockhard are both excellent and provide as much protection as any poly varnish. Apply the first coat and let it fully dry. Then, using 320 paper on a sanding block sand lightly in the direction of the grain. Vacuum off the dust and apply three more coats.
I know it's a detailed process but it will give you the best shot at dealing with what you are starting with.