By Fatskills Exam Guides Team — the exam nerds behind 28,500+ quizzes and 2.1M practice questions across 500+ global exams.
(HTTPS, SSH, SFTP, SNMPv3, DNSSEC)
Secure protocols are the encrypted highways of your network. Without them, every login, file transfer, or device query is sent in plaintext—like shouting your password across a crowded room.
Real-world scenario: You’re a sysadmin at a healthcare company. A legacy medical device (MRI machine) still uses unencrypted SNMPv2 to report status. An attacker on the same network sniffs the traffic, extracts the community string (public), and reboots the device mid-scan, corrupting patient data. Now you’re explaining to the CISO why you didn’t enforce SNMPv3 (which encrypts credentials and data).
public
Or: Your dev team hardcodes FTP credentials in a script to pull logs. A junior engineer accidentally commits the script to GitHub. Now your AWS keys, database passwords, and internal IPs are exposed. If they’d used SFTP (SSH File Transfer Protocol), the credentials would’ve been encrypted in transit.
Why this matters in production: - Compliance: HIPAA, PCI-DSS, GDPR require encryption for sensitive data in transit. - Attack surface: Unencrypted protocols are low-hanging fruit for attackers (e.g., ARP spoofing + MITM). - Trust: Customers (and auditors) won’t tolerate plaintext logins in 2024.
Your superpower: You’ll spot unencrypted protocols in 5 seconds (e.g., telnet, FTP, HTTP, SNMPv1/v2) and replace them with secure alternatives—without breaking legacy systems.
telnet
FTP
HTTP
SNMPv1/v2
http://
rlogin
ssh-keygen
mysql -h localhost -P 3306
~/.ssh/config
Host prod-server
ssh prod-server
ChrootDirectory /home/%u
sshd_config
noAuthNoPriv
authNoPriv
authPriv
bank.com
Prerequisites: - A Linux server (Ubuntu 22.04 LTS). - A domain name (e.g., example.com). - Port 80 and 443 open in the firewall.
example.com
sudo apt update sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d example.com -d www.example.com
curl -I https://example.com
Expected output:
HTTP/2 200 server: nginx/1.18.0 strict-transport-security: max-age=31536000; includeSubDomains
strict-transport-security
sudo crontab -e
Add:
0 12 * * * /usr/bin/certbot renew --quiet
Prerequisites: - A Linux server (Ubuntu 22.04). - A user (sftpuser) who needs file access.
sftpuser
sudo mkdir -p /sftp/jail/sftpuser/uploads sudo chown root:root /sftp/jail sudo chown sftpuser:sftpuser /sftp/jail/sftpuser/uploads
Edit /etc/ssh/sshd_config:
/etc/ssh/sshd_config
sudo nano /etc/ssh/sshd_config
Add at the end:
Match User sftpuser ForceCommand internal-sftp PasswordAuthentication yes ChrootDirectory /sftp/jail PermitTunnel no AllowAgentForwarding no AllowTcpForwarding no X11Forwarding no
ChrootDirectory
/sftp/jail
ForceCommand internal-sftp
sudo systemctl restart sshd
sftp [email protected]
put test.txt
/sftp/jail/sftpuser/uploads
Prerequisites: - A Cisco router (IOS 15+). - Console/SSH access.
enable configure terminal snmp-server group V3GROUP v3 priv snmp-server user SNMPUSER V3GROUP v3 auth sha MyAuthPass123 priv aes 128 MyPrivPass123 snmp-server host 192.168.1.100 version 3 priv SNMPUSER
auth sha
priv aes 128
show snmp user
User name: SNMPUSER Engine ID: 800000090300AABBCCDDEEFF storage-type: nonvolatile active Authentication Protocol: SHA Privacy Protocol: AES128 Group-name: V3GROUP
snmpwalk -v 3 -u SNMPUSER -a SHA -A MyAuthPass123 -x AES -X MyPrivPass123 192.168.1.1 system
Strict-Transport-Security: max-age=31536000
PasswordAuthentication no
AllowUsers [email protected]
mail.example.com
dig +trace example.com DS
certbot renew --dry-run
/var/log/auth.log
dig +dnssec example.com
return 301 https://$host$request_uri;
sftp
scp
snmpwalk
dnssec-signzone
SFTP (SSH-based) or FTPS (FTP + TLS)
"What’s the difference between SNMPv2 and SNMPv3?"
SNMPv3: Encrypted auth + privacy (authPriv).
"How do you prevent DNS spoofing?"
DNS over HTTPS (DoH) (doesn’t prevent spoofing, just encrypts queries).
"Which SSH key type is most secure?"
DSA (deprecated).
"What’s the default port for HTTPS?"
Scenario: You inherit a legacy web app running on http://oldapp.example.com. The dev team says: - "We can’t use HTTPS because the app breaks on port 443." - "We use FTP to upload files."
http://oldapp.example.com
Your task:1. Force HTTPS without breaking the app.2. Replace FTP with SFTP.3. Verify both work.
Solution:1. HTTPS (Nginx config): ```nginx server { listen 80; server_name oldapp.example.com; return 301 https://$host$request_uri; }
server { listen 443 ssl; server_name oldapp.example.com; ssl_certificate /etc/letsencrypt/live/oldapp.example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/oldapp.example.com/privkey.pem; # App config here } ``` - Why it works: Redirects HTTP-HTTPS before the app sees the request.
bash sudo apt install vsftpd sudo systemctl stop vsftpd # Disable FTP sudo apt install openssh-server sudo useradd -m -s /bin/false sftpuser # No shell access sudo mkdir -p /home/sftpuser/uploads sudo chown sftpuser:sftpuser /home/sftpuser/uploads
Match User sftpuser ForceCommand internal-sftp ChrootDirectory /home/sftpuser
Restart SSH: sudo systemctl restart sshd.
Verify:
curl -I http://oldapp.example.com
sftp user@host
ssh user@host
snmpwalk -v 3 -u user -a SHA -A pass -x AES -X pass host
Default Credentials to Change: - SNMPv2: public (read-only), private (read-write). - SSH: Disable root login (PermitRootLogin no). - FTP: Anonymous login (anonymous:anonymous).
private
root
PermitRootLogin no
anonymous:anonymous
nmap -sV --script ssl-enum-ciphers example.com
Final Pro Tip: Run this command right now on your network: ```bash sudo nmap -sV --script ssl-enum-ciphers -p 443,22,21,161 192.168
Join 4M+ learners. Unlock unlimited quizzes, wrong-answer tracking, flashcards + reminders, study guides, and 1-on-1 challenges.