Bird
Raised Fist0
Cybersecurityknowledge~10 mins

Linux security fundamentals in Cybersecurity - Interactive Code Practice

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to display the current user in Linux.

Cybersecurity
echo [1]
Drag options to blanks, or click blank then click option'
A$USER
B$HOME
C$SHELL
D$PATH
Attempts:
3 left
💡 Hint
Common Mistakes
Using $HOME which points to the user's home directory.
Using $PATH which lists executable search paths.
2fill in blank
medium

Complete the command to change file permissions to read, write, and execute for the owner only.

Cybersecurity
chmod [1] filename
Drag options to blanks, or click blank then click option'
A700
B777
C755
D644
Attempts:
3 left
💡 Hint
Common Mistakes
Using 777 which gives all permissions to everyone.
Using 644 which does not allow execute permission.
3fill in blank
hard

Fix the error in the command to list all files including hidden ones.

Cybersecurity
ls [1]
Drag options to blanks, or click blank then click option'
A-r
B-l
C-h
D-a
Attempts:
3 left
💡 Hint
Common Mistakes
Using -l which lists files in long format but does not show hidden files.
Using -h which shows sizes in human-readable format.
4fill in blank
hard

Fill both blanks to create a user and set a password in Linux.

Cybersecurity
[1] newuser && [2] newuser
Drag options to blanks, or click blank then click option'
Aadduser
Bpasswd
Cuserdel
Dusermod
Attempts:
3 left
💡 Hint
Common Mistakes
Using userdel which deletes a user.
Using usermod which modifies user properties but does not create.
5fill in blank
hard

Fill all three blanks to create a dictionary of users and their home directories, filtering only users with home starting with '/home'.

Cybersecurity
users = [1]: [2] for [3] in open('/etc/passwd') if [2].startswith('/home')}}
Drag options to blanks, or click blank then click option'
Aline.split(':')[0]
Bline.split(':')[5]
Cline
Duser
Attempts:
3 left
💡 Hint
Common Mistakes
Using wrong field indexes for username or home directory.
Not filtering lines correctly.

Practice

(1/5)
1. Which of the following best describes the primary purpose of Linux file permissions?
easy
A. To backup files regularly
B. To speed up file access times
C. To control who can read, write, or execute files
D. To encrypt files automatically

Solution

  1. Step 1: Understand file permissions in Linux

    Linux file permissions determine which users can read, write, or execute a file or directory.
  2. Step 2: Identify the purpose of permissions

    Permissions protect files by controlling access, not by speeding access, encrypting, or backing up.
  3. Final Answer:

    To control who can read, write, or execute files -> Option C
  4. Quick Check:

    File permissions = control access [OK]
Hint: Permissions control access rights to files and folders [OK]
Common Mistakes:
  • Confusing permissions with encryption
  • Thinking permissions speed up file access
  • Assuming permissions handle backups
2. Which command correctly changes the owner of a file named report.txt to user alice?
easy
A. chmod alice report.txt
B. chown alice report.txt
C. chgrp alice report.txt
D. owner alice report.txt

Solution

  1. Step 1: Identify the command to change file owner

    The chown command changes the owner of a file in Linux.
  2. Step 2: Match the command syntax

    The correct syntax is chown username filename, so chown alice report.txt is correct.
  3. Final Answer:

    chown alice report.txt -> Option B
  4. Quick Check:

    Change owner = chown [OK]
Hint: Use chown to change file ownership [OK]
Common Mistakes:
  • Using chmod instead of chown
  • Confusing chgrp (changes group) with chown
  • Typing invalid commands like owner
3. What will be the output of the command ls -l /etc/passwd in a typical Linux system?
medium
A. Deletes the passwd file
B. Displays the contents of the passwd file
C. Changes the permissions of the passwd file
D. Shows detailed information including permissions, owner, and size of the passwd file

Solution

  1. Step 1: Understand the ls -l command

    The ls -l command lists files with detailed info like permissions, owner, size, and modification date.
  2. Step 2: Apply to /etc/passwd

    Running ls -l /etc/passwd shows detailed info about the passwd file, not its contents or changes.
  3. Final Answer:

    Shows detailed information including permissions, owner, and size of the passwd file -> Option D
  4. Quick Check:

    ls -l = detailed file info [OK]
Hint: ls -l lists file details, not contents [OK]
Common Mistakes:
  • Confusing ls -l with cat command
  • Thinking ls -l changes file permissions
  • Assuming ls -l deletes files
4. You try to change a file's permissions using chmod 777 file.txt but get a 'Permission denied' error. What is the most likely cause?
medium
A. You are not the file owner or lack sudo privileges
B. The file does not exist
C. chmod command is misspelled
D. The file is already set to 777

Solution

  1. Step 1: Understand permission requirements for chmod

    Only the file owner or a user with sudo rights can change file permissions.
  2. Step 2: Analyze the error cause

    A 'Permission denied' error means you lack rights to modify the file, not that the file is missing or command is wrong.
  3. Final Answer:

    You are not the file owner or lack sudo privileges -> Option A
  4. Quick Check:

    Permission denied = insufficient rights [OK]
Hint: Permission denied means you lack rights or sudo [OK]
Common Mistakes:
  • Assuming file doesn't exist
  • Thinking chmod command is incorrect
  • Believing file is already set to 777
5. A system administrator wants to restrict SSH access to only users in the group sshusers. Which configuration change in /etc/ssh/sshd_config achieves this?
hard
A. Add the line: AllowGroups sshusers and restart SSH service
B. Add the line: DenyUsers sshusers and restart SSH service
C. Change file permissions of /etc/ssh/sshd_config to 777
D. Disable SSH service completely

Solution

  1. Step 1: Identify SSH access control options

    The AllowGroups directive in sshd_config limits SSH login to specified groups.
  2. Step 2: Apply the correct configuration and restart SSH

    Adding AllowGroups sshusers and restarting SSH restricts access to that group only.
  3. Final Answer:

    Add the line: AllowGroups sshusers and restart SSH service -> Option A
  4. Quick Check:

    AllowGroups limits SSH access by group [OK]
Hint: Use AllowGroups in sshd_config to restrict SSH access [OK]
Common Mistakes:
  • Using DenyUsers instead of AllowGroups
  • Changing permissions to 777 (unsafe)
  • Disabling SSH instead of restricting access