This course covers Linux Command line and Shell scripting using BASH. The topics covered are primarily targeted at automating system administration tasks, workflow automation, and security. Students will explore managing user accounts, remote access using secure shell (SSH), process control, file system types and characteristics, encryption & decryption, file and directory manipulation, remote & local storage, system monitoring & logging, hardware status & configuration, and the contents of key configuration files that configure security, networking the boot process, scheduling, & applications. Students will write and test programs to monitor users, system status, and detect security violations & events.

This course covers three command line and shell scripting platforms; Linux/Apple BASH shell, AppleScript, and the Windows command line. The bulk of the material involves the BASH shell with examples from other platforms. BASH runs natively on Linux, BSD, and Apple OS X. Linux compatible systems are capable of running other shells. The topics covered are primarily targeted at automating system administration tasks, workflow automation; arid the skill sets for Linux, OS X, and Windows system administrators or advanced users. Some simple PERL and Python scripts may be introduced for parsing of system, network, and security logs to produce activity reports. Topics include logging in and logging out of the user accounts, remote access using secure shell (SSH), process control, file system commands, file system types and characteristics, encryption and decryption commands, file and directory permissions, user and group security, access to removable and remote storage, remote access to heterogeneous systems, system monitoring and logs, system editors such as vi and nano, moving files through the network securely, hardware status and configuration commands, system log rotation and reporting, and the contents of key configuration files that configure the security, networking, the boot process, scheduling, and applications. 

In this course the student will learn the fundamentals of programming using the Python language. Python is used as a scripting language on Linux and as a scripting language for some applications that run on Linux. CSE-160 is also suitable to those that want some introductory Linux programming experience. This course is intended as an introduction to the core principles of programming. CSE-160 is recommended as a first course in programming for novice programmers before attempting C, C++, and Java. CSE-160 concentrates on basic principles of program design, structured programming, objects, and debugging. Using basic version control and testing for quality control will be covered. Some programs can be run on an embedded system as the Raspberry Pi to demonstrate the principles surrounding the Internet of Everything (IOE).

This course will show the student how to plan the network infrastructure around features supported by Windows Server 2016. Issues such as network protocols and services are compared based on the requirements of the company or organization. In addition, the importance of the Transmission Control Protocol/Internet Protocol (TCP/IP) for enterprise networks is emphasized. This includes using Domain Name System (DNS), Hyper-V, PowerShell, Group Policy, Dynamic Host Configuration Protocol (DHCP) and Active Directory. The student will also learn how to configure, manage, secure, and troubleshoot features and services for operating systems, including routing and remote access, file services, print services, updating and storage.

Topics include security management practices, access control systems, telecommunications and network security, public and private key cryptography, security concerns for application and software development, business continuity planning and disaster recovery planning. Students will be able to select and use cryptographic tools to secure data, examine firewall settings, use & verify common cryptographic hash signatures, and create signed files. Target skills are the creating and maintenance of a security plan, the system administrator’s responsibilities to implement the plan, techniques and tools to audit and monitor security, threat analysis, and increasing security awareness. An overview of the current security certifications and their requirements will be given at the end of the class.

Information and Storage Management (ISM) moves beyond simple hard drive storage to the technology necessary to increase the reliability and flexibility for modern data centers. Course coverage includes data de-duplication, unified storage, continuous data protection technology, virtual provisioning, FCoE, flash drives, tiered storage, big data, and more. Details storage models such as RAID, Network Attached Storage (NAS), Storage Area Network (SAN), tape backup, and backup strategies. Virtualization at various infrastructure components is explored. Examines Business Continuity and Security in physical and virtualized environment. ISM may be taken before or after Virtualization using VMWare ESXi Server.

Topics in Virtualization using VMWare ESXi Server explore the use of server virtualization in the modern data center and are centered around the VMWare Certified Professional certification exam. This course explores installation, configuration, and management of VMWare vSphere, which consists of ESXi and vCenter Server starting with basic concepts, the business case for virtualization, through installation and configuration, and management of virtual servers.

This class provides the student with the wide spectrum of topics starting from Classic Data Center to IT as-a-Service. Topics include cloud deployment and service models, cloud infrastructure, private clouds, public clouds, security and the key considerations in migrating to cloud computing. The core of the course concentrates on the EMC Cloud Infrastructure and Services (EMCCIS) certification exam objectives. The U.S. National Institute of Standards and Technology definitions of cloud computing are used as a guide. We will examine some simple commercial cloud services and then more complex examples in commercial systems such as Amazon Web Services (AWS) and the IBM BlueMix cloud platform.

This course covers common server applications frequently found on Linux, BSD, and Unix servers. Application server technologies typically form the foundation for more complex information technology systems that require server databases, web servers, virtualization, and security monitoring software. Best security practices will be introduced throughout the course with the goal of building a system ready for deployment on the public internet. Topics of study include firewalls (iptables), database servers (MySQL,SqLite), web servers (Apache, Nginx), content management systems (Joomla, Wordpress), file sharing services (Samba,NFS), installing Docker virtualization containers, Common Unix Printing (CUPS), and server-side web technology (PHP). Students will install and configure the core Linux Server operating system, add the middleware necessary to support the applications, create a backup and recovery process, then install and configure the server applications. Students will be expected to install, configure, and secure their servers in lab. We stress the best practices for system administration, system security, backing up critical data, and system monitoring. No prior experience with databases, web servers or html is necessary. Linux command line and general Linux experience are expected.