Difference between revisions of "Talk:Security"
(→Todo: ssh covered)
(→Todo: TMOUT covered)
|Line 6:||Line 6:|
Revision as of 10:24, 31 March 2014
- Update "Lockout user after three failed login attempts", file mentioned no longer contains those lines ?
- descriptions/rationale for all the links to other articles (MAC)
- base64 /dev/urandom | dd bs=1 count=10 2>/dev/null
- use (enhanced?) ACL on partitions
- sudo timeout
- Securely Wipe HDD
- Using File Capabilities Instead Of Setuid
- VNC, proxies, ssl, etc
- browser security (requestpolicy, noscript, sand-boxing browser)
- stack protector gcc flag: Put some text in the page indicationg Archlinux has it by default (See: FS#18864)
- document hidepid mount option
- run services as non-root (mention that Arch does this where possible by default - but it needs improvement via feature requests)
- run services in clean namespaces
- run services in chroots
- mention issues with sudo (any X11 application can grab the password, and it is a large setuid binary with potential vulnerabilities)
CentOS Wiki OS Protection Article
This seems to be a good article to cross-reference or to use as a basis to pull in more content here. CC BY SA rights so I suspect it is compatible with the Arch Wiki. http://wiki.centos.org/HowTos/OS_Protection
I am hoping to pull some content in myself, but I am by no means a security guy. I figured some wiser heads might be able to make better use of it than I or correct any mistakes I might make while attempting to contribute.
- Of course the information itself is not licensed/licenseable, however the way it is presented is, so you either study the original article and present the same information here in an original way, or you actually adapt some content from that article, but in that case the licence clearly states that you have to credit the original authors, and I guess you can do it by mentioning the original article in the Summary of your edits, and adding a link to Security#See also.
- Just as a clarification, I know that Help:Style#Hypertext metaphor states "If the upstream documentation for the subject of your article is well-written and maintained, prefer just writing Arch-specific adaptations and linking to the official documentation for general information", however in this case we can't talk about "upstream documentation", that's why the rule doesn't apply and duplication of information is allowed, being CentOS's and Arch's wikis on the "same level" with respect to the information provided.
- -- Kynikos (talk) 02:33, 3 August 2013 (UTC)
- Let's first compare the sections in the two articles and see how they relate:
- Modifying fstab -> Security#Partitions.
- Package installs -> We have Security#Authenticating_packages and a note at the bottom of Security#Partitions.
- Physical protection -> Security#Physical_security
- Restricting root -> We have Security#Use_sudo_instead_of_su which is a good start, but does not mention Ssh#Deny_root_login. File system permissions on
/root, which I think by default are not
700(they should be) should be added to Security#Filesystem permissions.
- Umask restrictions -> We should talk about
umaskin Security#Filesystem permissions.
- Pam modifications -> Realtime process management, a wiki page in desperate need of editing.
- Reaping idle users -> We should cover this in Security#User_setup.
- Restricting cron and at -> We have no equivalent.
- Wireless has to go -> Maybe worth talking about, but this is low-priority unless we are willing to write a more detailed section called "Wireless security" that is about more than just "turn off wireless."
- Sysctl Security -> Covered in Sysctl#TCP/IP stack hardening, maybe we should just link to this.
- Using TCP Wrappers -> I could not find anything on ArchWiki discussing general security practices for
- Beefing up IPTables -> Should be adapted into Iptables, but perhaps Simple Stateful Firewall (an article that has good information, but I am not sure if its name makes sense).
- Tamper Resistance -> We should have a section on logging in general and incorporate tools like this, probably.
- Comments highly appreciated.
- -- Ndt (talk) 05:09, 3 August 2013 (UTC)
- Let's first compare the sections in the two articles and see how they relate:
We now have three sections devoted only to Grsecurity. What can we do about this?
The addition of Security#Grsecurity RBAC seems to be redundant. However, I agree that "RBAC" is a better name for Grsecurity's MAC implementaiton than Security#Access Control Lists. In technical terms ACLs are a subset of RBAC and Grsecurity implmeents both. The Grsecurity patchset only had ACLs[PDF] back in 2005, and the cited case study mentions (it also refers to SELinux as a RBAC implementation, so perhaps SELinux should also be mentioned there):
- This implementation of ACLs creates a form of process-based mandatory access control. It is possible to restrict what a process can and cannot do. Additionally, access can be restricted to an object for any user, even root. Further, these restrictions cannot be changed by normal users. The system will soon offer role-based access control as well.
Probably the right solution for this is:
- Rename Security#Grsecurity RBAC to Security#Role-Based Access Control.
- Discuss both SELinux/Grsecurity implementations there. There is no need for the RBAC section to be Grsecurity-specific.
- I think it is best to give general recommendations here rather than something like "install Grsecurity to make your kernel secure".
- The right solution is probably to expand Security#Kernel Hardening and discuss Wikipedia:PaX and whatnot more generally, mentioning Grsecurity as an implementation.
- I do think Security#Kernel Hardening should probably be moved lower on the page, closer to Security#Mandatory access control/Security#Network and Firewalls/Security#Authenticating packages since that seems to better suit the logical flow of the article.
- I can't comment on the content since I don't know much about it, but allow me to add some notes:
- The different security models (RBAC, MAC, DAC, ACL, ...) should be compared/described separately from the individual implementations (SELinux, Tomoyo, AppArmor, ...). Meaning there should be separate sections for each group, but mainly "RBAC is significantly faster then SELinux." does not make much sense.
- There should always be provided alternatives, not just 1:1 mapping (like in case of RBAC and Grsecurity).
- Descriptions of both groups can be provided from multiple perspectives. From my experience, in these situations a comparison table is often the best solution.
- I'm not sure about the Security#Kernel Hardening section, should it focus only on security options that require patching the Arch kernel, or also those included in Arch kernel but not activated?
- I hope it makes sense...
- -- Lahwaacz (talk) 22:09, 4 September 2013 (UTC)
- +1, also on mentioning the other options. I further agree with Ndt, moving Security#Kernel Hardening down to below (or above?) Security#Mandatory_access_control and merging the bits for Security#Kernel_parameters into it is better flow, then any other options that are avail without patching into it, followed by PAX and the existing Grsecurity so those get mentioned just before MAC. If someone wants to work on that: I like the comparison/table here maybe it gives some inspiration how to expand. If not, maybe good for See also. (further comparisons are at the bottom of the link). --Indigo (talk) 18:05, 5 September 2013 (UTC)
Nobody as script user
Systemd/cron_functionality#The_pkgstats_service article says that it is better to use
noboby for some tipe of scripts. Is there any person who can explain further and add a note in this article?
- Following the principle of least privilege it is logical to run as many scripts as possible as an unprivileged user. But this is not possible always, e.g. when the script needs (write) access to some file(s) to function properly, you need to provide those privileges. -- Lahwaacz (talk) 13:32, 13 September 2013 (UTC)