Okay, stop.
extremoburo wrote:
SELINUX: Attacks coming from Internet could exploit a bug of sshd or whatever..
That's not a valid reason to use SELinux, and that's not SELinux's job. Period. Why not take responsibility for your server's security (instead of relying on code that is difficult to audit), like this:
Code:
Chain TCP_IN (1 references)
pkts bytes target prot opt in out source destination
21 1016 SSH tcp -- any any anywhere anywhere tcp dpt:ssh
Chain SSH (1 references)
pkts bytes target prot opt in out source destination
2 104 ACCEPT all -- any any home-connection anywhere
0 0 ACCEPT all -- any any work-connection anywhere
19 912 DROP all -- any any anywhere anywhere
Restricting SSH access to hosts you've designated (whitelisting) completely eradicates a 0-day attack, because the packets will not even make it to sshd to exploit it. This is planning ahead. More steps to secure sshd (just in case):
Code:
# cat /etc/ssh/sshd_config
PasswordAuthentication no
PermitRootLogin no
If you want to get
really secure, take the approach some other customers have and VPN to your Linode using something like OpenVPN. Then, only allow SSH and other security-critical processes to talk to clients that are connected to your VPN. This is all stuff you can do without SELinux, all tried and tested, and doesn't rely upon code the U.S. NSA has written.
You seem to paint SELinux as a flip-the-switch solution that will automatically make all the security ills of server administration magically disappear, and that is most certainly not the case. The
thread you referenced, awstats.pl exploitation, is another case of this; had awstats.pl been password-protected or given a whitelisting setup (like SSH above), this attack would have
never happened. Other comments in the thread even pointed that out. SELinux is not the only solution to this specific problem, and in fact would be the most difficult of the administrator's choices.
I don't mean to be harsh, but SELinux is designed for a specific application domain and many leaders of the Linux community, including Ted T'so, have spoken out against it. What it most certainly is
not is a substitute for proper systems administration and security auditing. You need to educate yourself and not rely upon someone else's code to keep you safe on the Internet. Proper security work just requires some brainpower and thinking ahead, that's all, and Google is right there for you.
If you can show me one case where SELinux would have been the
only way to prevent an exploit I'll rethink this argument, but good luck.
Quote:
linode should take into account that some people may like to use it therefore enabling the kernel support is a good choice.
You can't compile? Other people have, see
here.