Thursday, August 29, 2019
Is3440 Project Part 1 Essay
First World Savings and Loan is a financial institution that processes credit card transactions and loan applications online. We are currently considering implementing an open source infrastructure. This could potentially save us over $4,000,000 per year in licensing fees for the software we are currently using. However, due to our business needs; we must still comply with the Sarbanes-Oxley Act (SOX), Payment Card Industry ââ¬â Data Security Standard (PCI-DSS), and the Gramm-Leach-Bliley Act (GLBA). We must comply with SOX, because we are a publicly-traded financial institution; PCI-DSS, because we process online credit card transactions; and GLBA, because we are a financial institution. All of the regulations of these three compliancy laws must be met, while still maintaining the Confidentiality, Integrity, and Availability (CIA) triad. All security requirements for SOX, PCI-DSS, and GLBA can be achieved using Linux and open source infrastructure. Some examples of open source software that we might use are: Web Server ââ¬â Apache Web Filtering ââ¬â DansGuardian Network Firewall ââ¬â Turtle Firewall VPN ââ¬â Endian Firewall Community IDS/IPS ââ¬â Suricata Database ââ¬â MySQL File Server ââ¬â Samba SMTP Server ââ¬â hMailServer I would recommend that we use a ââ¬Å"Defense in Depthâ⬠strategy, having multiple layers of access protection. We need to have an IDS/IPS on both sides of our edge firewall. The inside IDS/IPS will be used as additional protection for our network and the outside IDS/IPS will serve as an early warning system from attacks. We will also use the outside IDS/IPS for additional protection and to monitor what types of attacks are occurring. Our web server and mail server should be completely separated from the rest of our network in a de-militarized zone (DMZ). We need to have a network firewall between our DMZ and our internal network, between the outside world and our internal network, and between our DMZ and the outside world. There should also be a local firewall enabled on each local machine. Also, since our physical servers will be hosted at a third party location, we must have VPN access to these servers to manage them. All private data will need to be encrypted, as well as all data transitions. To go along with the previously mentioned physical and software based security measures, we will also apply multiple policies to maintain this security. Acceptable Useà Policy ââ¬â This policy will describe how the companies IT assets should and can be used. As well as what is not acceptable to do on company assets. Password Policy ââ¬â This policy will explain what parameters a password must meet to be accepted. For example; a password must be at least 15 characters long have at least on capital letter, have at least one lower case letter, have at least one number, and have at least on symbol. Privacy Policy ââ¬â This policy describes what information must remain confidential. Training employees on the proper way to use (and how NOT to use) company assets is a major key to ensuring the CIA triad remains intact and our network secure. In this part of the executive summary, I am going to be explaining, and making recommendations on what the best options are for the open source software that is needed for the management of the First World Savings and Loan financial instituteââ¬â¢s various web and application servers. F or each of the servers, I recommend using the Red Hat Enterprise Linux operating system for a number of reasons. The main ones being that it is one of the most secure, Itââ¬â¢s backed by years of technical support, Itââ¬â¢s supported by a vast number of different hardware, and It is one of the most, if not the most, popular and used server OSs that one can get today. I would rather go with software that has been vigorously tested to its breaking point and still remains at the top tier of server software options thatââ¬â¢s readily available today, than one that has just come out with all of the bells and whistles. So on that note, letââ¬â¢s get started on what I recommend to be the best of the best in terms of specific software and service needs. There are numerous great open source software solutions for database servers, like, H2, HyperSQL, MySQL, mysql, Oracle, and PostgreSQL, just to name a few. They all offer topnotch functionality, performance, scalability, and security. As far as which one is the best, I recommend PostgreSQL. PostgreSQL is an object-relational Database softwar e solution that offers some of the most feature rich options as compared to the bigger commercial manufacturers like Oracle, IBM, Sybase and Informix, and the best part of it, itââ¬â¢s free. Itââ¬â¢s also one of the first database software that was released, and it has a proven track record with over 23 years of active development. It was created back in 1989. The only other DB software that came out before it is Oracle, which was created back in 1979. Now PostgreSQL might not be the fastest, but It more than makes up for it with its functionality. It allows the use of twoà different types of interfaces, a GUI (for those who like the point-click style) and a SQL. It works on most OSs like windows, Linux, Mac, Unix, etc. It has a vast array of services and tools that is included to streamline the administration of the Database. Here are just some examples; Full ACID (Atomicity, Consistency, Isolation, & Durability) compliancy, commercial & noncommercial support, triggers support, user defined data type support, stored procedure support, online backup, multiple index type input support, embedded access controls, encryption, etc. Here is a comparison of the top DB software available I got from the unbiased, data-driven comparison website; www.findthebest.com/database-management-sytems: ââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬â ââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬â- Specifications Product | MySQL | Oracle | PostgreSQL | Architecture | Relational Model | Relational Model | Object-relational Model | Software License | * GPL * PostgreSQL * Proprietary | * GPL * PostgreSQL * Proprietary | * GPL * PostgreSQL * Proprietary | Operating System | * Windows * Mac OS X * Linux * UNIX * z/OS * BSD * Symbian * AmigaOS | * Windows * Mac OS X * Linux * UNIX * z/OS * BSD * Symbian * AmigaOS | * Windows * Mac OS X * Linux * UNIX * z/OS * BSD * Symbian * AmigaOS | Demo? | | ââ¬â | | Interface | * GUI * SQL | * GUI * SQL | * GUI * SQL | Website | MySQL (mysql.com) | Oracle (oracle.com) | PostgreSQL (postgresql.org) | First Public Release Year | 1995 | 1979 | 1989 | Lastest Stable Version | 5.5.19 | 11g Release 2 | 9.1.3 | ââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬â- -Price Price | $0 | $180 | $0 | Purchase Page | MySQL (https) | Oracle (https) | ââ¬â | ââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬â- -General Features Features | * ACID * Backup * Custom Functions * Database Imports * Export Data * Extensibility * High Availability * Highly Scalable * Import Data * Java Support * Multi-Core Support * See moreâ⬠º | * ACID * Backup * Custom Functions * Database Imports * Export Data * Extensibility * High Availability * Highly Scalable * Import Data * Java Support * Multi-Core Support * See moreâ⬠º | * ACID * Backup * Custom Functions * Database Imports * Export Data * Extensibility * High Availability * Highly Scalable * Import Data * Java Support * Multi-Core Support * See moreâ⬠º | Indexes | * Bitmap * Expression * Full-text * GIN * GiST * Hash * Partial * R-/R+ Tree * Reverse | * Bitmap * Expression * Full-text * GIN * GiST * Hash * Partial * R-/R+ Tree * Reverse | * Bitmap * Expression * Full-text * GIN * GiST * Hash * Partial * R-/R+ Tree * Reverse | Database Capabilities | * Blobs and Clobs * Common Table Expressions * Except * Inner Joins * Inner Selects * Intersect * Merge Joins * Outer Joins * Parallel Query * Union * Windowing Functions | * Blobs and Clobs * Common Table Expressions * Except * Inner Joins * Inner Selects * Intersect * Merge Joins * Outer Joins * Parallel Query * Union * Windowing Functions | * Blobs and Clobs * Common Table Expressions * Except * Inner Joins * Inner Selects * Intersect * Merge Joins * Outer Joins * Parallel Query * Union * Windowing Functions | Partitioning | * Composite (Range + Hash) * Hash * List * Native Replication API * Range * Shadow | * Composite (Range + Hash) * Hash * List * Native Replication API * Range * Shadow | * Composite (Range + Hash) * Hash * List * Native Replication API * Range * Shadow | Access Control | * Audit * Brute-force Protection * Enterprise Directory Compatibility * Native Network Encryption * Password Complexity Rules * Patch Access * Resource Limit * Run Unprivileged * Security Certification | * Audit * Brute-force Protection * Enterprise Directory Compatibility * Native Network Encryption * Password Complexity Rules * Patch Access * Resource Limit * Run Unprivileged * Security Certification | * Audit * Brute-force Protection * Enterpr ise Directory Compatibility * Native Network Encryption * Password Complexity Rules * Patch Access * Resource Limit * Run Unprivileged * Security Certification | Tables and Views | * Materialized Views * Temporary Table | * Materialized Views * Temporary Table | * Materialized Views * Temporary Table | Other Objects | * Cursor * Data Domain * External Routine * Function * Procedure * Trigger | * Cursor * Data Domain * External Routine * Function * Procedure * Trigger | * Cursor * Data Domain * External Routine * Function * Procedure * Trigger | Support Features | * Email * FAQ * Forums * Live chat * Mailing List * On-site * Phone * Tips and hints * White papers | * Email * FAQ * Forums * Live chat * Mailing List * On-site * Phone * Tips and hints * White papers | * Email * FAQ * Forums * Live chat * Mailing List * On-site * Phone * Tips and hints * White papers | ââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬â- -Product Description Product Description | MySQL is a relational database management system (RDBMS) that runs as a server providing multi-user access to a number of databases. MySQL is officially pronounced /maà ªÃÅ'Ãâºskjuà ÃËÃâºl/ (ââ¬Å"My S-Q-Lâ⬠), but is often also pronounced /maà ªÃËsià kwÃâ¢l/ (ââ¬Å"My Sequelâ⬠). It is named for original developer Michael Wideniusââ¬â¢s daughter My. | Oracle Database 11g Release 2 provides the foundation for IT to successfully deliver more information with higher quality of service, reduce the risk of change within IT, and make more efficient use of their IT budgets. By deploying Oracle Database 11g Release 2 as their data management foundation, organizations can utilize the full power of the worldââ¬â¢s leading database to:ï⠷ Reduce server costs by a factor of 5ï⠷ Reduce storage requirements by a factor of 12ï⠷ Improve mission critical systems performance by a factor of 10ï⠷ Increase DBA productivity by a fa ctor of 2ï⠷ Eliminate idle redundancy in the data center, andï⠷ Simplify their overall IT software portfolio. | PostgreSQL is a powerful, open source object-relational database system. It has more than 15 years of active development and a proven architecture that has earned it a strong reputation for reliability, data integrity, and correctness. It runs on all major operating systems, including Linux, UNIX (AIX, BSD, HP-UX, SGI IRIX, Mac OS X, Solaris, Tru64), and Windows. It is fully ACID compliant, has full support for foreign keys, joins, views, triggers, and stored procedures (in multiple languages). It includes most SQL:2008 data types, including INTEGER, NUMERIC, BOOLEAN, CHAR, VARCHAR, DATE, INTERVAL, and TIMESTAMP. It also supports storage of binary large objects, including pictures, sounds, or video. It has native programming interfaces for C/C++, Java, .Net, Perl, Python, Ruby, Tcl, ODBC, among others, and exceptional documentation. | ââ¬âââ¬âââ¬ââ⠬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬â- -Contact Information Contact Link | MySQL (mysql.com) | Oracle (oracle.com) | PostgreSQL (postgresql.org) | Phone | 1 (866) 221-0634 | 1 (800) 392-2999 | ââ¬â | ââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬â- -Limits Max Blob/Clob Size | 4 GB | Unlimited | 1 GB (text, bytea) ââ¬â stored inline or 2 GB (stored in pg_largeobject) | Max CHAR Size | 64 KB (text) | 4000 B | 1 GB | Max Column Name Size | 64 | 30 | 63 | Max Columns per Row | 4096 | 1000 | 250-1600 depending on type | Max DATE Value | 9999 | 9999 | 5874897 | Max DB Size | Unlimited | Unlimited | Unlimited | Max NUMBER Size | 64 bits | 126 bits | Unlimited | Max Row Size | 64 KB | 8KB | 1.6 TB | Max Table Size | MyISAM storage limits: 256TB; Innodb storage limits: 64TB | 4 GB | 32 TB | Min DATE Value | 1000 | -4712 | -4713 | ââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬âââ¬â- -Data Types Type System | * Dynamic * Static | * Dynamic * Static | * Dynamic * Static | Integer | * BIGINT (64-bit) * INTEGER (32-bit) * MEDIUMINT (24-bit) * NUMBER * SMALLINT * SMALLINT (16-bit) * TINYINT (8-bit) | * BIGINT (64-bit) * INTEGER (32-bit) * MEDIUMINT (24-bit) * NUMBER * SMALLINT * SMALLINT (16-bit) * TINYINT (8-bit) | * BIGINT (64-bit) * INTEGER (32-bit) * MEDIUMINT (24-bit) * NUMBER * SMALLINT * SMALLINT (16-bit) * TINYINT (8-bit) | Floating Point | * BINARY_DOUBLE * BINARY_FLOAT * DOUBLE (64-bit) * DOUBLE PRECISION * FLOAT * REAL | * BINARY_DOUBLE * BINARY_FLOAT * DOUBLE (64-bit) * DOUBLE PRECISION * FLOAT * REAL | * BINARY_DOUBLE * BINARY_FLOAT * DOUBLE (64-bit) * DOUBLE PRECISION * FLOAT * REAL | Decimal | * DECIMAL * NUMERIC | * DECIMAL * NUMERIC | * DECIMAL * NUMERIC | String | * CHAR * NCHAR * NVARCHAR * TEXT * VARCHAR | * CHAR * NCHAR * NVARCHAR * TEXT * VARCHAR | * CHAR * NCHAR * NVARCHAR * TEXT * VARCHAR | Binary | * BFILE * BINARY * BINARY LARGE OBJECT * BYTEA * LONGBLO B * LONGRAW * MEDIUMBLOB * RAW * TINYBLOB * VARBINARY | * BFILE * BINARY * BINARY LARGE OBJECT * BYTEA * LONGBLOB * LONGRAW * MEDIUMBLOB * RAW * TINYBLOB * VARBINARY | * BFILE * BINARY * BINARY LARGE OBJECT * BYTEA * LONGBLOB * LONGRAW * MEDIUMBLOB * RAW * TINYBLOB * VARBINARY | Date/Time | * DATE * DATETIME * TIME * TIMESTAMP * YEAR | * DATE * DATETIME * TIME * TIMESTAMP * YEAR | * DATE * DATETIME * TIME * TIMESTAMP * YEAR | Boolean | * BOOLEAN * Unknown | * BOOLEAN * Unknown | * BOOLEAN * Unknown | Other | * ARRAYS * AUDIO * BIT * CIDR * CIRCLE * DICOM * ENUM * GIS data types * IMAGE * INET * MACCADDR * See moreâ⬠º | * ARRAYS * AUDIO * BIT * CIDR * CIRCLE * DICOM * ENUM * GIS data types * IMAGE * INET * MACCADDR * See moreâ⬠º | * ARRAYS * AUDIO * BIT * CIDR * CIRCLE * DICOM * ENUM * GIS data types * IMAGE * INET * MACCADDR * See moreâ⬠º | I think itââ¬â¢s pretty obvious that the data speaks for itself. You canââ¬â¢t get any better option unless you want to pay big money for these specific services. When it comes to deciding on which open source web server software to utilize, there are a lot of different options, such as, Apache, LightTPD, NGiNX, Boa, Cherokee, etc. The one that stands out the most is Apache. Apache is the most popular web server to date. It is the leading web server that is used most over all others including open source and non-open source options, such as, Microsoftââ¬â¢s IIS, Googleââ¬â¢s proprietary custom servers, NGiNX, AOL, IBM, etc. according to the website www.makeuseof.com. Here is a graph table I found (itââ¬â¢s a little dated) to give you an idea: Apache is the leader because of its functionality, performance, price (itââ¬â¢s free), stability, and security. It has top notch cross-plat forming capabilities so it can be used on numerous operating systems like, Microsoftââ¬â¢s Windows platform, Linux and UNIX based platforms, Macintosh platforms, BSD platforms, IBM platforms, HP platforms, etc. It can basically run on just about all OS platforms. This is ideal in todayââ¬â¢s ever evolving business needs and requirements. Some of the best features that an Apache web server offers are as follows: Basic access authentication & digest access authentication, SSL/TLS HTTPS, virtual hosting, CGI, FCGI, SCGI, Java, SSI, ISAPI, runs in user space versus kernel space, Administration console, and IPv4 & IPv6 addressing. Now these are just some of the feature sets that Apache uses. It helps that most, if not all, of these features are security based; which is most important when dealing with IT in any aspect of todayââ¬â¢s business world and society itself. There are a lot of different options when it comes to file servers. Some examples are, FileZilla, Samba,à HFS, TurnKey, Cerberus, VSFTPD, etc. As far as whatââ¬â¢s the best file server software options it boils down to the companyââ¬â¢s needs. I recommend using Samba or FileZilla for a number of reasons. Samba has over 20 years of development and FileZilla has over 10 years of development, They both offer amazing cross-plat forming capabilities on several different operating systems, They are both pretty easy to setup and administer, they both offer great security, and best of all they are free. This is extremely important for a modern business. Also the fact that they are free helps in cutting down company costs and drives up financial gains throughout the entire company. Plus, Samba speaks natively with Microsoft Windows machines and these are typically what most end users use for their operating systems. Now for the open source SMTP server software I recommend using iRedMail. iRedMail offers two different options, iRedMail (which is free) & iRedMailPro (which is a paid version for $299 per server per year) with amazing fully fledged features. The feature include: blazing fast deployment (less than 1 minute), easy to use, security and stability, mind-blowing productivity (uses a very little resources to run), top notch support, absolute control over data (all personal data is stored on companyââ¬â¢s hard disk versus some third party storage medium), supports virtualization and non-virtualization software (VMware, Xen, VirtualBox, KVM, OpenVZ, etc. with i386 and x86/x64/ amd64 compatibility), low maintenance, unlimited accounts, stores mail in openLDAP, MySQL, and PostgreSQL, Service and access restrictions, throttling, Anti-Spam & Anti-Virus by de fault, Webmail, backup support, and security (forced password change policy for every 90 days, uses SSL/TLS connections for sending and receiving mail, etc.). The support offered for iRedMail is among the best and in the business world, this is a must. The LDAP server I recommend is Red Hat Directory Server because it offers some of the best features to date. Itââ¬â¢s also has some of the best support in the business. It has an amazing reputation as well. Here is a list of the features that it offers: cost-savings, tremendous scalability (Allows 4-way multimaster replication of data across the entire enterprise while providing centralized, consistent data, and allows extranet applications), enhanced security (provides centralized, fine-grained access controls, and utilizes strong certificate-based authentication & encryption.), and amazing productivity (centralizes user identity andà applications for ease of access for administration), you canââ¬â¢t go wrong with using softw are from a nationally known and reputable company like Red Hat Linux. Each user will be put into groups; this will be done to control access to the file system. Each user on the network will have to meet the standards below. Having each user in groups will help manage them, and what they have access and are allowed to do on the server. Each user will have their own partitioned /home directory to reduce impact of the file system. No user should be without a group, any users without groups will only have access to only their home directory. The following is the password policy they will be using: User account Standard users: Restrict reuse of passwords to once per 18 months Set min day for password expire Set max day for password expire every 30 days Set password complexity to require 1 capital letter, 1 lower case letter, 1 number, 1 symbol and must be at least 15 characters long Enforce password policies Ensure all users do not have access to sudo, or su rightsà Create groups for all users, and give them allow sups or admins to maintain rights to those groups, and allow them specific path use on sudo (only if needed). This will allow users to access the data they need to complete their jobs. Also with this password system in place, it will ensure they do not use simple passwords or recycle passwords too often. Super users: Rights to manage groups Specific path use of sudo Restrict reuse of passwords Set min day for password expire Set max day for password expire Set password complexity Enforce password policies These will help super users to manage groups and have access to the tools that they need. This also prevents the users from having too much access to the systems. This helps the admin manage groups by allowing them to move users into the correct group or give them access to specific files that they may need access to. Su will only be used by top level admins, and only if something is truly not working. Lower level admins will have sudo access to files they need to have access to. Users will only have read/write access to the files they need access to; the rest will be read only access. Kernel will be locked down and will need admin permission to access. Passwd file will not be accessible by anyone other than top level admins Firewall and iptables will only be accessible by top level admins and super users. Configuring our network in this manner and applying these user access control permissions will cost less money and add a greater level of security. Using this ââ¬Å"Defense in Depthâ⬠strategy, we will have multiple layers of security that an attacker will have to penetrate to break the CIA triad.
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment
Note: Only a member of this blog may post a comment.