Securing /tmp and shm partitions

Securing /tmp and /dev/shm is a nice practice.  Lots of programs and scripts have access in there. So you don’t want code, malicious or not to run in there, trying to get root permissions or snoop on you.

Temporary storage directories such as /tmp, /var/tmp and /dev/shm provide storage space for malicious executables.
Crackers and hackers store executables in /tmp. Malicious users can use temporary storage directories to execute unwanted program and crack your server.

First because I forget, let’s bind /var/tmp to /tmp in /etc/fstab

Now we deal with /tmp only.

Update 28/03/2015: That practice was for many unstable and criticized also by many. Unfortunately for them, I was vindicated when even OpenBSD in the upcoming version does the same for the very same reasons. Security.

Security improvements:

  • /var/tmp is now a symbolic link to /tmp, as a first step towards reducing the “fill it up” attack surface against the /var partition.


If it’s a separate partition we only need a

If it’s not, we will create an image for it. The example is for 4GB, tune it as you like.

Modify /tmp line as follows:

You should to the same for shm:


Edit your /etc/fstab:
# nano /etc/fstab

“none /dev/shm tmpfs defaults,rw 0 0” to
“none /dev/shm tmpfs defaults,nosuid,noexec,rw 0 0”

Remount /dev/shm:
# mount -o remount /dev/shm
It should be fine now.

0 (0)
Article Rating (No Votes)
Rate this article
There are no attachments for this article.
There are no comments for this article. Be the first to post a comment.
Full Name
Email Address
Security Code Security Code
Related Articles RSS Feed
stunnel Howto A Guide to create SSL access to a HTTP-only webserver with stunnel
Viewed 750 times since Fri, Sep 28, 2018
LUKS List available methods of encryption for LUKS
Viewed 708 times since Fri, Jul 13, 2018
LVM: Rename root VG/LV
Viewed 1522 times since Sat, Jun 2, 2018
RHEL: Crash kernel dumps configuration and analysis on RHEL 7
Viewed 2158 times since Sat, Jun 2, 2018
VMWare tools free
Viewed 2406 times since Mon, Jul 16, 2018
BIND for the Small LAN
Viewed 1667 times since Sun, May 20, 2018
Check Detailed CPU Information In Linux With CoreFreq [Advanced]
Viewed 828 times since Thu, Apr 18, 2019
“Too many authentication failures” with SSH
Viewed 2623 times since Mon, May 21, 2018
How To Find Largest Top 10 Files and Directories On Linux / UNIX / BSD find
Viewed 659 times since Mon, Oct 29, 2018
RHEL: Multipathing basics
Viewed 1701 times since Sat, Jun 2, 2018