When you are using private/public key authentication and agent forwarding, a full ssh mitm attack is still possible. Agent forwarding is a security issue and should not be used.
In cases, when agent forwarding is not used, a full ssh mitm attack is not possible, but an attacker can redirect the traffic to another server and log your input. When you are using sudo and enter your password in such a session, the attacker has your password.
If password authentication is not disabled on your server, the attacker can connect to your server and redirect the current session to the new server.
If you want to try mitm attacks to learn more about them, there are some open source mitm proxy servers: https://github.com/ssh-mitm/ssh-mitm (I'm the author of this tool)
Private/public key authentication does not protect you against mitm attacks. It only makes it harder for the attacker to gain access to your server.
The most important is to verify the server fingerprint!