Top Banner
CyberCorps Participant’s Guide
57

CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

Feb 09, 2018

Download

Documents

lytu
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

CyberCorpsParticipant’sGuide

Page 2: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

2

Thispageintentionallyleftblank.

Page 3: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

3

Table of Contents FamiliarizationGuides............................................................................................................7

NetworkAdminFamiliarization........................................................................................................7Overview..............................................................................................................................................7Creatinganetworkmap......................................................................................................................7MonitoringNetworkTraffic...............................................................................................................10ManagingandProtectingaNetwork.................................................................................................11pfSenseFirewallRuleBasics..............................................................................................................14pfSensePacketCaptures...................................................................................................................15NetworkAdminTools/Skills...............................................................................................................16

EmailAdminFamiliarization...........................................................................................................17Overview............................................................................................................................................17SquirrelMail.......................................................................................................................................18Apache...............................................................................................................................................19Postfix................................................................................................................................................20Dovecot..............................................................................................................................................20EmailAdminTools/Skills....................................................................................................................21HelpdeskAdminTools/Skills..............................................................................................................22

SystemAdminFamiliarization........................................................................................................23Overview............................................................................................................................................23ManagingSystemServices................................................................................................................23ConfigurationandLayout..................................................................................................................24Creatingandmanaginguseraccounts...............................................................................................25SystemAdminTools/Skills.................................................................................................................25

ChatAdminFamiliarization............................................................................................................26Overview............................................................................................................................................26StartingandStopping........................................................................................................................26ConfigurationandLayout..................................................................................................................27Creatingandmanaginguseraccounts...............................................................................................27

WebAdminFamiliarization............................................................................................................28FamiliarizationActivity......................................................................................................................28ApacheRestartActivity......................................................................................................................28WebSiteAdminTools/Skills..............................................................................................................29

ITStaffJobDescriptionsforVCCLL........................................................................................30SystemAdministratorJobDescription............................................................................................30

Summary............................................................................................................................................30EssentialDutiesandResponsibilities.................................................................................................30

NetworkAdministratorJobDescription.........................................................................................31

Page 4: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

4

Summary............................................................................................................................................31EssentialDutiesandResponsibilities.................................................................................................31

HelpDeskSpecialistJobDescription...............................................................................................32Summary............................................................................................................................................32EssentialDutiesandResponsibilities.................................................................................................32

WebmasterJobDescription...........................................................................................................33Summary............................................................................................................................................33EssentialDutiesandResponsibilities.................................................................................................33

EmailAdministratorJobDescription..............................................................................................34Summary............................................................................................................................................34EssentialDutiesandResponsibilities.................................................................................................34

SupportingDocuments.........................................................................................................35BasicConnectivityTestingTools.....................................................................................................35

ping....................................................................................................................................................35telnet.................................................................................................................................................35traceroute..........................................................................................................................................35

ITHelpDeskNotes&Flowchart.....................................................................................................36CreateTicket......................................................................................................................................36ContactHelpdesk...............................................................................................................................36CompleteTicket.................................................................................................................................36

OTRSquickguide(v0.1.0_10/4/2015)............................................................................................38ToLogIn............................................................................................................................................38ToCreateCustomerUser..................................................................................................................38Tickets................................................................................................................................................38

View/SearchTextFiles...................................................................................................................40head...................................................................................................................................................40tail......................................................................................................................................................40cat......................................................................................................................................................40less.....................................................................................................................................................40grep....................................................................................................................................................41sort.....................................................................................................................................................42

Pidgininstructions(v0.1_04/14/2015)...........................................................................................43Addingcontacts.................................................................................................................................43JoiningGroup/Chatrooms.................................................................................................................43

UserManagementCommands.......................................................................................................44w........................................................................................................................................................44who....................................................................................................................................................44adduser..............................................................................................................................................44deluser...............................................................................................................................................45addgroup...........................................................................................................................................45delgroup............................................................................................................................................45

Page 5: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

5

passwd...............................................................................................................................................46SystemManagementCommands...................................................................................................47

ps.......................................................................................................................................................47top.....................................................................................................................................................47htop...................................................................................................................................................47netstat...............................................................................................................................................48service................................................................................................................................................49ssh......................................................................................................................................................50

FilePermissionManagementCommands.......................................................................................51chmod................................................................................................................................................51chown................................................................................................................................................52sudo...................................................................................................................................................52

HelpandEditorCommands............................................................................................................53man....................................................................................................................................................53apropos..............................................................................................................................................53emacs.................................................................................................................................................54

FileSystemCommands...................................................................................................................55df........................................................................................................................................................55du.......................................................................................................................................................55

LinuxCheatSheet...........................................................................................................................56

Index....................................................................................................................................57

Page 6: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

6

Thispageintentionallyleftblank.

Page 7: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

7

Familiarization Guides

WelcometotheVirtualCybersecurityCollaborativeLearningLaboratory(VCCLL)!WehavedevelopedthisparticipantguidetobroadoverviewofthevariousrolesyoumayplayinBetaPortscenariosandtoprovideaquick,easy-to-usereferencekitoftools,methodsandtechniques.Theguidehasbeendesignedtoprovideclear,simpleexplanationsanddirections,whichwillhelpyouthroughoutthelearningexperience.Inaddition,theSupportingDocumentssectionprovidessomeadditionalmaterialsthatshouldhelpyougetthemostoutofthisexcitingvirtualexperience.

NetworkAdminFamiliarization

OverviewThenetworkadministrator’sroleistoplanandcoordinatethedesign,installationandconnectivityofcomputerandnetworksystemstoensurethestableoperationofanorganization’sinformationtechnology(IT)assets.Thenetworkadminmustensurethatuptime,performance,resources,andthesecurityofallnetworksystemsmeettheneedsofusers.Tofulfilltheseorganizationalduties,anetworkadminisresponsiblefordeveloping,configuring,maintainingandsupportingallnewandexistingnetworkhardware,softwareandcommunicationslinks.

Ideally,networkadminsshouldbeabletoquicklyrespondtoallofthefollowingquestionsregardingthenetworksystemsforwhichtheyareresponsible.

• WhatInternetProtocol(IP)subnetsandaddressesdoyoumanage?• Whatserversandendpointsarerunningonyournetwork(s)?• Aretheserverslocalorhostedatanexternalsite?• Whatservices(openports)areavailableoneachserverandhost?• Howisyournetworkconfigured,protectedandisolated?• Whatconnectionsareallowedbetweenservers,hostsandInternetusers?• Isthenetworktrafficfromortospecificendpointsanomalous?• Ifanomalous,wheredothoseconnectionsoriginateandterminate?Iftheconnections

includehostsoutsideyournetwork,wherearetheseendpointslocated?

Fortunately,networkadministratorshaveavarietyoftoolsandapplicationsattheirdisposaltohelpthemmeettheirmyriadresponsibilities.Inthesectionsbelow,thevariousfacetsofthepositionareorganizedintobroadcategories.Withineachcategory,you’llfindabriefdiscussionofthetoolsandapplicationsavailabletomeetthemostcommonneeds.

CreatinganetworkmapAbasicresponsibilityforallnetworkadministratorsistounderstandthenetworklayoutandtoknowwhatserversandendpointsarerunningonthenetwork.Inmanycases,anetworkdiagram

Page 8: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

8

mayalreadybeavailable;however,itisimportanttoensurethatnetworkdiagramsarekeptup-to-datebyre-mappingthenetworkonaregularbasis.

Severaltoolsexisttofacilitatenetworkmappingandconnectivitytesting.Inthissection,we’llexplainhowtheUnix/Linuxpingandtraceroutecommandscanbeusedforthispurpose.

pingisasimplecommandusedtotestthereachabilityofahostonanetwork.Italsoreportstheround-triptimeformessagessentfromtheoriginatinghosttoadestinationhostandback.

Forexample,thepingsessionshownbelowisusedtoconfirmthatthehost10.0.2.100isreachableviathenetwork.Notetheuseofthe-c(count)option,whichtakesanintegerargumentrepresentingthenumberofpingpacketsthatshouldbesent.Bydefault,onLinuxsystems,pingwillcontinuesendingpingsuntilCtrl-Cispressed.

ping -c 4 10.0.2.100 PING 10.0.2.100 (10.0.2.100): 56 data bytes 64 bytes from 10.0.2.100: icmp_seq=0 ttl=62 time=1.582 ms 64 bytes from 10.0.2.100: icmp_seq=1 ttl=62 time=1.701 ms 64 bytes from 10.0.2.100: icmp_seq=2 ttl=62 time=1.715 ms 64 bytes from 10.0.2.100: icmp_seq=3 ttl=62 time=1.807 ms

--- 10.0.2.100 ping statistics --- 4 packets transmitted, 4 packets received, 0.0% packet loss round-trip min/avg/max/stddev = 1.582/1.701/1.807/0.080 ms

Thetraceroutecommanddisplaystheentireroutebetweenthesourcehostandthedestination.traceroutelistsalltheroutersitpassesthroughalongtheway.Inaddition,itmeasuresandreportsthetransitdelaysofpacketsacrossthenetwork.

$ traceroute 10.0.2.100traceroute to 10.0.2.100 (10.0.2.100), 64 hops max, 40 byte packets 1 192.168.100.1 (192.168.100.1) 0 ms 4 ms 0 ms 2 172.35.100.1 (172.35.100.1) 0 ms 3 ms 1 ms 3 10.0.2.100 (10.0.2.100) 9 ms 0 ms 0 ms

Basedontheabovetraceroutecommandresult,wecanseethattherearetworoutersbetweenthesourceanddestinationhosts,withIPaddresses192.168.110.1and172.35.100.1.Usingthisinformation,aswellastheIPaddressofthesourcehost(inthisinstance192.168.100.122),wecanbegintobuildasimplenetworkdiagram,asshowninthefigurebelow.(Note:Thenetworkswitchesshowninthediagramareassumedtoexist,sincetheirpresenceisnotdisclosedbythetraceroutecommand.)

Page 9: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

9

However,thispictureofthenetworkisincomplete.Runningathost192.168.100.122,traceroutecanonly“see”therouterinterfacesonthesideoftheroutersitfaces.Toseetheaddressesofthenetworkinterfacesontheothersideoftheserouters,traceroutemustberunfromtheoppositeside,aswell.So,nowwelogintotheoriginaldestinationhost(10.0.2.100)andruntraceroutebacktotheoriginalsourcehost(192.169.100.122).

$ traceroute 192.168.100.122 traceroute to 192.168.100.122 (192.168.100.122), 30 hops max, 60 byte packets 1 10.0.2.15 (10.0.2.15) 0.865 ms 0.850 ms 0.838 ms 2 172.35.100.2 (172.35.100.1) 0.956 ms 0.945 ms 0.931 ms 3 192.168.100.122 (192.168.100.122) 3.123 ms 3.122 ms 3.111 ms

Now,giventheseaddressesfortheinterfacesontheothersideoftherouters,wecancompletethenetworkdiagramfortheportionofthenetworkthatincludesthesetwohosts.

Tocreatenetworkdiagramsoflarger,morecomplexnetworks,itisnecessarytologintohostsindifferentpartsofthenetworkandtoruntraceroutebackandforthamongseveralknownhosts.AndwhileinthisexampleweusedtwoLinuxsystemsasthesourcehosts,otheroptionsareavailable.Forexample,mostrouterandfirewallsystems(includingtheVyOSrouterandpfSensefirewallusedintheBetaPortenvironment)alsoprovideaccesstonetworksoftwaretoolssuchaspingandtraceroute.

Formoreinformationontheseandsimilarcommands,seeBasicConnectivityTestingintheSupportingDocumentssection,aswellasthefamiliarizationguidesforVyOSandpfSense.

Page 10: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

10

MonitoringNetworkTrafficNetworktrafficmonitoringtouchesatleasttwomajorareasofconcerntonetworkadmins,includingboththeamountandtypeoftraffictraversingthenetwork.Administratorsmustbeconstantlyalerttopotentialbottleneckswithintheirnetworks,whichcanleadtosubstandardperformance.Theymustalsobeonthelookoutforpotentiallyanomaloustrafficthatmaybeindicativeofanattack,suchasdenial-of-service(DOS),datamodificationorexfiltration,brute-forceloginattempts,andothers.

Networktrafficmonitoringcanbeaccomplishedusingavarietyofmethodsandtechniques.Inthissection,wewillfocusonpassivetechniques.

tcpdumpisacommand-linetoolthatallowstheusertodisplaynetworkpacketsbeingtransmittedorreceivedoveranetworktowhichaparticularhostisattached.tcpdumpprintsthecontentsofnetworkpackets,eitherthosereadinrealtimefromanetworkinterfacecard,orfromapreviouslysavedpacketfile.Thiscommandisavailableonawiderangeofdevices,includingdesktopandserversystems,routersandfirewalls.RunningtcpdumponUnix/Linux-basedsystemsoftenrequiresrootprivileges.Rootprivilegesincludepowersthattherootaccounthasonthesystem(i.e.,completeaccesstoallfilesandcommands).

tcpdumpsupportsawidevarietyofoptions.Afewcommonexamplesaregivenbelow.

Toseealistofavailablenetworkinterfacesonwhichlisteningispossible:

$ sudo tcpdump -D

Tolistenoninterfaceeth0:

$ sudo tcpdump -i eth0

Tolistenonanyavailableinterface(usefulonroutersorfirewalls):

$ sudo tcpdump -i any

Bydefault,tcpdumpdisplaysabaresummaryofpacketinformation.Thelevelofdetail(verbosity)canbeincreasedbyaddingthe-voption.Beverbosewhilecapturingpackets:

$ sudo tcpdump -v

Bemoreverbosewhilecapturingpackets(uptothreevscanbeused):

$ sudo tcpdump -vv

BeverboseandprintthedataofeachpacketinbothhexandASCII,excludingthelinklevelheader:

$ sudo tcpdump –vX

Runningtcpdumpfromanetworkhost,suchasadesktoporserver,canprovideusefulinformationregardingthetrafficonanetwork.Itcanbeevenmoreinformativetorunpacketcapturesonnetworkroutersandfirewalls,sincethesedevicesareableto“see”allnetworktraffictraversingtheirportionsofthenetwork.Thismakesitpossibleforanetworkadministratortogetabetterpictureofallthehostscommunicatingonthenetwork,aswellasthevolumeofnetworktraffic.

Page 11: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

11

TheVyOSroutersoftwareisLinux-based,sotcpdumpcanberunfromthecommandlineinthesamewayasonanyLinuxhost.WhenrunningtcpdumponanyhostbywayofanSSHloginsession,it’simportanttofilteroutthetrafficgeneratedbytheloginsessionitself.So,forexample,tocapturenetworkpacketsonaVyOSrouterviaanSSHconnection,displayingIPaddressesandportnumbers(ratherthanhostnamesandportnames),whilefilteringouttrafficgeneratedbytheSSHloginsession(assumingtherouter’sSSHserverisrunningonthedefaultport):

$ tcpdump -nn port not ssh

Formoreinformationandexamplesseethetcpdumpmainpage.

ManagingandProtectingaNetworkWithintheBetaPortenvironment,networkadminsusetwotypesofnetworkdevicestoconfigureandprotecttheirnetworks:VyOSroutersandpfSensefirewalls.Inthissection,we’llprovideabriefoverviewofthesetwodevices.

VyOS

VyOS1isaLinux-basednetworkoperatingsystemthatprovidessoftware-basednetworkroutingandotherfunctionality.InBetaPort,VyOSisusedexclusivelyforrouting.VyOSroutersareconfiguredandcontrolledbywayofacommandlineinterface(CLI).

TheVyOSCLIiscomprisedofanoperationalmodeandaconfigurationmode.Operationalmodeallowsforcommandstoperformoperationalsystemtasksandtoviewsystemandservicestatus,whileconfigurationmodeallowsforthemodificationofsystemconfiguration.TheCLIprovidesabuilt-inhelpsystem.IntheCLIthe[?]keymaybeusedtodisplayavailablecommands.The[tab]keycanbeusedtoauto-completecommandsandwillpresentthehelpsystemuponaconflictorunknownvalue.

Routerconfigurationisnecessaryonlywhennewnetworksareaddedorintheextremelyrareinstancewhenexistingroutesmustbechanged.Therefore,inthisguidewe’llcoveronlyasmallnumberofoperationalmodecommands.

ConfiguredinterfacesonaVyOSsystemcanbedisplayedusingtheshowinterfacescommand.

vyos@vyos:~$ show interfaces Codes: S - State, L - Link, u - Up, D - Down, A - Admin DownInterface IP Address S/L Description--------- ---------- --- -----------eth0 10.0.2.15/24 u/u Publiceth1 172.35.100.1/24 u/u LANlo 127.0.0.1/8 u/u ::1/128 Aspecificinterfacecanbeshown,providinggreaterdetail,usingtheshow interfaces <type> <name>command.

1http://vyos.net

Page 12: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

12

vyos@vyos:~$ show interfaces ethernet eth0 eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:44:3b:0f brd ff:ff:ff:ff:ff:ff inet 10.16.2.15/24 brd 10.0.2.255 scope global eth0 inet6 fe80::20c:29ff:fe44:3b0f/64 scope link valid_lft forever preferred_lft forever Description: OUTSIDE RX: bytes packets errors dropped overrun mcast 274397 3064 0 0 0 0 TX: bytes packets errors dropped carrier collisions 257276 1890 0 0 0 0

Finally,theconfiguredroutescanbeshownusingtheshowiproutecommand.vyos@vyos:~$ show ip route Codes: K - kernel route, C - connected, S - static, R - RIP, O - OSPF I - ISIS, B - BGP, > - selected route, * - FIB route C>* 10.0.2.0/24 is directly connected, eth0 C>* 127.0.0.0/24 is directly connected, lo C>* 172.35.100.0/24 is directly connected, eth1 S>* 192.68.100.0/24 [1/0] via 172.35.100.2, eth1

pfSense

Behindeachrouter(ontheLANside)withintheBetaPortenvironmentapfSense2firewallhasbeeninstalled.pfSenseisanopensourcefirewall/routercomputersoftwaredistributionbasedonFreeBSDUnix.pfSensecanbeconfiguredandoperatedthroughaweb-basedinterface,andrequiresnoknowledgeoftheunderlyingFreeBSDsystemtomanage.

ToaccessapfSensefirewall,typetheIPaddressoftheLAN-facingnetworkadapterintotheaddressbarofyourWebbrowser.Afterloggingin,thefirewall’smenu-drivenGUIinterfaceisdisplayed.Aportionofthefirewall’shomescreenisshownbelow.ThepfSensenavigationmenuislocatedatthetop,providingreadyaccesstoallofthefirewall’sfunctionality.

Belowthemenubar,adashboardcontainingtwopanesisdisplayed,givingahigh-leveloverviewofthefirewall’sstatus,includingsysteminformationandalistoftheactiveinterfaces.

2https://www.pfsense.org/

Page 13: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

13

AmongthemostimportantfeaturesofthepfSensefirewallfornetworkadministratorsaretheabilitytomonitornetworkactivityby“sniffing”networktrafficandtrackingtheactivityofthemostactivenetworkhosts.

pfSenseprovidesapacket-captureutilitysimilartothetcpdumpcommand,describedearlier.Toactivatethisutility,selectDiagnostics->PacketCapturefromthemenu.

Finally,thepfToputilitycanbeusedtomonitornetworktrafficandconnectionsinrealtime.YoucanaccesspfTopviatheGUImenu,atDiagnostics->pfTop.

FormoreinformationoncapturingpacketsandmonitoringnetworktrafficusingpfSense,seethepfSensePacketCapturesdocument.

Asitsnameimplies,thepfSensefirewallalsoprovidestheabilitytocontrolwhatkindsoftrafficareallowedtotraversethenetwork.Fine-grainedrulescanbesetup,basedonprotocol,sourceanddestinationnetworkaddressesandports,amongothercriteria.Thescreenshotbelowshowsa

Page 14: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

14

firewallconfiguredtoallowallIPv4andIPv6topassthroughthefirewallinboth(inboundandoutbound)directions.

FirewallrulesaremanagedatFirewall->Rules.FormoreinformationonconfiguringfirewallrulesinpfSense,seethepfSenseFirewallRuleBasicssectionbelow.

pfSenseFirewallRuleBasicsFirewallrulescontrolwhattrafficisallowedtoenteraninterfaceonthefirewall.Oncetrafficispassedontheinterfaceitentersanentryinthestatetableiscreated.Astatetableentryallowsthroughsubsequentpacketsthatarepartofthatconnection.

FirewallrulesonInterfaceandGrouptabsprocesstrafficintheInbounddirectionandareprocessedfromthetopdown,stoppingatthefirstmatch.Wherenouser-configuredfirewallrulesmatch,trafficisdenied.Onlywhatisexplicitlyallowedviafirewallruleswillbepassed.

FirewallrulesaremanagedatFirewall->Rules.Multiplerulesmaybeselectedforsomeactionsbyclickingontheirroworcheckingtheboxatthestartoftheirrow.Rulesmaybedeletedorreorderedinbulkinthisway.

OntheFirewallRulespage,thereisatabforeachinterface,plusatabforeachactiveVPNtype(IPsec,OpenVPN,PPTP),andatabforFloatingRules,whichcontainsmoreadvancedrulesthatapplytomultipleinterfacesanddirections.

Wheneditingarulemanyoftheoptionsareexplainedindetailontheruleeditorscreen.Bemindfulofthedefaultsettingsontheruleeditor,especiallytheprotocol.NewrulesdefaulttoTCPonly.

Whenenteringaddressesintofirewallrules,thefollowingchoicesaregivenforthesourceanddestinationaddresses.Someoftheseoptionsonlyappearinspecificfieldsorcircumstances,orifcertainfeaturesareenabled.

Page 15: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

15

any-0.0.0.0to255.255.255.255,orallIPv6addressesSinglehostoralias-SelectthisandenteroneIPaddress(1.2.3.4,aa:bb:cc:dd::1)ortypethenameofanAliasthathasalreadybeenconfigured(Firewall>Aliases)Network-Selectthisandenteranetworkandmask(10.99.0.0/16,aa:bb:cc:dd::0/64)LANnet-ThesubnetconfiguredontheLANinterfaceunderInterfaces>LAN.OnpfSense2.2+,thisalsoincludesstaticroutenetworksonthatinterface.LANaddress-TheIPaddressconfiguredontheLANinterfaceunderInterfaces>LANzzzNet/zzzaddress-WorksthesameasLANabovebutforotherinterfaces(WAN,OPT1,OPT2,etc.)PPTPclients-AutomaticallylocateandusetheaddressesofPPTPclientsL2TPclients-AutomaticallylocateandusetheaddressesofL2TPclientsThisFirewall(self)-AnyIPaddressassignedtoanyinterfaceonthisfirewall(pfSense2.2+)

ThesemacrosarehandybecausetheyallowgenericrulestobecreatedthatrefertoLANoraspecificinterface.IfthatinterfaceIPaddressorsubnetchangesinthefuture,theruleswillberebuiltcorrectlyandtheywillnotneedmanuallyadjusted.

pfSensePacketCaptures

WebGUIPacketCaptures

ApacketcapturemaybeperformedwithinthepfSenseGUIinterfaceunderDiagnostics>PacketCapture.Thesettingsworkthesameastcpdump.ThecapturecanbeviewedintheGUIordownloadedforlaterviewingwithtcpdumporWireshark.

Variousfiltersmaybeaddedtorestrictthescopeofthecapture,suchasaspecificProtocol,Hostaddress,orPort(amongothers).Thesizeofthecapturemaybeadjustedaswell.Oftenafewthousandpacketsarenecessarytocatchcertainactivity.

TheLevelofdetailselectoronlycontrolsthelevelofdetaildisplayedinthepfSenseGUIforviewingthecontentsofacapture.Itmaybeadjustedafteracapturehasbeentaken,toviewthecapturewithmoredetail,adjustthisvalueandclickViewCapture.

ClickStarttostartacapture.Whileacaptureisrunning,aStopbuttonisalsodisplayedtostopacaptureinprogress.

ViewCaptureshowsthecontentsofthepreviouscapture.

DownloadCaptureinitiatesadownloadofthecapturefileforviewinglocally(orsendingtoaremotetechnician.)

tcpdump

tcpdumpalsocomesinstalledwithpfSense.ItcanbeusedoverSSHorontheconsoleinashell.InthisexampleamethodofcapturingtrafficotherthanSSH,ARP,DNSandSTPishighlighted.ThecapturewillbedirectedtoafilecalledSniff_outputinthecurrentdirectory.

Page 16: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

16

$ tcpdump -i em0 not port 22 and not port 53 and not arp and not stp >> Sniff_output

The-iisdesignatingtrafficfromtheem0interface.Inthisexampletrafficfromoneofthesubnetsem0connectedtopfSenseisbeinggrabbed.

pftop

pftopisatoolbuiltintopfSensethatcanmonitortraffic/connections.ThistoolcanbefoundintheGUIunderDiagnostics>pftoporbyconnectingtopfSenseviaSSHortheconsole.

NetworkAdminTools/Skills

Generalusetools/conceptsLogginginwithSSHsudocat, head, tail, lessgrep, grep -vsortdups -efnetstat -atunemacsUsingpipeswithabovecommands

Specifictools&applicationspasswd(Tochangeuserpasswords)adduser(Tosetupuseraccounts)mount(Filesystemsattachedlayoutofsystem)who(whoisloggedin)htop(alternativetotopwithabetterlayout)addgroup(creationofanewgroup)andhowtoaddedausertoagroupservice <service name> <start|stop|status> pfsense(webinterface)VyOScommandsshow interfaces

Logfiles/var/log/syslog /var/log/auth.log

Page 17: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

17

EmailAdminFamiliarization

OverviewEmailserviceswithinBetaPortareprovidedthroughaWeb-basedemailpackage.Ofcourse,theemailpackagedoesnotworkalone.ItreliesonseveralotherpackagestoprovideWebserviceandavarietyofemailservices:

ApacheWebserver3providestheWebservicesthatSquirrelMailreliesupon.

Postfix4isamailtransferagent(MTA)packagethatprovidesemailservices,specificallytheSimpleMailTransferProtocol(SMTP).ThismeansthatPostfixhandlesincomingandoutgoingemailservices.

Dovecot5isanInternetMessageAccessProtocol(IMAP)andPostOfficeProtocol,version3(POP3)serverpackagethatallowsemailclientstoretrievemessagesfromamailserveroveraTCP/IPconnection.

Insummary,SquirrelMail6isaWebapplicationthatrunsontopoftheApacheWebservertoprovideeasyandconvenientaccesstoemailservicesprovidedbyPostfixandDovecot.

It’seasytoseeeachofthesepackagesatwork(andtoensurethattheservicesarerunningandlisteningforconnections)insupportofSquirrelMailbyrunningthenetstatcommand.Thefollowing(excerpted)exampleusesoptionsatnp,which(lefttoright)specifythatallnetworkservicesusingthetcpprotocolshouldbeshownusingnumericIPaddressesonly,alongwiththeirassociatedprocesses.NotethatmasterreferstoaPostfixprocess.

$ sudo netstat -atnpActive Internet connections (servers and established)Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program nametcp 0 0 0.0.0.0:25 0.0.0.0:* LISTEN 1017/mastertcp 0 0 0.0.0.0:993 0.0.0.0:* LISTEN 880/dovecot tcp 0 0 0.0.0.0:995 0.0.0.0:* LISTEN 880/dovecot tcp 0 0 0.0.0.0:110 0.0.0.0:* LISTEN 880/dovecot tcp 0 0 0.0.0.0:143 0.0.0.0:* LISTEN 880/dovecot tcp6 0 0 :::25 :::* LISTEN 1017/master tcp6 0 0 :::993 :::* LISTEN 880/dovecot tcp6 0 0 :::995 :::* LISTEN 880/dovecot tcp6 0 0 :::110 :::* LISTEN 880/dovecot tcp6 0 0 :::143 :::* LISTEN 880/dovecot tcp6 0 0 :::80 :::* LISTEN 1143/apache2

3https://httpd.apache.org4http://www.postfix.org5http://www.dovecot.org6https://squirrelmail.org/

Page 18: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

18

AbriefoverviewoftheconfigurationandlayoutofSquirrelMailandeachofthepackagesthatsupportsitwillbeprovidedinthesectionsbelow.

SquirrelMailAsdescribedabove,SquirrelMailisawebmailpackage,specificallyaWebapplicationthatrunsonApacheWebservers.Assuch,SquirrelMailissimplyacollectionofserver-sidescriptsandtext-basedconfigurationfiles.

StartingandStopping

SinceSquirrelMailisanapplication,ratherthanaservice,thereisn’taspecificcommandavailabletostartand/orstopit.Itis,however,possibletodisableandlaterre-enableaSquirrelMailWebsiteusingacoupleofApachecommands:

TotemporarilydisableSquirrelMail:

$ sudo a2dissite squirrelmailSite squirrelmail disabled.

Toactivatethenewconfiguration,youneedtorun:

$ sudo service apache2 reload * Reloading web server apache2

Tore-enableSquirrelMail:

$ sudo a2ensite squirrelmailSite squirrelmail disabled.

Toactivatethenewconfiguration,youneedtorun:

$ sudo service apache2 reload * Reloading web server apache2

Importantnote:SincethisprocessrequiresreloadingtheentireWebserver,itisextremelyimportanttocoordinatethisactivityaheadoftimewithyourWebAdministratorandHelpDesk!

ConfigurationandLayout

Asawebmailapplication,SquirrelMailhasthreedifferenttypesofconfigurationfiles:1)Generalconfigurationsettingswhichaffectthebehavioroftheentireapplication,2)Individualuserconfigurationsettings,whichaffecttheapplication’sbehavioronanindividualuserbasis,and3)ApacheWebserverconfigurationsettings,whichgoverntheapplication’sbehaviorasaWebservice.Thefirsttwotypesofconfigurationwillbediscussedhere,andtheApacheconfigurationwillbediscussedintheApachesectionthatfollows.

OnUbuntuservers,generalconfigurationsettingsarecontainedinseveralfileslocatedinthe/etc/squirrelmaildirectory.Themostimportantofthesefilesisconfig.pl,whichisactuallyaperllanguagescriptthatprovidesasimplemenu-drivenapplicationforsettingandsavingconfigurationsettings.

Page 19: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

19

Theconfigurationsettingsforindividualusersarestoredinper-userfilesinthedirectory/var/lib/squirrelmail/data/withtheextension.pref.Addressbookdataforindividualusersisalsostoredinthisdirectory,infileswiththeextension.abook.

Creatingandmanaginguseraccounts

SquirrelMailuseraccountsareactuallycreatedandmanagedasnormaluseraccountsontheemailserveritself.Therefore,thecommandstoadd,modifyandremoveemailaccountsarethesameasthosetoadd,modifyandremovesystemaccounts.UserManagementCommandsintheSupportingDocumentssectionfordetailsonhowtousethesecommands.

ApacheSinceconfigurationandmanagementofApacheWebserveristheresponsibilityoftheWebAdministrator,thediscussioninthissectionwillbelimitedtothoseaspectsthatdirectlyaffecttheSquirrelMailapplication.FormoreinformationonApache,seetheWebAdminFamiliarizationactivity.

StartingandStopping

Asdiscussedintheprevioussection,enablingordisablingtheSquirrelMailapplicationalsorequiresthattheApacheWebserverberestartedorreloaded.ThecommandforreloadingApacheisshownagainhereforyourconvenience:

$ sudo service apache2 reload * Reloading web server apache2

Importantnote:Onceagain,itisextremelyimportanttocoordinatethisactivitywithyourorganization’sWebAdministratorandHelpDeskpersonnel,asrestartingtheserverisverylikelytoaffectseveralotherimportantservices.

ConfigurationandLayout

LikeallApacheWebsitesandapplicationsonUbuntu,configurationdatafortheSquirrelMailapplicationisstoredinadirectorynamed/etc/apache2/sites-available.Bydefault,SquirrelMail’sconfigurationisstoredinafilenamedsquirrelmail.conf.Amongthemostimportantsettingsisthedocumentroot,bydefault,/usr/share/squirrelmail/.AlltheSquirrelMailserver-sidescriptsthatcontroltheapplication’sbehaviorarestoredinthisdirectory.Othersettingsincludedirectoryindexsettingsandaccessrestrictions.

Page 20: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

20

PostfixPostfixisamailtransferagent(MTA)thatroutesanddeliverselectronicmail.Thus,itisthesoftwareresponsibleforreceivingemailmessagesforSquirrelMailusersfromotherserversandforroutingthemessagestheysendtothedestinationemailservers.

StartingandStopping

Dependingonitsconfiguration,aPostfixservermayactuallyhavethreeormoreprocessesrunningatanygiventime.But,regardlessofhowmanyprocessesitcomprises,thePostfixservercanbestopped,startedandrestartedusingthefollowingcommands.

$ sudo /etc/init.d/postfix stop$ sudo /etc/init.d/postfix start$ sudo /etc/init.d/postfix restart

Ratherthanstopping/startingorrestartingtheserver,itissometimespreferabletosimplyforcePostfixtoreloaditsconfiguration.Thisstepisrequiredfollowinganyconfigurationchangesandmustbedonebeforechangestakeeffect.ToforcePostfixtoreloadit’sconfiguration,usethefollowingcommand.

$ sudo service postfix reload

Configurationandlayout

OnUbuntusystems,thePostfixconfigurationfilesarelocatedinthedirectory/etc/postfix.Thetwoprimaryconfigurationfilesaremain.cfandmaster.cf.Themain.cffilestoressite-specificPostfixconfigurationparameterswhilemaster.cfdefinesthedaemonprocesses.Onceamailserverhasbeensetup,thereisveryseldomanyreasontochangeitsconfiguration.

Postfixlogmessagesarewrittento/var/log/mail.log.Reviewinglogmessagesisanimportantdutyofanyserveradministrator,aslogfilesrecordallservertransactionsandcanoftenprovideinformationthat’susefulindeterminingtherootcauseofanyunusualbehavior.Forinformationandtipsonsearchingandviewlogfiles,seeView/SearchTextFilesintheSupportingDocumentssection.

DovecotDovecotisanIMAPandPOP3serverpackagethatallowsemailclients,includingWeb-basedclientslikeSquirrelMail,toretrievemessagesfromamailserveroveraTCP/IPconnection.

StartingandStopping

LikePostfix,theDovecotservertypicallyhasseveralprocessesrunning.Allassociatedprocessescanbestopped,startedorrestartedusingthefollowingcommands.

$ sudo service dovecot stop$ sudo service dovecot start

Page 21: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

21

$ sudo service dovecot restart

Likeanyotherserversystem,Dovecotmustberestartedafteranyconfigurationchangesbeforethosechangestakeeffect.

Configurationandlayout

OnUbuntusystems,theDovecotconfigurationfilesarelocatedinthedirectory/etc/dovecot.Themainconfigurationfileisdovecot.conf,whichrarelyrequiresanychangesfollowinginstallation.Inaddition,thedirectory/etc/dovecot/conf.dholdsnumerousotherconfigurationfiles.Again,afterasuccessfulinstallation,configurationchangesarerarely,ifever,required.

Dovecotlogmessagesarewrittentothegenerallog,prefacedwiththeservicenamedovecot,ratherthantoadedicatedlogfile.OnUbuntusystems,generallogmessagesarewrittento/var/log/syslog.Toviewallmessagesin/var/log/syslogassociatedwithDovecotservices,useacommandlikethefollowing.

$ grep dovecot /var/log/syslog

Formoreinformationandtipsonsearchingandviewlogfiles,seeView/SearchTextFilesintheSupportingDocumentssection.

EmailAdminTools/Skills

Generalusetools/conceptsLogginginwithsshsudocat, head, tail, lessgrep, grep -vsortdups -efnetstat -atunemacsUsingpipeswithabovecommands

Specifictools&applicationsApacheWebserverSquirrelMailProsodyPostfixDovecotpasswdadduser

Page 22: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

22

Logfiles/var/log/mail.log /var/log/apache2/access.log /var/log/apache2/error.log

HelpdeskAdminTools/Skills

Generalusetools/conceptsLogginginwithsshsudocat, head, tail, lessgrep, grep -vsortdups -efnetstat -atunemacsUsingpipeswithabovecommands

Specifictools&applicationsOTRSticketingsystemwhohtopping

Page 23: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

23

SystemAdminFamiliarization

OverviewAsystemadministrator,orsysadmin,istheindividualresponsiblefortheconfigurationandreliableoperationofcomputersystems,especiallymulti-usersystemssuchasservers.Thesystemadministrator(likeNetworkAdministrators)mustensurethatuptime,performance,resources,andsecurityofallsystemsmeettheneedsofusers.Tomeettheseresponsibilities,thesystemadministratorisresponsibleforacquiring,installingandupgradingcomputercomponentsandsoftware;providingroutineautomation;maintainingsecuritypolicies;troubleshooting;andtrainingandsupervisingsupportstaff.

Fortunately,systemadministratorshaveavarietyoftoolsandapplicationsattheirdisposaltohelpthemmeettheirmyriadresponsibilities.Inthesectionsbelow,thevariousresponsibilitiesofthepositionareorganizedintobroadcategories.Withineachcategory,you’llfindabriefdiscussionofthetoolsandapplicationsavailabletomeetasysadmin’sneeds.

ManagingSystemServicesBydefinition,serversystemstypicallyprovideoneormorenetworkservices,suchasWeb,email,chat,file,databaseandothers.Inmanycases,theresponsibilityofmanagingtheseandotherservicesmaybesplitamongsysadminsandoneormoreotherspecialtyadmins,suchasWebserver,email,ordatabaseadmins.Inthesecases,closecooperationandconstantcommunicationamongtheadminsiscriticaltoensuremaximumavailability,reliabilityandsecurityofsystemservices.

Eachserviceisprovidedthroughoneormoreserverprogramscalleddaemons,programsthatrunasbackgroundprocesses,ratherthanbeingunderthedirectcontrolofaninteractiveuser.Inmostcases,daemonsarecontrolledthroughscriptsthatuseconsistentinterfaces.

Toviewallservicesrunningonasystem,severalcommandsareavailable.Forexample,toseealistofallrunningprocesses,alongwithprocessID(PID)numbers,starttime,processnameandotherinformation,usethecommand:

$ sudo ps -ef

Alternatively,thetopandhtopcommandsprovideadynamic,real-timeviewofsystemsummaryinformationandalistofrunningtasks.Processesare,bydefault,displayedinorderbytheirconsumptionofresources(CPUandmemory),fromgreatesttoleast.ThePID,theuserassociatedwiththeprocess,andotherinformationisalsodisplayed.Todisplaythisinformationusingdefaultparameters,simplyruntoporhtop(amoreuser-friendlyversionoftop)atthecommandline.

Whilenearlyallsystemservicesareconfigured,bydefault,toautomaticallystartandstopwhenthesystemisbootedandshutdown,itisoccasionallynecessarytostart,stoporrestartarunningservice.Forexample,configurationchangesorupdatestoaservicenearlyalwaysrequirearestart.Asmentionedabove,mostdaemonsarecontrolledthroughscriptsthatusecommoninterfacesto

Page 24: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

24

start,stoporrestarttheservice,ortoforceittoreloaditsconfiguration.Italsousuallypossibleforthesysadmintocheckaservice’sstatusinthisway.

Forexample,theApacheWebserverisoneofaverylargenumberofservicescontrolledthroughtheservicecommand.Tostart,stop,restartorreloadApache,usecommandslikethefollowing:

$ sudo service apache2 start$ sudo service apache2 stop$ sudo service apache2 restart$ sudo service apache2 reload

Youcanalsocheckaservice’scurrentstatusbyusingtheservicecommandwiththestatusargument.Forexample:

$ sudo service apache2 statusApache2 is running (pid 1583).

Formoreinformationontheseandsimilarcommands,seeSystemManagementCommandsintheSupportingDocumentssection.

ConfigurationandLayoutOnUbuntusystems,systemconfigurationsettingsforthevastmajorityofapplicationsandservicesarecontainedintextfileslocatedinatop-leveldirectorynamed/etc.Relativelysmallorsimpleapplicationssuchasupdatedb,whichautomaticallyupdatesadatabaseusedbythelocatecommand,areconfiguredthroughasinglefilein/etcwiththeextension.conf.OtherapplicationssuchasApacheWebserverandPostfixemailsystemhavetheirownsubdirectorieswithin/etccontainingmultipleconfigurationfiles.Thejobofmaintainingthesemorecomplexapplicationsusuallyfallstoaspecialistadministrator,suchasaWeboremailadmin.However,asmentionedabove,closecoordinationandcooperationbetweenthevariousadministratorsworkingonaserversystemisamust.

Inadditiontoconfigurationfiles,mostserviceshavetheirownlogfiles,wheretheyregularlyrecordavarietyofmessagesregardingroutinetransactionsand,moreimportantly,messagesrelatedtoexecutionerrorsorotherproblems.OnLinuxsystems,theselogfilesarefoundinthedirectory/var/log.Aswasthecasewithconfigurationfiles,thetypeandnumberoflogfilesfrequentlydependsonthesizeand/orcomplexityoftheapplication.Themoresimpleandcommonapplicationstypicallywritetheirlogmessagestothefile/var/log/syslog.Morecomplexservices,suchastheApacheWeborPostfixemailservershavetheirownfilesoreventheirowndirectorieswithin/var/log.Again,thejobofmaintainingthesemorecomplexapplicationsusuallyfallstoaspecialistadministratorbut,asalways,coordinationiskey.

Formoreinformationandtipsonsearchingandviewconfigurationandlogfiles,seeView/SearchTextFilesintheSupportingDocumentssection.Forinformationontextediting,seeHelpandEditorCommands,alsointheSupportingDocumentssection.

Page 25: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

25

CreatingandmanaginguseraccountsCreatingandmanaginguseraccountsisacoreresponsibilityformanysystemadministrators.Sysadminsareregularlycalledupontocreate,modifyandremoveuseraccountsortochangeusers’passwords.Thesetasksarecarriedoutusingcommandssuchasadduser,deluserandpasswd.SeeUserManagementCommandsintheSupportingDocumentssectionfordetails.

Inaddition,sysadminsareresponsibleformanagingfileanddirectorypermissionstoensurethatonlyauthorizedusershavetheappropriateaccessrightstovieworeditfilesorexecutecommands.SeeFilePermissionManagementCommandsintheSupportingDocumentssectionforinformationonthecommandsusedtosetandmodifyfileaccesspermissions.

SystemAdminTools/Skills

Generalusetools/conceptsLogginginwithsshsudocat, head, tail, lessgrep, grep -vsortdups -efnetstat -atunemacsUsingpipeswithabovecommands

Specifictools&applicationspasswdadduser addgroupwhohtopaddgroupservice df

Logfiles/var/log/syslog /var/log/auth.log

Page 26: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

26

ChatAdminFamiliarization

OverviewChatservices,alsocalledExtensibleMessagingandPresenceProtocol(XMPP)services,areprovidedinBetaPortthroughanOpenSourceXMPPserverpackage.Prosody7isasmall,lightweightimplementationoftheXMPPapplicationprotocolthatiseasytoconfigureandmanage.

Prosodysupportsbothclient-to-serverandserver-to-servercommunications.ThismeansthatuserswhohaveanaccountonaProsodyservercaneasilycommunicatewithuserswhohaveaccountsonotherXMPPserversjustaseasilyastheycanwithusershavingaccountsonthesameserver.Bydefault,Prosodylistensforclientconnectionsonport5222andserverconnectsonport5269.

It’seasytoconfirmthatProsodyislisteningonthecorrectportsbyrunningthenetstatcommand.Thefollowing(excerpted)exampleusesoptions-atnp,which(lefttoright)specifythatallnetworkservicesusingthetcpprotocolshouldbeshownusingnumericIPaddressesonly,alongwiththeirassociatedprocesses.Notethatlua5.1referstoaProsodyprocess.ThisisduetothefactthatProsodyiswritteninLua,anembeddedscriptinglanguagethatisoftenusedingameprogrammingbecauseofitsspeed.

$ sudo netstat -atnpActive Internet connections (servers and established)Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program nametcp 0 0 0.0.0.0:5269 0.0.0.0:* LISTEN 1046/lua5.1 tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 878/sshd tcp 0 0 0.0.0.0:5222 0.0.0.0:* LISTEN 1046/lua5.1 tcp6 0 0 :::5269 :::* LISTEN 1046/lua5.1 tcp6 0 0 :::22 :::* LISTEN 878/sshd tcp6 0 0 :::5222 :::* LISTEN 1046/lua5.1

XMPPservicessupportawidevarietyofclients.ThestandardclientforBetaPortusersisPidginInternetMessenger.FormoreinformationonPidgin,seePidginInstructionsintheSupportingDocumentssection.

StartingandStoppingWhileProsodyshouldseldomeverrequirerestarting,it’simportanttoknowhowtostop,start,restartandreloadtheservice.

TostopProsody:$ sudo service prosody stop * Stopping Prosody XMPP Server prosody [ OK ]

TostartProsody:

7https://prosody.im

Page 27: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

27

$ sudo service prosody start * Starting Prosody XMPP Server prosody [ OK ]

TorestartProsody:$ sudo service prosody restart * Restarting Prosody XMPP Server prosody [ OK ]

ToforceProsodytoreloaditsconfiguration,suchasafteraconfigurationchange:$ sudo service prosody reload * Reloading Prosody XMPP Server prosody [ OK ]

ConfigurationandLayoutOnUbuntusystems,theProsodyconfigurationfilesarelocatedinthedirectory/etc/prosody.Theprimaryconfigurationfileisprosody.cfg.

Prosodylogmessagesarewrittentothedirectory/var/log/prosody,intotwoseparatelogfiles:prosody.logandprosody.err.Reviewinglogmessagesisanimportantdutyofanyserveradministrator,aslogfilesrecordallservertransactionsandcanoftenprovideinformationthat’susefulindeterminingtherootcauseofanyunusualbehavior.Forinformationandtipsonsearchingandviewlogfiles,seeView/SearchTextFilesintheSupportingDocumentssection.

CreatingandmanaginguseraccountsProsodyuseraccountsarecreatedandmanagedusingacommandnamedprosodyctl.Thiscommandrequiressudoprivileges,whichrestrictsitsusetothosesystemusershavingadministrativeprivileges.

TocreateanewProsodyaccountandspecifytheuser’spasswordinonecommand,useprosodyctlwiththeregistercommand,followedbythenewusername,theserver’sfully-qualifieddomainname,andthenewuser’spassword.Forexample:

$ sudo prosodyctl register ella elko.26maidenlane.net afwtl7j4

Tochangeanexistinguser’spassword,useprosodyctlwiththepasswdcommand,followedbytheuser’sjid.Thejidlooksjustlikeanemailaddress,anditconsistsoftheusername,followedby‘@’,followedbytheserver’sfullyqualifieddomainname.Forexample,tochangethepasswordforella,whoseaccountwascreatedabove,usethefollowingcommandline,afterwhichyouwillbepromptedforthenewpassword.

$ sudo prosodyctl passwd [email protected]

Finally,toremoveauseraccountfromaProsodyserver,useprosodyctlwiththedelusercommand,followedbytheuser’sjid.Forexample,toremovetheuseraccountella,createdabove,usethefollowingcommandline.

$ sudo prosodyctl deluser [email protected]

Page 28: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

28

WebAdminFamiliarization

FamiliarizationActivity1. Itisessentialtofamiliarizeyourselfasquicklyaspossibletothewebservicesyour

companyprovides.Itisalsoessentialforyoutodevelopastrongsenseoftheavailabilityoftheseservicessothatyouarebetterpositionedtoprevent,detectandrespondtounusualactivitythatmaydisruptcompanyoperations.

2. Startbydeterminingwhichwebpagesandweb-basedservicesyourcompanyprovides.Besuretodistinguishbetweenthosethatareservingtheconsumers/publicversusthoseforinternal/companyuse.Usethefollowingspacetorecordyournotes.

3. Visiteachofthewebpagesandeachofwebpagestowhichtheyarelinked.Familiarizeyourselfwithboththeircontentandavailability.Payparticularattentiontopublicfacingwebpagesasmaintenanceoftheiravailabilityiscriticaltocompanyviability.Usethefollowingspacetorecordyournotes.

4. Determinewhichweb-basedservicesareprovidedbyyourcompany.Besuretodistinguishbetweenthosethatareservingthegeneralpublicversusthoseforinternal/companyuse.Usethefollowingspacetorecordyournotes.

5. Reviewtheweblogs(especiallytheaccessanderrorlogfiles).Familiarizeyourselfwith“normal”trafficpatterns.Remembertocommunicatewithyourwebadministratorcolleaguesandseektheirinputasyoudevelopyourownsenseof“normal”.

6. Reviewthetrainingmaterialsthathavebeenprovided.Thesematerialsincludedescriptionsofthetools/commandsusefultowebadministrators.Payparticularattentiontotools/commandsusedtoconfigureandmanagetheApache-basedwebservices.

ApacheRestartActivityOnetaskthatawebadministratormustsometimesperformisarestartofthewebserver.Beawarethatrestartingwebservicesshouldbeperformedonlywhennecessaryasittemporarilypreventsusersfromaccessingwebpagesandweb-basedservices.Theimageandviabilityofthecompanycansufferifwebpagesand/orweb-basedservicesaretakenoff-lineorotherwisemadeunavailable.

ThisactivitypresumesyouhavealreadycompletedtheFamiliarizationActivity(above).

1. NotifytheHelpDeskofyourintentiontorestartthewebserverandthereasonfordoingso.Itisessentialtodocumenttherationaleandreasonsforneedingtorestartthewebserver.

2. Logintoyourwebserverusingsshortelnetandmakesureyoursystemincludestheinit.dcommand(usuallyplacedinthe/etcdirectory).Confirmthepresenceofthefilebyissuingthefollowingcommand:

$ ls /etc/i*

3. Issuethefollowingcommand:

$ sudo /etc/init.d/apache reload

Page 29: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

29

Iftheabovecommanddoesnotachievethedesiredoutcomethenusethemoredisruptiverestartcommand:

$ sudo /etc/init.d/apache restart

4. EnsureApacheserverhasrestartedandwebservicesrestored.Reviewtheerrorlog,confirmpublicandinternalaccessibilitytocorrespondingwebpagesandweb-basedservices.

$ cat /var/log/apache2/error.log

5. ReporttotheHelpDeskthatallwebserviceshavebeenrestored.

WebSiteAdminTools/Skills

Generalusetools/conceptsLogginginwithsshsudocat, head, tail, lessgrep, grep -vsortps -efnetstat -atunemacsUsingpipeswithabovecommands

Specifictools&applicationsApacheWebserverchownchmod

Logfiles/var/log/mail.log /var/log/apache2/access.log /var/log/apache2/error.log

Page 30: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

30

IT Staff Job Descriptions for VCCLL

SystemAdministratorJobDescription

SummaryResponsiblefordesigning,organizing,modifying,andsupportingacompany'scomputersystems.DesignsandinstallsLANs,WANs,Internetandintranetsystems,andnetworksegments.

EssentialDutiesandResponsibilities• SupportLANs,WANs,networksegments,Internet,andintranetsystems.• Respondpromptlytohelpdeskticketsandstatusqueries.• Maintainsystemefficiency.• Troubleshootproblemsreportedbyusers.• Maintainnetworkandsystemsecurity.• Analyzeandisolateissues.• Monitorserveranddesktopsystemstoensuresecurityandavailability.• Evaluateandmodifysystem'sperformance.• Maintainnetworkserverssuchas(web,file,email,chat)servers

Page 31: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

31

NetworkAdministratorJobDescription

SummaryResponsiblefordesigning,organizing,modifying,installing,andsupportingacompany'scomputersystems.DesignsandinstallsLANs,WANs,Internetandintranetsystems,andnetworksegments.

EssentialDutiesandResponsibilities• InstallandsupportLANs,WANs,networksegments,Internet,andintranetsystems.• Installandmaintainnetworkhardwareandsoftware.• Monitorandanalyzenetworkactivitytoensuresecurityandavailability.• Maintainintegrityofthenetwork,serverdeployment,andsecurity.• Ensurenetworkconnectivitythroughoutacompany'sLAN/WANinfrastructureisonpar

withtechnicalconsiderations.• Performnetworkaddressassignment.• Respondpromptlytohelpdeskticketsandstatusqueries.• Assignroutingprotocolsandroutingtableconfiguration.• Maintainnetworkservicessuchasgatewaysandfirewalls.

Page 32: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

32

HelpDeskSpecialistJobDescription

SummaryResponsibleforprovidingtechnicalassistanceandsupportrelatedtocomputersystems,hardware,orsoftware.Respondstoqueries,runsdiagnosticprograms,isolatesproblem,anddeterminesandimplementssolution.

EssentialDutiesandResponsibilities• Providetechnicalassistanceandsupportforincomingqueriesandissuesrelatedto

computersystems,networks,software,andhardware.• Respondtoquerieseitherinperson,inwriting(includesemailandchat)oroverthephone.• Writetrainingmanuals.• Askquestionstodeterminenatureofreportedproblemsinsupportofquickandcorrect

resolution.• Walkcustomerthroughproblem-solvingprocess.• ActaspointofcontactforalluserstotheITdepartment.• Trackallraisedissuesandbeinthelooponeffortstoresolveevenifnotactively

coordinating(thehelpdeskshouldneverloosetouchwiththeproblemorthecustomer).• ActasITeyesandearsforproblemsaffectingmultipleusers.• RespondpromptlytostatusqueriesfromotherITareas.

Page 33: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

33

WebmasterJobDescription

SummaryResponsibleformaintainingWebsites.Ensuressitesarefunctioningproperlyandareavailabletousers.Testsspeedofaccessandimprovesuponloadingspeed.

EssentialDutiesandResponsibilities• Maintainwebsitesforclientsandbusinesses.• Ensurethewebservers,andsupportingsoftwareareoperatingproperly.• Designwebsites.• Generateandrevisewebpages.• Examineandanalyzesitetraffic.• ConfigurewebserverssuchasApache.• Serveasthebackupserveradministratoronthewebserver.• Regulateandmanageaccessrightsofdifferentusersonwebsite.• Createandmodifyappearanceandsettingofsite.• Respondpromptlytohelpdeskticketsandstatusqueries.• Keepthehelpdeskinformedofanyandallissuesasthewebsiteistheorganizationsfaceto

theworld

Page 34: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

34

EmailAdministratorJobDescription

SummaryResponsibleformailserveraccountmanagement,trackingmailserverusage,andbackingupandrestoringemailfiles.Installsandconfiguresnewmailservers.

EssentialDutiesandResponsibilities• Createandmaintainemailaccounts• Resetuserpasswords,asrequired• Assistwithloginandemailclientproblems• MonitorandrespondtoPostmaster(error)messages• Trackmailserverusage• Monitormailserverconnections• Trackdiskspaceusage• Monitormailserverlogs• Controlincomingandoutgoingspammailings

Page 35: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

35

Supporting Documents

BasicConnectivityTestingTools

pingpingisoneofthebasictools.Itsendsrepeatedpackets(ICMPratherthanTCPorUDP)tothespecified<host>. $ ping [options] <host>

Thelistofavailableoptionscanbefoundusingmanpages.Themostusefuloptionis-c <count>(replace<count>withthenumberofpingstosend).Thiscanbecritical,becausepingcanalsobeusedasadenial-of-service(DOS)attackand,yes,itispossibletoDOSyourselfwithping.No,youwouldnotbethefirst.Itisimportanttounderstandthatpingonlytellsyouwhethertheserverisup,notthatanyservicesarerunning.Asanexample,ifyoupingaWebserver,youknowthehardwareandOSarerunning,butnotthattheWebserveritselfisnecessarilyrunning.

telnettelnetisaveryoldandusefultool,becauseitisverygeneric. $ telnet <host> <port>

Bydefault,thetelnetservicerunsonport23soifyouuseacommandlinelikethefollowing. $ telnet www.somehost.com

Theconnectionwillbemadeonport23,whichisthedefaultforthetelnetservice.Duetosecurityconcernsthetelnetserviceisoftendisabled.However,itisalsopossibletousethetelnetclienttoconnecttoportsotherthanthedefault.Forexample,ifyouuseacommandlinelikethisone. $ telnet www.somehost.com 80

Theconnectioninthiscasewillbemadeonport80(typicallyusedbyaWebserver)atthedestinationhost,andyoucanenterHTTPcommandstointeractwiththehost’sWebserver,ifthereisonelisteningonthatport.Inthisway,it’spossibletoshowwhethertheWebserverrunningonport80isupandrunning.Inlikefashion,thetelnetcommandcanbeusedtoconnecttootherservices,suchasSMTP,onport25.

traceroutetracerouteattemptstoshowthehopsbetweenhostsontheInternet.Itiscriticaltonotethattracerouteonlyshowstheinterfacefacingthesourcehostaspacketspassthroughrouters.$ traceroute <host>

Example:Hereisanexampleofrunningtraceroutebetweentwohosts(192.168.1.7to172.16.1.2)withasinglerouterinbetween.Thusthe192.168.1.7machineseesthefollowing.

Page 36: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

36

$ traceroute 172.16.1.2 traceroute to 172.16.1.2 (172.16.1.2), 64 hops max, 52 byte packets 1 192.168.1.1 (192.168.1.1) 3.877 ms 0.995 ms 0.902 ms 2 172.16.1.2 (172.16.1.2) 2.631 ms 1.318 ms 1.236 ms

While,fromtheotherendofthenetworkconnection,172.16.1.2seesthefollowing. $ traceroute 192.168.1.7 traceroute to 192.168.1.7 (192.168.1.7), 64 hops max, 52 byte packets 1 172.16.1.101 (172.16.1.101) 0.552 ms 0.904 ms 1.265 ms 2 192.168.1.7 (192.168.1.7) 18.025 ms 18.673 ms 19.584 ms

Sotobuildanaccuratenetworkmapyouneedtocheckbothsidesofarouter,asisthecaseifyouarelookingforanetworkfault.Inthecaseofafault,youoftenhavetogetsomebodyontheotherendtochecktheroutesrunningbackinyourdirection.

ITHelpDeskNotes&Flowchart

CreateTicketUponticketcreation,thehelpdesktechnicianshouldemailtheuserandanyotherinterestedpartiestoinsurethateveryoneconnectedtotheissueisawareofitsstatus.

ContactHelpdeskWhenatechnicianassignedaticketdeterminesthattheissuecannotberesolved,eitherbecauseoftechnicalreasonsorbecausetheissuecannotbeduplicated,heorsheshouldimmediatelycontactthehelpdesktohelpdeterminenextstepsinaddressingtheissue.

CompleteTicketUponcompletingthehelpdeskticket,thetechnicianwhoclosesitshouldemailthehelpdesk,theuserandanyotherinterestedpartytokeepeveryoneinformed.

Page 37: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

37

Figure1:Sourcedfromhttp://visual.ly/it-help-desk-flowchart

Page 38: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

38

OTRSquickguide(v0.1.0_10/4/2015)OTRS8isanOpenSourceticketingsystemusedbyBetaPortcompaniestomanagetheirhelpdeskoperations.

ToLogInGoto:

http://helpdesk.[company_name].com/otrs/(yesyouneedthetrailing/)

Enteryourlogincredentials.

ToCreateCustomerUserAfterloggingin

1. Click“Admin”intheheadermenu2. Inthe“CustomerManagement”sectionclick“CustomerUser”3. Click“AddCustomerUser”buttoninleftsidebar4. Fillinthefollowingformfields.

a. Firstnameb. Lastnamec. Username(Customerwillusethistologin.)d. Emaile. CustomerID(Customer’sticketswillbemarkedwiththisID.)

5. Set“Valid”to“Valid”ifitisnotalready.6. Click“Submit”buttonatbottomofpage.

TicketsClickingthe“Tickets”headerbuttondisplaysalistofpossibleviewsandactions.Themostusefulofthesewillbethequeueorstatusview,dependingonwhichyouprefer.Bothdisplaylistsofactivetickets;queueviewseparatesthemintoseparatepagesbywhichqueuetheyarein,whilestatusdoesnot.Queueviewdefaultstothemostdetailedlistingmode,andStatusviewdefaultstothesimplestmode.ItshouldbenotedthatOTRSsystemticketscannotbedeleted,onlyclosed.

ToCreateTicket

Afterloggingin:

1. Click“Tickets”buttoninheadermenu2. Click“newemailticket”inthedropdownmenu3. Fillintheform:

a. Selectqueuefromdropdownmenub. Entercustomeruser(Thisdoeshavesomeautocomplete.)c. Entersubject

8https://www.otrs.com/otrs-free-help-desk

Page 39: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

39

d. EntertextAllotherfieldsarenotrequired

4. Click“sendmail”buttonatbottomofpage

ToLockATicketToYourAccount

Eithercheckaticketinoneofthelistviewsorselectit,thenclickthe“Lock”button,asshownbelow.

.

TOCLOSEATICKET

Sameaslockingaticketexceptyouclickthe“Close”buttoninsteadof“Lock.”Thisbuttonislocatedinthesamerow,farthertotheright,asshownintheabovescreenshot.

Page 40: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

40

View/SearchTextFiles

headTheheadcommanddisplaysthebeginningofafile.Theformatoftheheadcommandis:

$ head <filename>

Bydefault,youcanonlyreadthefirsttenlinesofafile.Youcanchangethenumberoflinesdisplayedbyspecifyinganumberoption.

$ head -20 <filename>

Theabovecommandwoulddisplaythefirst20linesofafilenamed<filename>.

tailThereverseofheadistail.Usingtail,youcanviewthelasttenlinesofafile.Youcanalsochangethenumberoflinesdisplayedbyspecifyinganumberoption.Thiscanbeparticularlyusefulforviewingthemostrecentlinesofalogfileforimportantsystemmessages.

$ tail -15 /var/log/auth.log

Example:

Youcanusetailtowatchlogfilesastheyarebeingupdated.Usingthe-foption,tailautomaticallyprintsnewmessagesfromanopenfiletothescreeninreal-time.Forexample,toactivelywatch/var/log/syslog,enterthefollowingatashellprompt:

$ tail -f /var/log/syslog

PressCtrl-cwhenyouarefinishedwithautomatedupdating.

catThecatcommandisaversatileutility.Itcanbeusedtoviewtext,tocreatetextfiles,andtojoinfiles.Itsnameisshortforconcatenate,whichmeanstocombinefiles.

Enteringthecatcommandfollowedbyafilenamedisplaystheentirecontentsofthefileonthescreen.Ifthefileislong,thecontentsscrolloffthescreen.Inthiscase,youmaywanttousethelesscommandinstead,describedbelow.

lesslessisaprogramthatletsyouviewtextfiles.ThisisveryhandysincemanyofthefilesusedtocontrolandconfigureLinuxarehumanreadable.

lessisinvokedbysimplytyping:

Page 41: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

41

$ less <filename>

Controllingless

Oncestarted,lesswilldisplaythetextfileonepageatatime.YoumayusethePageUpandPageDownkeystomovethroughthetextfile.Toexitless,type"q".Herearesomecommandsthatlesswillaccept.

PageUporb Scrollbackonepage

PageDownorspace Scrollforwardonepage

G Gototheendofthetextfile

1G Gotothebeginningofthetextfile

/characters Searchforwardinthetextfileforanoccurrenceofcharacters

n Repeattheprevioussearch

h Displayacompletelistlesscommandsandoptions

q Quit

grepThegrepcommandisusefulforfindingspecificcharacterstringsinafile.Forexample,tofindeveryreferencemadetothetext"pattern"inthefile<filename>,enter:$ grep <pattern> <filename>

Eachlinein<filename>thatincludesthetext<pattern>islocatedanddisplayedonthescreen.

Thegrepcommandacceptsanumberofoptionsthatwillchangeitsbehavior.Asmallselectionoftheseisshownbelow.Formoreinformation,seethemanpageforgrep.

-v Invertthesenseofmatching,toselectnon-matchinglinesforthegivensearchcriteria.

-ANUM PrintNUMlinesoftrailingcontextaftermatchinglines.

-BNUM PrintNUMlinesofleadingcontextbeforematchinglines.

Example:

TosearchanApacheWebserver’saccesslogforentriespertainingtoaparticularclientIPaddressoraddressrange,youcanuseallorpartoftheaddressasakeywordforthesearch:$ grep 10.0.1.212 /var/log/apache2/access.log

Page 42: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

42

sortThesortcommandisusedtosort/orderlinesintextfiles.Youcansortthedatainatextfileanddisplaytheoutputonthescreen,orredirectittoafile.

Basedonyourrequirements,sortprovidesseveralcommandlineoptionsforsortingdatainatextfile.Forexample,tosortthelinesofatextfile<filename>inreverseorder,usethe-roption:$ sort -r <filename>

Inaddition,filesmaysometimescontainduplicateentriesthatarenotimportanttothegoalsoftheuser.Tosortthelinesofatextfile<filename>whileremovingduplicatelines,usethe-u(forunique)option:$ sort -u <filename>

Finally,whensortingonnumericvalues,bestresultsareobtainedbyusingthe-noption,whichsortsbynumericvalue,ratherthanthealphabeticalorderofdigits.$ sort -n <filename>

Examples:

Itissometimesdesirabletosortthelinesofafilebasedonsomecharactersthatarenotatthebeginningofafile.Entriesinmanylogfilesarehighlystructuredsothatitispossibletospecifysortingonaspecificfield.Asanexample,/var/log/syslogrecordslogmessagesfromawidevarietyofservices,thenamesofwhicharegiveninthefifthfieldofeachlogentry.Tosortlogentriesbasedonthenameoftheservice,locatedinfield#5,youwouldusethe-koptiontospecifysortingonthisfield:$ sort -k 5 /var/log/syslog

ThesortcommandisoftenusedincombinationwithotherLinuxcommands,whicharejoinedusingapipe.Thepipetakestheoutputofacommandonitsleftandredirectsthatoutputasinputtothecommandonitsright.

Forexample,sayyouwouldliketogetasortedlistofIPaddressesthathaveconnectedtoyouremailserver’sSMTPserviceforwhichreverseDNSlookupshavefailed.(ThismayindicatethattheIPdoesnotbelongtoalegitimatemailserver.)Theseentrieswillbefoundinafilenamed/var/log/mail.logandwillcontainthetext“connectfromunknown”withtheIPaddressappearinginfield#8.Toobtainalistofthesespecificentries,sortedbyIPaddress,usethefollowingcommand.$ grep 'connect from unknown' /var/log/mail.log | sort -k 8

Page 43: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

43

Pidgininstructions(v0.1_04/14/2015)Pidgin9istheIMclientprovidedforuseonallcomputerswithintherange.Pidginislocatedinthe“Start”menuintheInternetfolder.YoucanalsostartPidginbyenteringpidgininaterminal.

Addingcontacts IntheBuddylistwindowclickthe“Buddies”menuandselect:

NewInstantMessage-toopenachatwiththatpersonAddBuddy-toaddsomeonetoyourbuddylist

Note:Boththeseoptionswillopenawindowandaskforthenameofthecontactyouwishtoadd.AddBuddywillalsohavesomeadditionalfieldsthatmaybeleftblank.

JoiningGroup/ChatroomsNote:atpresentyoumayonlyjoinchatroomsontheserveryouraccountisregisteredto.

IntheBuddylistwindowclickthe“Buddies”menuandselect:

JoinAChat-toopenaroomAddChat-toaddaroomtoyourbuddylist

Note:Boththeseoptionswillopenawindowandaskforthenameoftheroomyouwishtoadd.Atthebottomofthewindowwillbea“RoomList”buttonthatcanbeusedtogetalistofthechatroomsonaserver.AddChatwillalsohavesomeadditionalfieldsthatmaybeleftblank.Ifyouenterthenameofagroupthatdoesnotexist,weatherbytypoordeliberately,aroomwiththegivennamewillbecreated.

9https://www.pidgin.im

Page 44: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

44

UserManagementCommands

wwdisplaysinformationabouttheuserscurrentlyonthemachine,aswellastheirprocesses.Theheadershows,inthisorder,thecurrenttime,howlongthesystemhasbeenrunning,howmanyusersarecurrentlyloggedon,andthesystemloadaveragesforthepast1,5,and15minutes.Notethatsudoprivilegesarenotrequiredtorunthiscommand.

Example:

Toshowinformationaboutaparticularusernameonly,addtheusernameasanargument.$ w username

whoThewhocommandcanbeusedtolisttheuser’sname,terminalline,logintime,elapsedtimesinceactivityoccurredontheline,andtheprocessIDofthecommandinterpreterforeachcurrentsystemuser.

Examples:

Usewhotodisplayinformationaboutuserscurrentlyloggedin:$ whoShowthesameinformationasabove,withcolumnheadings:$ who -H

Displayallloginnamesandthenumberofuserscurrentlyloggedon:$ who –q

adduserTheaddusercommandisusedtoadduserstothesystemaccordingtocommand-lineoptionsandconfigurationinformationcontainedinthefile/etc/adduser.conf.adduseroffersafriendlierfront-endthanthelowerleveluseraddcommand.Thecommandwill,bydefault,choosepolicy-conformantuserid(UID)andgroupid(GID)values,createahomedirectorywithskeletalconfiguration,andrunacustomscript,amongotherfeatures.Whenrunningadduser,youwillbeaskedaseriesofquestions.Theprocedurewillbe:

• Assignandconfirmapasswordforthenewuser.• Enteranyadditionalinformationaboutthenewuser,knownasGECOSdata,including

name,buildingandofficenumber,telephone,etc.Thesefieldsareentirelyoptionalandcaneachbeskippedbypressing<Enter>ifyoudonotwishtoutilizethesefields.

• Finally,youwillbeaskedtoconfirmthattheinformationyouprovidedwascorrect.Press<y>tocontinue.

Page 45: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

45

Examples:

Addingormodifyinguseraccountsrequiressudoprivileges.Youcanaddanewuserbytyping:$ sudo adduser username

Ifthenewusershouldhavetheabilitytoexecutecommandswithroot(administrative)privileges,youwillneedtogivethenewuseraccesstosudo.Youcandothisbyaddingthenewuser’susernametoaspecialgroupcalledsudo:$ sudo usermod -a -G sudo username

Userswhobelongtothegroupsudoareabletoexecuteanycommandwithrootprivileges.

deluserThedelusercommandisusedtoremoveauserfromthesystem:$ sudo deluser username

Examples:

Itisoftendesirabletoremovetheuser’shomedirectoryatthesametimethattheaccountisdeleted:$ sudo deluser --remove-home username

If,additionally,allfilesownedbytheusershouldbedeleted,includingfilesoutsidetheuser’shomedirectory,usethisoptioninstead:$ sudo deluser --remove-all-files username

addgroupTheaddgroupcommandisusedtoaddgroupstothesystem.Youcanaddanewuserbytyping:$ sudo addgroup newgroup

Example:

Useaddgrouptocreatethegroupprogrammers:$ sudo addgroup programmers

delgroupThedelgroupcommandisusedtoremoveagroupfromthesystem:$ sudo delgroup groupname

Itshouldbenotedthatsomelimitationsexistonwhichgroupscanberemoved.Forexample,theprimarygroupforanyexistingusercannotberemoved.

Page 46: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

46

Example:

Itmaynotbedesirabletoremovegroupsthatstillhavemembers.Topreventthisfromoccurringaccidently,addthefollowingoption:$ sudo delgroup --only-if-empty groupname

passwdThepasswdcommandchangespasswordsforuseraccounts.Anormalusermayonlychangethepasswordforhis/herownaccount,whileauserwithrootprivilegesmaychangethepasswordforanyaccount.passwdalsochangesaccountinformation,suchasthefullnameoftheuser,theuser´sloginshell,orhis/herpasswordexpirydateandinterval.

Forpasswordchanges,theuserisfirstpromptedforhis/heroldpassword,ifoneispresent.Thispasswordisthenencryptedandcomparedagainstthestoredpassword.Theuserhasonlyonechancetoenterthecorrectpassword.Userswithrootprivilegesarepermittedtobypassthisstepsothatforgottenpasswordsmaybechanged.

Afterthepasswordhasbeenentered,passwordaginginformationischeckedtoseeiftheuserispermittedtochangethepasswordatthistime.Ifnot,passwdrefusestochangethepasswordandexits.

Theuseristhenpromptedtwiceforareplacementpassword.Thesecondentryiscomparedagainstthefirstandbotharerequiredtomatchinorderforthepasswordtobechanged.

Thepasswordisthentestedforcomplexity.Asageneralguideline,passwordsshouldconsistof6to8charactersincludingoneormorecharactersfromeachofthefollowingsets:

• lowercasealphabetics• digits0thru9• punctuationmarks

Examples:

Usepasswdtodisplayaccountstatusinformationforallusers.Thestatusinformationconsistsofsevenfields.Thefirstfieldistheuser´sloginname.Thesecondfieldindicateswhethertheuseraccountislocked(L),hasnopassword(NP),orhasausablepassword(P).Thethirdfieldgivesthedateofthelastpasswordchange.Thenextfourfieldsaretheminimumage,maximumage,warningperiod,andinactivityperiodforthepassword.Theseagesareexpressedindays.$ sudo passwd –a –S

Usepasswdtolocktheaccountnameduser1.Thisoptiondisablesanaccountbychangingthepasswordtoavaluethatmatchesnopossibleencryptedvalue,andbysettingtheaccountexpiryfieldto1.$ sudo passwd –l user1

Page 47: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

47

SystemManagementCommands

psThepscommandreportsonactiveprocesses.(Aprocessisdefinedasaprograminexecution.)Thesyntaxofthiscommandisquitesimple.$ ps [options]

Bydefault(whenrunwithoutoptions),psdisplaysinformationonallprocessesbelongingtothelogged-inuser.ItdisplaystheprocessID(pid=PID),theterminalassociatedwiththeprocess(tname=TTY),thecumulatedCPUtimein[DD-]hh:mm:ssformat(time=TIME),andtheexecutablename(ucmd=CMD).Outputisunsortedbydefault.Amorecommoninvocationofthepscommand,especiallyforsystemadministrators,displaysinformationonallprocessesthatarecurrentlyrunningonthesystem.The-eoptionspecifiesthatallrunningprocessesbedisplayed,whilethe-foptionspecifiesafullformatlisting.Asshowninthisexample,optionscanbegroupedbehindasingle-character.$ ps -ef

Thepscommandprovidesasnapshotofthesystemstateatasinglemomentintime.Ifyouwanttohaverepetitiveupdatesinrealtime,usethetoporhtopcommands,describedbelow.

topThetop programprovidesadynamicreal-timeviewofarunningsystem.ItcandisplaysystemsummaryinformationaswellasalistofprocessesorthreadscurrentlybeingmanagedbytheLinuxkernel.Thetypesofsystemsummaryinformationshownandthetypes,orderandsizeofinformationdisplayedforprocessesareuserconfigurable.topisusefulforsystemadministrators,asitshowswhichusersandprocessesareconsumingthemostsystemresourcesatanygiventime.Althoughtopcantakeanumberofoptionstotailortheinformationdisplayed,runningtopwithoutanyoptionsprovidesawealthofinformationaboutarunningsystem.$ top

Example:Pressingnwhiletopisrunningallowstheusertochangethenumberofprocessesdisplayed.Thedefaultisanunlimitednumberofprocesses.

htophtopisdesignedasanalternativetothetopprogram.Itshowsafrequentlyupdatedlistoftheprocessesrunningonacomputer,normallyorderedbytheamountofCPUusage.Unliketop,htopprovidesafulllistofprocessesrunning,insteadofthetopresource-consumingprocesses.htopusescolorandprovidesvisualinformationaboutprocessor,swapandmemorystatus.Unliketop,htopprovidesmoreflexiblescrollingcapabilities.

Page 48: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

48

It is important to use commands such as htop to monitor processes and resource utilization to be able to quickly detect unusual events or system behavior.

Example:

Runninghtopwiththe-uoption,followedbyausername,showsonlytheprocessesofagivenuser.$ htop -u bondj

It is best to take advantage of the interactive display control features of htop by using the special keys while the command is active. Start htop by simply entering the following command. $ htop

The following keys, among others, are active while using htop:

• Pressing<F1>displaysahelpscreen.Pressanykeytoreturntohtopmainscreen.• Pressing<F2>or<s>displaysthesetupmenuforcontrollingwhatisdisplayedandhow.• Pressing<Arrows>,<PgUP>,<PgDn>,<Home>,<End>keysprovidescrollingcapability.• Pressing<F5>or<t>displaysatreeviewinwhichprocessesareorganizedbyparenthood• Pressing<space>tags/untagsaprocess.• Pressing<F9>or<k>sendsakillsignaltothecurrentlytaggedprocess(es).Usecautiously!• Pressing<F10>or<q>toquithtop.

netstatnetstatisausefultoolforcheckingyournetworkconfigurationandactivity.Itisveryoftenusedtocheckactiveconnections,aswellasnetworksocketsthatarethatarewaitingforaconnection(i.e.,listening).

Examples:

Todisplayallactiveconnectionsandservices,includingTCPandUDP,usethenetstatcommandwithoptions-atun,forall,tcp,udp,withnumericaddress.$ netstat –atun Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 0.0.0.0:5269 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:25 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:993 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:995 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:5222 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:110 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:143 0.0.0.0:* LISTEN tcp 0 0 10.0.1.195:22 10.0.1.54:51643 ESTABLISHED tcp 0 368 10.0.1.195:22 10.0.1.54:51646 ESTABLISHED tcp6 0 0 :::5269 :::* LISTEN tcp6 0 0 :::22 :::* LISTEN

Page 49: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

49

tcp6 0 0 :::25 :::* LISTEN tcp6 0 0 :::993 :::* LISTEN tcp6 0 0 :::995 :::* LISTEN tcp6 0 0 :::5222 :::* LISTEN tcp6 0 0 :::110 :::* LISTEN tcp6 0 0 :::143 :::* LISTEN tcp6 0 0 :::80 :::* LISTEN udp 0 0 10.0.1.195:123 0.0.0.0:* udp 0 0 127.0.0.1:123 0.0.0.0:* udp 0 0 0.0.0.0:123 0.0.0.0:* udp6 0 0 ::1:123 :::* udp6 0 0 :::123 :::*

TodisplayallactiveTCPconnectionsandservices,includingtheassociatedprocesses,usethenetstatcommandwithoptions-atnp,forall,tcp,withnumericaddressandprocessinformation.Notethatsudoisrequiredtodisplaytheprocessnames.$ sudo netstat –atnp Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:5269 0.0.0.0:* LISTEN 1046/lua5.1 tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 878/sshd tcp 0 0 0.0.0.0:25 0.0.0.0:* LISTEN 2051/master tcp 0 0 0.0.0.0:993 0.0.0.0:* LISTEN 2329/dovecot tcp 0 0 0.0.0.0:995 0.0.0.0:* LISTEN 2329/dovecot tcp 0 0 0.0.0.0:5222 0.0.0.0:* LISTEN 1046/lua5.1 tcp 0 0 0.0.0.0:110 0.0.0.0:* LISTEN 2329/dovecot tcp 0 0 0.0.0.0:143 0.0.0.0:* LISTEN 2329/dovecot tcp6 0 0 :::5269 :::* LISTEN 1046/lua5.1 tcp6 0 0 :::22 :::* LISTEN 878/sshd tcp6 0 0 :::25 :::* LISTEN 2051/master tcp6 0 0 :::993 :::* LISTEN 2329/dovecot tcp6 0 0 :::995 :::* LISTEN 2329/dovecot tcp6 0 0 :::5222 :::* LISTEN 1046/lua5.1 tcp6 0 0 :::110 :::* LISTEN 2329/dovecot tcp6 0 0 :::143 :::* LISTEN 2329/dovecot tcp6 0 0 :::80 :::* LISTEN 1710/apache2

serviceTheservicecommandisusedtoruninitializationscriptsforvariousLinuxserverprograms.Thesescriptsarenormallystoredinthe/etc/init.ddirectory.Theservicecommandcanbeusedtostart,stop,andrestarttheserverprograms.

Examples:

TostarttheProsodyXMPPchatserver:$ sudo service prosody start * Starting Prosody XMPP Server prosody [ OK ]

Tostart,stoporrestarttheApacheWebserver,usecommandslikethefollowing:

$ sudo service apache2 start$ sudo service apache2 stop$ sudo service apache2 restart

Page 50: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

50

sshsshisaprogramthatenablessecurecommunicationsfromaclienttoahostcomputer.Youshouldgettheusualpasswordprompt(orbetoldyoucan'tlogin,ifpasswordsaredisabled)whentheconnectionismade.

Examples:

Thegeneralformforloggingintoahostisshownbelow.

$ ssh <username>@<hostname or IP address>

Usesshtoconnecttothecomputernamedlaptopasuserjoe:$ ssh joe@laptop

UsesshtoconnecttothecomputerwithIPaddress192.168.1.1asusermike:$ ssh [email protected]

Page 51: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

51

FilePermissionManagementCommands

chmodThechmodcommandisusedtochangetheaccessrightsforafile/directory.Morespecifically,chmodchangesthefilemodebitsofeachgivenfile,whichcanbeeitherasymbolicrepresentationofchangestomake,oranoctalnumberrepresentingthebitpatternforthenewmodebits.NotethateverythinginLinuxisafile.Directoriesarefiles,filesarefilesanddevicesarefiles.Userswithsudoprivilegesareabletoaccessanyfileonthesystem.

Theformatofasymbolicmodeis[ugoa...][[+-=][perms...]...],wherepermsiseitherzeroormorelettersfromthesetrwxXst,orasingleletterfromthesetugo.Multiplesymbolicmodescanbegiven,separatedbycommas.

Acombinationofthelettersugoacontrolswhichusers’accesstothefilewillbechanged:theuserwhoownsit(u),otherusersinthefile’sgroup(g),otherusersnotinthefile’sgroup(o),orallusers(a).Ifnoneofthesearegiven,theeffectisasif(a)weregiven,butbitsthataresetintheumaskarenotaffected.

Theoperator+causestheselectedfilemodebitstobeaddedtotheexistingfilemodebitsofeachfile;-causesthemtoberemoved;and=causesthemtobeaddedandcausesunmentionedbitstoberemovedexceptthatadirectory’sunmentionedsetuserandgroupIDbitsarenotaffected.

ThelettersrwxXstselectfilemodebitsfortheaffectedusers:read(r),write(w),execute(orsearchfordirectories)(x),execute/searchonlyifthefileisadirectoryoralreadyhasexecutepermissionforsomeuser(X),setuserorgroupIDonexecution(s),restricteddeletionflagorstickybit(t).Insteadofoneormoreoftheseletters,youcanspecifyexactlyoneofthelettersugo:thepermissionsgrantedtotheuserwhoownsthefile(u),thepermissionsgrantedtootheruserswhoaremembersofthefile’sgroup(g),andthepermissionsgrantedtousersthatareinneitherofthetwoprecedingcategories(o).

Anumericmodeisfromonetofouroctaldigits(0-7),derivedbyaddingupthebitswithvalues4,2,and1.Omitteddigitsareassumedtobeleadingzeros.ThefirstdigitselectsthesetuserID(4)andsetgroupID(2)andrestricteddeletionorsticky(1)attributes.Theseconddigitselectspermissionsfortheuserwhoownsthefile:read(4),write(2),andexecute(1);thethirdselectspermissionsforotherusersinthefile’sgroup,withthesamevalues;andthefourthforotherusersnotinthefile’sgroup,withthesamevalues.

Examples:

Giventhefollowingfilesandpermissions:-rw-r--r-- 1 user user 0 Nov 19 20:13 file1 -rw-r--r-- 1 user user 0 Nov 19 20:13 file2 -rw-r--r-- 1 user user 0 Nov 19 20:13 file3 -rw-r--r-- 1 user user 0 Nov 19 20:13 file4

Usechmodtoaddownerexecute(x)bittofile1:$ chmod u+x file1

Thisiswhatthefilelistingforfile1nowlookslike: -rwxr--r-- 1 user user 0 Nov 19 20:13 file1

Page 52: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

52

Usechmodtoaddotherwrite(w)andexecute(x)bitstofile2:$ chmod o+wx file2

Thisiswhatthefilelistingforfile2nowlookslike:

-rw-r--rwx 1 user user 0 Nov 19 20:13 file2

Usechmodtoremovegroupread(r)bitfromfile3:

$ chmod g-r file3

Thisiswhatthefilelistingforfile3nowlookslike:-rw----r-- 1 user user 0 Nov 19 20:13 file3

Usechmod,innumericmode,toaddread(4),write(2)andexecute(1)toeveryoneforfile4:$ chmod 777 file4

Thisiswhatthefilelistingforfile4nowlookslike: -rwxrwxrwx 1 user user 0 Nov 19 20:13 file4

chownThechowncommandisusedtochangethefileownerand/orgroup.

Examples:

Usechowntochangetheownerofmydirectorytoroot:$ chown root mydirectory

Youcanchangetheownerof mydirectorytorootandthegrouptostudents:

$ chown root:students mydirectory

Youcanchangetheownerof mydirectory,alongwithitsincludedfiles,toroot(Note:Greatcareshouldbeexercisedwhenapplyingchownrecursively):$ chown -hR root mydirectory

sudoThesudocommandisusedtoexecuteaprivilegedcommand(onethattypicallyrequiresbeingloggedonasroot).Youwillbepromptedforyourpasswordthefirsttimeyouusesudo.

Example:Usesudotoexecutethemountcommand,whichcanonlybeexecutedbyroot:

$ sudo mount /dev/sda3 /media/flashdrive

Page 53: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

53

HelpandEditorCommands

manmanisusedfordisplayingmanualpages(usuallycalledmanpages).Manpagesareself-containedreferencedocumentsstoredonthehost’sharddrive.Theyareusuallyshort,butsomemanpagescanbequitelong.Ubuntu'smanpagesystemhasareferenceforeverycommand-lineprogram,andinmanycasesitistheonlysourceofinformation.Itoffersaquickreferencetotheswitchesandoptionsavailableinterminal-basedcommandsandprograms.mandisplaysmanpagesusingapagingsystem,whichdisplaystheinformationonepageatatime.

Example:Usemantodisplaythemanpagesforthepscommand:$ man ps

aproposTheaproposcommandprovidesameansofsearchingmanpagenamesanddescriptions.Eachmanualpagehasashortdescriptionavailablewithinit.apropossearchesthedescriptionsforinstancesofkeyword.Keywordisusuallyaregularexpression,asif(-r)wasused,ormaycontainwildcards(-w),ormatchtheexactkeyword(-e).Usingtheseoptions,itmaybenecessarytoquotethekeywordorescape(\)thespecialcharacterstostoptheshellfrominterpretingthem.

Options:

apropos[-e|-w|-r]keyword...

-rInterpreteachkeywordasaregularexpression.Thisisthedefaultbehavior.Eachkeywordwillbematchedagainstmanpagenamesanddescriptionsindependently.Itcanmatchanypartofeither.Matchingisnotlimitedtowordboundaries.

-wInterpreteachkeywordasapatterncontainingshellstylewildcards.Eachkeywordwillbematchedagainstthemanpagenamesandthedescriptionsindependently.If(-e,--exact)isalsoused,amatchwillonlybefoundifanexpandedkeywordmatchesanentiredescriptionorpagename.Otherwise,thekeywordisalsoallowedtomatchonwordboundariesinthedescription.

-eEachkeywordwillbeexactlymatchedagainstthepagenamesandthedescriptions.

Example:Tofindthemanpagescontainingthekeywordpsyoucouldenterthefollowingcommand:$ apropos –e ps

Page 54: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

54

emacsemacsisoneoftheoldestandmostversatiletexteditorsavailableforLinuxandUNIX-basedsystems.Itiswellknownforitspowerfulandricheditingfeatures.emacsisalsomorethanjustatexteditor;itcanbecustomizedandextendedwithdifferent"modes"thatsupportspecializededitingfeaturesparticulartotasks(e.g.,writingJava,CorPythonprograms).Ittakestimetolearnhowbesttointeractwithemacs--bepatient.

Commandsinemacsarecontrolcharacters(e.g.,holddownthe<CTRL>keywhiletypinganothercharacter).Hereareafewofthemostcommonlyusedcommands.

HelpCommands

<CTRL>-h help-command:firstcharacterinlotsofusefulhelpcommands

<CTRL>-ht help-with-tutorial:commandtorunthetutorial

<CTRL>-ha command-apropos:promptsforastringandthensearchesforallemacscommandsthatcontainsthatstring

<CTRL>-h? help-for-help:describeshowtousethehelpfacilities

FileReading/WritingCommands

<CTRL>-x<CTRL>-f

find-file:firstpromptsforafilenameandthenloadsthatfileintoaneditorbufferofthesamename

<CTRL>-x<CTRL>-s

save-buffer:savesthebufferintotheassociatedfilename

OtherCommands

<CTRL>-x<CTRL>-c

save-buffers-kill-emacs:whenyouarefinishedediting,tosavetheeditedbutunsavedbuffersandtoreturnyoutotheUNIXprompt

<CTRL>-g keyboard-quit:ifwhiletypingacommandyoumakeamistakeandwanttostop,thisabortsacommandinprogress

<CTRL>-xu undo:undoesthelastcommandtyped,incaseyoumadeamistake

Example:Tostartemacsandopenafilenamedmyfile:

$ emacs myfile

Page 55: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

55

FileSystemCommands

dfThedf(diskfilesystem)commanddisplaystheamountofdiskspaceavailableononeormorefilesystems.Bydefault,dfreportsthespaceavailableonallcurrentlymountedfilesystems.Diskspaceisshownin1-kilobyteblocksbydefault,whichcanbedifficulttoread.Usingthe-h(human-readable)optioncausesdftoprintsizesinhumanreadableformat(e.g.,1K,234M,2G).

Example:

Todisplayallmountedfilesystemsandtheirdiskusageinhuman-readableform:$ df -h

duThedu(diskusage)commandreportsthesizesofdirectorytrees,includingofalloftheircontentsandthesizesofindividualfiles.Thismakesitusefulfortrackingdownspacehogs,i.e.,directoriesandfilesthatconsumelargeorexcessiveamountsofspaceonaharddisk.

duiscommonlyemployedbysystemadministratorsasasupplementtoautomatedmonitoringandnotificationprogramsthathelppreventkeydirectoriesandpartitions(logicallyindependentsectionsofaharddisk)fromfillingup.Full,orevennearlyfull,directoriesandpartitionscancauseasystemtoslowdown,preventusersfromlogginginandevenresultinasystemcrash.Althoughvisuallyidentifyingheavyconsumersofdiskspacecanbepracticaliftherearerelativelyfewusersonasystem,itisclearlynotefficientforlargesystemswithhundredsorthousandsofusers.

Thebasicsyntaxisasfollows.Ofcourse,likemostLinuxcommands,duacceptsanumberofoptionsthatcanchangeitsbehavior.

Generalformat:$ du <directories and/or files>

Example:

It’sagoodideaforsystemadministratorstomonitorthesizesofusers’homedirectories,lookingoutforspacehogs.Thefollowingcommandlineshowstheoverallsizeofthe/homedirectory,alongwithitsfirst-levelsubdirectories.Inthisexampletheresultsarepipedthroughthesortcommandtodisplaythedirectoriesinreverseorderbysize,fromlargesttothesmallest.Formoreinformationonsort,seeView/SearchTextFilesintheSupportingDocumentssection.

$ sudo du --max-depth=1 /home/ | sort –rn

Page 56: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

56

LinuxCheatSheet

Page 57: CyberCorps Participant’s Guide - University of Southern ...usm.maine.edu/sites/default/files/tech/CyberCorps Participant Guide... · CyberCorps Participant’s Guide 2 ... The VyOS

57

Index

addgroup,45adduser,44ApacheWebserver,19apropos,53cat,40chmod,51chown,52delgroup,45deluser,27,45df,55Dovecot,20du,55emacs,54firewallrules,14grep,41head,40htop,47less,40Linuxcheatsheet,56man,53manpages,53mount,52netstat,48networkdiagram,7networktrafficmonitoring,10OTRS,38

packetcapture,15passwd,46pfSense,12pfSensefirewall,13pftop,16Pidgin,43ping,8,35Postfix,20processID(PID),23Prosody,26prosodyctl,27ps,47service,49show interfaces,11show ip route,12sort,42SquirrelMail,18ssh,50sudo,52tail,40tcpdump,10,15telnet,35top,47traceroute,8,35useraccounts,25VyOS,11w,44who,44XMPP,26