The basics:
Make sure the computers you use are free of spyware, malware, and virus infections.
Always keep your operating system and the software on it, especially your web browser, up to date to protect you from security vulnerabilities.
Use long passwords for your WordPress login. Preferably hard to guess, with numbers.
Keep your WordPress and plugins up-to-date.
If you have an SSL certificate, connect to your WordPress admin login using HTTPS.
When connecting to your server you should use SFTP encryption.
Restrict access to your WordPress admin area
Code:
# BEGIN RESTRICTION
RewriteCond %{REQUEST_URI} ^(.*)?wp-login\.php(.*)$ [OR]
RewriteCond %{REQUEST_URI} ^(.*)?wp-admin$
RewriteCond %{REMOTE_ADDR} !^xx.xxx.xxx.xxx$
RewriteRule ^(.*)$ - [R=403,L]
# END RESTRICTION
Place this in your .htaccess replace "xx.xxx.xxx.xxx" with your IP.
Also replace the wp-login bits if you have your backend hidden.
Don't use the "admin" username.
Consider two-factor authentication.
Plugins like iThemes and Wordfence definitely help.
Always make sure Wordpress and plugins are up to date!