Security And

Security And

Security and Network Startup Resource Center Partially adopted from materials by These materials are licensed under the Creative Commons Attribution-NonCommercial 4.0 International license (http://creativecommons.org/licenses/by-nc/4.0/) Last updated 4 March 2018 Problem Statement: Security & ScienceDMZs Very large! Host-based security Network security Data Security How much ”security” do we need? Host-based security Overview – perfSONAR is built with security in mind – A few missing pieces, but included in docs – What about data, is it practical? Network Security Overview – DTNs as part of a ScienceDMZ – ScienceDMZ design includes: • Strong host-based security • Minimal host-based services • Use of ACLs not firewalls (in the network) • NIDs (Network Intrusion Detection systems) Securing data on DTNs: ACLs Aggressive access lists (network) – More useful with project-specific DTNs – Exchanging data with a small set of remote collaborators = ACL is fairly easy to manage – Large-scale data distribution servers = difficult/time consuming to handle (but then, the firewall ruleset for such a service would be, too) Limitation of the application set (host) – Makes it easier to protect – Keep unnecessary applications off the DTN (and watch for them anyway using a host IDS – take violations seriously) Securing data on DTNs: Network IDS Intrusion Detection Systems (IDS) – One example is Bro – https://www.bro.org/ – Bro is high-performance and battle-tested • Bro protects several high-performance national assets • Bro can be scaled with clustering: https://www.bro.org/sphinx/cluster/index.html • Other IDS solutions are available also Securing data on DTNs: Host IDS Using a Host IDS is recommended for hosts in a Science DMZ Several open source solutions have been recommended: • OSSec: https://ossec.github.io/ • Rkhunter: http://rkhunter.sourceforge.net/ • chkrootkit: http://www.chkrootkit.org/ • Logcheck: http://logcheck.org/ • Fail2ban: https://www.fail2ban.org/ • denyhosts: http://denyhosts.sourceforge.net/ ScienceDMZ ScienceDMZ Do we really need to go through all this trouble? “Big Data” vs. BIG Data One Biology experiment SnapChat Data produced at one Beamline by a team per day worldwide in 2016 of nine scientists: by millions of people = 38 TB = 114 TB (Photosystem II X-Ray Study) http://www.nature.com/articles/ncomms5371 10 – ESnet Science Engagement ([email protected]) - 3/4/18 Moving the BIG data w/ Firewall Inbound data transfer is filtered nuttcp -r -T 10 -i 1 -p 10200 bwctl.newy.net.internet2.edu 4.5625 MB / 1.00 sec = 38.1995 Mbps 13 retrans 4.8750 MB / 1.00 sec = 40.8956 Mbps 4 retrans 4.8750 MB / 1.00 sec = 40.8954 Mbps 6 retrans 6.4375 MB / 1.00 sec = 54.0024 Mbps 9 retrans 5.7500 MB / 1.00 sec = 48.2310 Mbps 8 retrans 5.8750 MB / 1.00 sec = 49.2880 Mbps 5 retrans 6.3125 MB / 1.00 sec = 52.9006 Mbps 3 retrans 5.3125 MB / 1.00 sec = 44.5653 Mbps 7 retrans 4.3125 MB / 1.00 sec = 36.2108 Mbps 7 retrans 5.1875 MB / 1.00 sec = 43.5186 Mbps 8 retrans 53.7519 MB / 10.07 sec = 44.7577 Mbps 0 %TX 1 %RX 70 retrans 8.29 msRTT 11 – ESnet Science Engagement ([email protected]) - 3/4/18 Moving the BIG data w/o Firewall Outbound data transfer not filtered nuttcp -T 10 -i 1 -p 10200 bwctl.newy.net.internet2.edu 92.3750 MB / 1.00 sec = 774.3069 Mbps 0 retrans 111.8750 MB / 1.00 sec = 938.2879 Mbps 0 retrans 111.8750 MB / 1.00 sec = 938.3019 Mbps 0 retrans 111.7500 MB / 1.00 sec = 938.1606 Mbps 0 retrans 111.8750 MB / 1.00 sec = 938.3198 Mbps 0 retrans 111.8750 MB / 1.00 sec = 938.2653 Mbps 0 retrans 111.8750 MB / 1.00 sec = 938.1931 Mbps 0 retrans 111.9375 MB / 1.00 sec = 938.4808 Mbps 0 retrans 111.6875 MB / 1.00 sec = 937.6941 Mbps 0 retrans 111.8750 MB / 1.00 sec = 938.3610 Mbps 0 retrans 1107.9867 MB / 10.13 sec = 917.2914 Mbps 13 %TX 11 %RX 0 retrans 8.38 msRTT Approximately 20-25 times performance improvement 12 – ESnet Science Engagement ([email protected]) - 3/4/18 On the open Internet • Public IPs • No firewall • Expectations of well-maintained hosts Scary! On the open Internet: Scary A few statistics… In 35 hours on our network on one host*: – 19,000+ attempted ssh logins – 350 different invalid user accounts tried – 17,500+ attempts against root account – 4 IP addresses accounted for most of the attempts – This with fail2ban throttling attempts over 1,920 times! *host = 134.164.48.209; dates = Feb 4 at 17:35 to Feb 5 at 04:35 On the open Internet… …What do you think might be the number one thing we can do or, perhaps, the most critical thing we can do to protect our hosts? What else? Host-based security strategies The usual suspects: – Authentication and access • Minimal access to minimal surface (users / services) – Minimal services – Minimal ports – Bind to localhost as appropriate – Auto updates – Consider host-based IDS – Log and log watching – Host-based firewall if needed • perfSONAR needs it and has it What’s running on your host? • firewall-cmd • netstat • systemctl • lsof • ps • top • Others? And, on your network? • Network Intrusion Detection systems (Bro) • Network flows (if possible without causing router slowdowns • Network monitoring tools – LibreNMS, flow tools (NfSen, etc.), check_mk, your favorite tool(s) • snmp properly configured and used What about ssh, passwords & keys? Configuring and using ssh incorrectly will guarantee a security compromise… The wrong way: – Using simple passwords for users – Allowing root to login with a password – In reality – allowing any login with a password The right way: – Disable all password access – Disable root access with password – Some disable root access completely Using ssh our way, so far For class we have compromised. Our way: – Allow user login with improved passwords – Allow root login with improved passwords Understanding password strength, see next slide…* *https://xkcd.com/936/ No passwords are better Proving identities with ssh keys CLIENT SERVER User's private key (+public) ~/.ssh/id_rsa User's public key ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys Server's private key (+public) Server's public key /etc/ssh/ssh_host_rsa_key ~/.ssh/known_hosts /etc/ssh_host_rsa_key.pub Improved password for workshop Method 1 (moderately strong, but not necessary) – 8 characters or more – Not a word in any language – A mix of numbers, upper and lower case – Include some punctuation characters Method 2 (stronger) – Use four words of 6 characters, or more – Use unrelated words Examples (do not use these!) 1. Tr0ub4dor&3 2. CorrectHorseBatteryStaple New NIST password guidelines https://www.passwordping.com/surprising-new- password-guidelines-nist/ • Some are surprised… • It’s about time! New US Government guidelines: 1. Remove periodic password change requirements 2. Drop the algorithmic complexity song and dance 3. Require screening of new passwords against lists of commonly used or compromised passwords ssh public and private keys Goal state: – Create a general user with sudo privileges – No password access allowed to hosts – Generate or use a private key and place your public key on your hosts. – Configure ssh on your hosts to only allow access via keys (no passwords) – Either turn off all access to root via ssh, or only allow root access via public / private ssh keys. Remember our earlier slide… “17,500+ ssh login attempts against the root account in 35 hours” References • Sample netstat usage: – https://www.thegeekstuff.com/2010/03/netstat-command- examples/ • perfSONAR firewall setup: – http://docs.perfsonar.net/manage_security.html • Using firewalld on CentOS: – https://linode.com/docs/security/firewalls/introduction-to- firewalld-on-centos/ • Firewalld documentation: – http://www.firewalld.org/documentation/ • Esnet ScienceDMZ overview: – https://fasterdata.es.net/science-dmz/science-dmz-security/ Questions?.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    28 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us