Sampling Frequency, Fast Fourier Transform and some strange results in python

So, I have 2 types of signals - Dirac: $$\left[ 1,0,0,0,0..NumberOfSamples \right]$$ and Gauss (it's sinus * window_gausian).

I need to do some operation in Frequency Domain and use the function: impulseFreqDomain = np.fft.fft(Dirac)

Results in one constant line with 1s. Ok, good. With Gauss impulse, it works too 2 frequency in a different part. Good.

Next Operation is multiplication with some filter $$\left[1, 1, 1, 1, 0.99, 0.98,...NumberOfSamples\right]$$

It's easy: I use my impulseFreqDomain and Vector of value my filter in frequency domain, then multiply them.

And next step is inverse Fourier transform. I use ifft, but the result is not what I am expecting. I tried with fftshift and np.real\np.abs and this seems not what I want (it must be small than the original signal with time-shift).

And if I try to increase accuracy of my result by the way of increasing sampling frequency, it has an influence on an amplitude of the output signal.