====== 002 ====== # Linux course syllabus --- ## Beginner / Session 02 ### Getting Help * man, info * whereis, apropos, man -k * whatis, makewhatis * /usr/share/doc ### Disks, Partitions and Filesystems * mount / umount / eject , (cdrom, usb) , fstab * hdparam * df -hT * fdisk / gdisk * LVM / RAID * du -hscS * ncdu / gdu * dd / Duplicating Disks ### Bash Shell * history * xargs * Shell Variables (PATH, TMOUT) * piping / tee * screen * tmux * TMOUT * PS1 ### Bash Scripting * echo * variables (local/global/environment) * redirection * pipe * math * read user input * return / exit * if then fi else elif (nesting/logical operators) * test command (grep -q) * case * for / while / until (nesting/logical/read databa files/read line) * parameters * shift * parsing options * mktemp * logger * signals * background job (run/control) * niceness * functions (return value/variables/parameters/run in commandline) * array * function recursion * library * menus * windows * sed / awk / gawk / grep / regex / extented regex / pcre * manipulating text * cut * tr ### sed ### gawk ### regex / pcre ### Monitoring * vmstat / iostat / iotop ### Internet * wget / curl ### Networking * ip command reference: http://linux-ip.net/gl/ip-cref/ * ip route command reference by example: https://yurisk.info/2016/12/19/linux-ip-route-command-reference-by-example/ * ping / traceroute / ttl / mtr / fping * mii-tool / ethtool / watch * IP Forwarding (temporary, permanent) * Bonding / etherchannel / Portchannel / LACP * Source NAT * Static Routing (temporary, permanent) * netstat -nlp -tunapo ### User Management * useradd -m -s / adduser * userdel -r / usermod * groupadd / groupmod / groupdel * vigr / vipw * chage / chgrp / chsh * id -u -g * whoami / w / last * su / sudo / sudoers / visudo * /etc/shadow /etc/group ### FHS / Filesystem Hierarchy Standard * https://refspecs.linuxfoundation.org/fhs.shtml * https://refspecs.linuxfoundation.org/FHS_3.0/fhs-3.0.pdf * https://www.debian.org/doc/packaging-manuals/fhs/ * https://www.pathname.com/fhs/ (OLD) ### Kernel ### Service management * bsd style * sysv init * systemd ### Servers and Clients * DHCP Server (range, fixed-address) * DNS Server - Caching Recursive, stub resolver: bind, unbound, DJBdns(dnscache,tinydns) * dnscap, dnscrypt, dnstop * Web server * FTP server * NFS * Samba server / Print server ### Other Linux Package Management * yum * pkgtool, slackpkg, slapt, sbopkg, * Source code compile * epkg / encap #### SSH * SSH Server * ssh client, putty / scp/ winscp * rsync * tunnel * sshfs ### Security ### Cloud * Container * Ansible * Kubernetis ### Cluster
  • NFS: Network Filesystem
  • Open-iSCSI
  • RFC/BCP: rfc1818
  • PPPOE Client / Dialup
  • jdate,jcal
  • epkg / encap
  • ipcalc
  • Cache Server: squid (transparent)
  • logrotate / syslog / rsyslog / syslog-ng
  • Firewall: Stateless, Statefull
  • Filesystem Hierarchy Standard : https://refspecs.linuxfoundation.org/fhs.shtml /proc /sys
  • regex / pcre / egrep
  • sed: stream editor
  • awk
  • Web Server: apache, php, lighttpd/ nginx, php-fpm
  • Apache: htaccess, htpasswd / Nginx
  • openssl / https
  • Database Server: mysql, postgres ,redis
  • phpmyadmin
  • wordpress / drupal / joomla
  • MS-SQL: FreeTDS / UnixODBC
  • SNMP Server: net-snmp
  • Scheduling: crontab / atd / anacron
  • smokeping
  • ntpdate / ntpd / chronyd / hwclock
  • Bandwidthd
  • Zabbix
  • Cacti
  • Nagios
  • collectd
  • git
  • minicom
  • Traffic Control: tc, htb, iptables, lartc.org
  • Policy Routing: ip rule, ip route, iptables
  • Bridge: brctrl
  • Proxy ARP
  • DNS Server - Authoritative, forward-only, master/slave : bind
  • Dynamic DNS: ISC DHCP, BIND
  • dnsmasq
  • Squid: tproxy, wccp
  • Super Server / inetd / xinetd
  • telnet Server
  • tftp Server
  • ftp server: pureftpd, proftpd
  • ftp client: ncftp, lftp
  • Socks Server: dante
  • Quagga: OSPF / BGP / RIP / IS-IS
  • vrrp / keepalived
  • Configuration management: Chef, Puppet, Ansible, SaltStack ,CFEngine
  • data-serialization formats: YAML, XML, JSON
  • Kernel Upgrade
  • Lilo / Grub / Syslinux
  • init / systemd / run level / sysV
  • ACL / getfacl / setfacl / chattr
  • Network Scanning: nmap
  • webmin
  • mc / ranger
  • VLAN management: vconfig
  • Bridge: ebtables, arptables, arp, arping
  • Network Access Server: Radius Server (freeradius), VPN Server(poptop / pptpd), PPPOE Server
  • OpenVPN/ vtund / l2tp/ ipsec / iptunnel
  • Dark Web: Tor / Tor-Browser / Tails
  • cryptocurrency : Blockchain/mining/ wallet/ Bitcoin, Ethereum
  • Samba / openldap / kerberos / SMB,CIFS / NIS
  • lxc / docker / kvm / libvirt / xen / qemu
  • HAProxy: TCP/HTTP Load Balancer
  • varnish
  • Kubernetes: automating deployment, scaling, and management of containerized applications
  • Perl / CGI
  • Python / Django
  • Ruby / Rails
  • IPv6 / HTTP/2 / QUIC
  • Infrastructure as code (IaC): terraform
  • Prometheus
  • Grafana / Graphite
  • ELK: Elasticsearch, Logstash, and Kibana
  • Databases: Neo4j Cassandra FluidDB MongoDB OrientDB cloudant (couchdb) Couchbase RethinkDB ArangoDB MarkLogic ClickHouse InfluxDB Druid Snowflake Redshift BigQuery
  • Kafka: Distributed Streaming Platform
  • Hadoop: distributed processing
  • Digital Radio: icecast2 / ices
  • Firewalls: iptables / ipset / recent / port-knocking / firewalld, ufw, nftables
  • Fluentd: data collector
  • Node.js: back-end JavaScript runtime environment
  • Load Balancer: Seesaw, LoadMaster, ZEVENET, balance (https://balance.inlab.net/), pen (https://github.com/UlricE/pen)
  • DNS high-availability : PowerDNS dnsdist, OpenBSD relayd
  • DRBD: Distributed Replicated Block Device
  • VNC: tightvnc, x11vnc
  • SELinux
  • ---- ## Intermediate -- Multiple Softwares all beginner topics in depth jump into other distros client X Window dpkg-reconfigure tzdata dash / zsh / tcsh / korn shell version control / git Desktop multimedia stat shred DNS / Unbound / knot
  • Mail Server: Qmail / vpopmail / mysql / dovecot / roundcube / postfix / iredmail / daemontools
  • remote syslog
  • Network Sniffing: tcpdump / ngrep / tcpick
  • MRTG / iptraf / nload / iftop
  • Update / Upgrade OS https://tldp.org/LDP/GNU-Linux-Tools-Summary/html/index.html
  • Bash Scripting (variables, for, case, if, functions) https://www.gnu.org/software/bash/manual/html_node/index.html
  • Bash Startup Files : https://www.gnu.org/software/bash/manual/html_node/Bash-Startup-Files.html
  • pwgen ---- ## Advanced
  • LVS: Linux Virtual Server Cluster / Piranha Configuration Tool
  • PHP: CakePHP, Lerevel, CodeIgniter, yii, Zend Framework
  • Knot / Slpit Domain scrpting / source reading security / rootkit Mariadb / Galera / Maxscale ---- ## Expert LFS Programming Python C ----