cd /home/steam/steamcmd/arma3
./arma3server -name=server -config=server.cfg
NB: If you are using the -mods= parameter, you must specify relative paths rather than absolute paths. The arma3server process will attach to the current terminal. If you are connected to the server over SSH, the server will stop when you disconnect. You can keep the server running in the background using GNU Screen or tmux. There are many tutorials online on how to use these programs to detach and reattach processes from and to a terminal.
You can safely stop the server by pressing Ctrl+C in the terminal (or screen/tmux instance) that the server is attached to.
Case sensitivity & Mods
Some mods such as @ALiVE and @A3MP will not function if there are capital letters in any of their file names. If you do not update your mods on a regular basis, you can just use the command
find . -depth -exec rename 's/(.*)\/([^\/]*)/$1\/\L$2/' {} \;
in the directory where your mods are located. This will recursively search the directory tree and make all the filenames lowercase.
If you regularly update your mods using, e.g. ArmA3Sync, you will find that this will redownload any files/folders that have changed case every time you run it. The solution to this is to use a package called "ciopfs" - Case Insensitive On Purpose Filesystem. You should first run the "find . -depth..." command mentioned above on your mod folder. Then, make an empty directory outside of the mods directory, e.g. mods_caseinsensitive. You then mount the directory with
ciopfs mods mods_caseinsensitive
and tell ArmA3Sync to synchronise in the mods_caseinsensitive directory. Once it has finished, you can unmount the directory with
fusermount -u mods_caseinsensitive
You should find that all of the files in the original mods directory are lowercase.