Gabay na Kumpletong Ubuntu SSH Config | Pag-install, Seguridad, Problema

目次

1. Panimula

Ang pag-set up ng SSH sa Ubuntu ay napakahalaga sa pamamahala ng remote server. Ang SSH (Secure Shell) ay isang protocol na nagbibigay ng ligtas na encrypted na komunikasyon, at malawakang ginagamit upang ma-access ang server mula sa malayo, magpatupad ng mga command, o magpadala ng mga file.

Sa artikulong ito, ipapaliwanag nang detalyado ang paraan ng pag-set up ng SSH sa Ubuntu, mula sa basic na hakbang sa pag-install hanggang sa advanced na mga hakbang sa seguridad.

1.1 Dahilan ng Pag-set up ng SSH sa Ubuntu

1.1.1 Ano ang SSH?

Ang SSH (Secure Shell) ay isang protocol para sa ligtas na komunikasyon sa network. Karaniwang ginagamit ang SSH para sa pag-login sa remote server, paglilipat ng file, tunneling (port forwarding), at iba pa. Hindi tulad ng tradisyunal na Telnet o FTP, ang SSH ay nag-e-encrypt ng nilalaman ng komunikasyon, kaya mataas ang antas ng seguridad nito.

1.1.2 Mga Kaso Kung Saan Kailangan ang SSH sa Ubuntu

May mga scenario sa remote management ng Ubuntu na tulad ng sumusunod.

  • Pamamahala ng Cloud Server:Sa mga cloud service tulad ng AWS, GCP, Vultr, ginagamit ang SSH upang mag-connect remotely sa server.
  • Remote Operation sa LAN Environment:Mag-access gamit ang SSH sa internal na server o development machine upang magsagawa ng remote na gawain.
  • Pamamahala ng IoT Device:I-control mula sa malayo ang mga embedded device tulad ng Raspberry Pi.

Sa default na setting ng Ubuntu, ang SSH server ay hindi naka-enable. Kaya, upang magamit ang SSH, kailangang i-install ito nang manu-mano at i-configure nang angkop.

2. Basic na Pag-configure ng SSH

Upang magamit ang SSH sa Ubuntu, kailangan mong i-install ang SSH server (OpenSSH) at gawin ang angkop na pag-configure. Sa seksyong ito, tatalakayin nang detalyado mula sa paraan ng pag-install ng SSH, basic na pag-configure, pag-configure ng firewall, at mga paraan ng pagkonekta.

2.1 Pag-install at Pagsisimula ng OpenSSH

2.1.1 Ano ang OpenSSH?

Ang OpenSSH (Open Secure Shell) ay isang open-source na software na nag-i-implementa ng SSH protocol. Bukod sa remote connection, ito ay may mga tampok din tulad ng ligtas na paglilipat ng file (SCP o SFTP) at port forwarding.

2.1.2 Pag-install ng OpenSSH

Sa Ubuntu, hindi default na naka-install ang SSH server, kaya gagamitin ang sumusunod na command upang i-install ito.

sudo apt update && sudo apt install -y openssh-server

Ang command na ito ay mag-u-update ng listahan ng mga package sa pinakabagong estado at mag-i-install ng OpenSSH server.

2.1.3 Pagsisimula ng SSH Server at Pag-set ng Auto-start

Kapag natapos na ang pag-install, simulan ang SSH server at i-enable ang auto-start.

sudo system enable --now ssh

Sa pamamagitan ng enable

option, awtomatikong magsisimula ang SSH service kapag nag-reboot ang OS.

2.1.4 Pagsusuri ng Pag-andar ng SSH

Upang suriin kung normal na gumagana ang SSH server, i-execute ang sumusunod na command.

systemctl status ssh

Kung ipapakita ang output na katulad nito, normal na gumagana ang SSH server.

● ssh.service – OpenBSD Secure Shell server Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled) Active: active (running) Fri 2025-02-28 12:00:00 UTC; 5min agoKung ipapakita tulad ng inactive (dead) o < maaari mong simulan ito nang manu-mano gamit ang sumusunod na command.sudo systemctl start ssh

2.2 Pag-configure ng Firewall (UFW)

Sa Ubuntu, may

ufw (Uncomplicated Firewall) na madaling i-configure na firewall. Upang payagan ang SSH connection, i-configure nang angkop ang UFW.2.2.1 Pagsusuri ng Status ng UFW

Unahin, suriin ang kasalukuyang status ng firewall.

sudo ufw status

Halimbawa ng Output (Kung hindi naka-activate ang UFW)

Status: inactive

Halimbawa ng Output (Kung naka-activate ang UFW)

Status: active To Action From — —— —- 22/tcp ALLOW Anywhere

2.2.2 Pagpayag ng SSH Communication

Upang payagan ang default port

22 ng SSH, i-execute ang sumusunod na command.sudo ufw allow ssh

O kaya, maaari ring tukuyin ang port number upang payagan ito nang eksplisito.

sudo ufw allow 22/tcp

2.2.3 Pag-activate ng UFW

Kung hindi naka-activate ang UFW, i-activate ito gamit ang sumusunod na command.

sudo ufw enable

Kapag na-activate ang UFW, lahat ng paparating na traffic ay i-block sa default, kaya tiyakin na pinayagan ang SSH connection bago i-activate.

2.2.4 Pagsusuri ng Pag-configure

Suriin muli kung naipaliwanag na ang pag-configure ng firewall.

sudo ufw status verbose

Halimbawa ng Output

Status: active To Action From — —— —- 22/tcp ALLOW Anywhere 22/tcp (v6) ALLOW Anywhere (v6)

Kung ipapakita ito, pinayagan na ang SSH connection.

2.3 Basic na Paraan ng Pagkonekta sa SSH

Kapag na-verify na na gumagana ang SSH server, subukan ang aktwal na connection mula sa client PC.

2.3.1 Connection mula sa Linux/macOS

Sa Linux o macOS, buksan ang terminal at i-execute ang sumusunod na command.

ssh username@IP_address

Halimbawa:

ssh user@192.168.1.100

Sa unang pagkonekta, maaaring lumabas ang babalang mensahe na katulad nito.

The authenticity of host ‘192.168.1.100 (192.168.1.100)’ can’t be established. ECDSA key fingerprint is SHA256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx. Are you sure you want to continue connecting (yes/no)?

I-type ang 

yes at pindutin ang Enter upang magtatag ng connection.

2.3.2 Connection mula sa Windows

Sa Windows, maaaring gumamit ng PowerShell o PuTTY upang makonekta sa SSH.

Kung gagamitin ang PowerShell
Sa Windows 10 at pataas, may built-in na SSH client ang PowerShell. Maaari kang makonekta gamit ang sumusunod na command.

ssh username@IP_address

Kung gagamitin ang PuTTY

  1. Official site mula sa PuTTY download at i-install
  2. Buksan ang PuTTY, i-enter ang IP address ng server sa Host Name (or IP address)
  3. Connection type sa SSH, at i-click ang Open
  4.  

Buod

Sa seksyong ito, ipinaliwanag namin ang mga pangunahing hakbang sa pag-set up ng SSH sa Ubuntu.

  • Paano mag-install at i-start ang OpenSSH
  • Mga setting upang payagan ang mga koneksyon ng SSH gamit ang UFW
  • Mga paraan ng koneksyon ng SSH sa Linux/macOS at Windows

3. Pagpapatibay ng Seguridad ng SSH

Ang SSH ay isang maginhawang tool na nagbibigay-daan sa remote connection, ngunit kung gagamitin nang walang pagbabago, maaaring tumaas ang mga panganib sa seguridad. Madalas na tinutukan ng mga attacker ang SSH server sa pamamagitan ng brute force attacks o port scans. Kaya, mahalagang gumawa ng tamang mga setting sa seguridad upang bumuo ng ligtas na SSH environment.

3.1 Pagbabawal sa Login ng Root User

Sa default, maaaring pinapayagan ang login ng root user sa SSH settings ng Ubuntu. Ang root account ay may malakas na pahintulot sa buong system, kaya madaling maging target ng mga attacker. Sa pamamagitan ng pagbabawal sa root login at paggamit ng ordinaryong user account, mapapahusay ang seguridad.

3.1.1 Hakbang sa Pagsasaayos

  1. I-edit ang SSH config file /etc/ssh/sshd_config.
sudo nano /etc/ssh/sshd_config
  1. Hanapin ang sumusunod na linya at baguhin sa PermitRootLogin no.
PermitRootLogin no
  1. I-save ang file at i-restart ang SSH service.
sudo systemctl restart ssh
  1. Upang suriin kung na-apply ang pagbabago, i-execute ang sumusunod na command.
sudo grep PermitRootLogin /etc/ssh/sshd_config

Kung ang output ay PermitRootLogin no, tama ang pag-apply ng setting.

3.2 Pagwawalang-bisa ng Password Authentication at Pagsisimula ng Public Key Authentication

Sa SSH, mas ligtas ang paggamit ng public key authentication kaysa sa password authentication. Sa public key authentication, hindi na kailangang i-input ang password; gumagamit ito ng SSH key pair (public key at private key) para sa authentication, na binabawasan ang panganib ng brute force attacks.

3.2.1 Paglikha ng SSH Key

Gumawa ng SSH key sa local PC.

ssh-keygen -t rsa -b 4096 -f ~/.ssh/id_rsa

Kapag natapos ang paglikha, magiging 2 files ito.

  • Private Key (id_rsa)I-save sa local PC (huwag i-publish sa labas)
  • Public Key (id_rsa.pub)I-register sa server side

3.2.2 Paglilipat ng Public Key sa Server

Gumamit ng sumusunod na command upang ilipat ang public key sa server.

ssh-copy-id username@server_ip_address

3.2.3 Pagwawalang-bisa ng Password Authentication

Buuin ang SSH config file.

sudo nano /etc/ssh/sshd_config

Hanapin ang sumusunod na linya at baguhin sa PasswordAuthentication no.

PasswordAuthentication no

I-restart ang SSH upang i-apply ang setting.

sudo systemctl restart ssh

3.3 Payagang SSH Access Lamang sa Tiyak na User

Upang mapahusay ang seguridad ng SSH, maaaring limitahan ang mga user na makakakonekta sa SSH.

3.3.1 Hakbang sa Pagsasaayos

  1. Buuin ang SSH config file /etc/ssh/sshd_config.
sudo nano /etc/ssh/sshd_config
  1. Tukuyin ang mga pinapayagang user.
AllowUsers username1 username2
  1. I-restart ang SSH upang i-apply ang setting.
sudo systemctl restart ssh

3.4 Pagbabago ng SSH Port

Ang default port ng SSH (22) ay madaling maging target ng mga attacker, kaya mapapahusay ang seguridad sa pamamagitan ng pagbabago ng port number.

3.4.1 Hakbang sa Pagsasaayos

  1. Buuin ang SSH config file.
sudo nano /etc/ssh/sshd_config
  1. Hanapin ang linya Port 22 at baguhin, halimbawa sa Port 2200.
Port 2200
  1. I-save ang setting at i-restart ang SSH.
sudo systemctl restart ssh

3.4.2 Pag-update ng Firewall Setting

Matapos baguhin ang port, payagan ang bagong port number sa UFW.

sudo ufw allow 2200/tcp

Suriin kung na-apply ang setting.

sudo ufw status

3.5 Paggamit ng Fail2Ban upang Pigilan ang Brute Force Attacks

Ang Fail2Ban ay isang tool na tumutukoy sa hindi tamang SSH access attempts at pansamantalang nagblo-block ng IP address na nabigo nang ilang beses.

3.5.1 Pag-install ng Fail2Ban

sudo apt install fail2ban -y

3.5.2 Paglikha ng Config File

Kopyahin ang config file ng Fail2Ban.

sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

pagkatapos, buuin ang config file.

sudo nano /etc/fail2ban/jail.local

Baguhin ang sumusunod na setting.

[sshd]
enabled = true
port = 2200
maxretry = 3
findtime = 600
bantime = 3600

3.5.3 Pag-restart ng Fail2Ban

I-restart ang Fail2Ban upang i-apply ang setting.

sudo systemctl restart fail2ban

3.5.4 Pagsusuri ng Ban List

sudo fail2ban-client status sshd

Buod

Sa seksyong ito, ipinaliwanag namin ang mga paraan upang palakasin ang seguridad ng SSH.

  • Ipinagbabawal ang root login
  • I-disable ang password authentication at ipakilala ang public key authentication
  • Pahintulutan ang SSH access lamang sa tiyak na mga user
  • Baguhin ang SSH port
  • Ipakilala ang Fail2Ban at i-block ang hindi awtorisadong access

Sa pamamagitan ng pagpapatupad ng mga sukat na ito, maaari mong buuin ang mas ligtas na SSH environment.

4. Mga Advanced na Setting ng SSH

Kapag natapos na ang basic na setting ng SSH at pagpalakas ng seguridad, susunod na ay gagawin ang advanced na setting upang gawing mas kaginhawaan at ligtas ang paggamit ng SSH. Sa seksyong ito, tatalakayin nang detalyado ang mga advanced na setting ng SSH, kabilang ang pamamahala ng ssh.socket sa Ubuntu 22.10 at pataas, SSH tunnel (port forwarding), setting ng paghihintay sa maraming port, pagpayag sa tiyak na IP address, at iba pa.

4.1 Paggamit ng ssh.socket sa Ubuntu 22.10 at Pataas

Sa Ubuntu 22.10 at pataas, maaaring magbago ang pamamahala ng serbisyo ng SSH mula sa ssh.service patungo sa ssh.socket. Ito ay mekanismo kung saan ang SSH ay magsisimula nang dinamiko kapag natanggap ang kahilingan, na nagdudulot ng pagtitipid sa mga resource.

4.1.1 Pagsusuri ng Status ng ssh.socket

Uunahin, suriin kung ang ssh.socket ay epektibo na.

sudo systemctl status ssh.socket

Halimbawa ng Output (Kung Epektibo)

● ssh.socket - OpenSSH Server Socket
   Loaded: loaded (/lib/systemd/system/ssh.socket; enabled; vendor preset: enabled)
   Active: active (listening) since Fri 2025-02-28 12:00:00 UTC

4.1.2 Pag-e-enable at Pag-disable ng ssh.socket

Kung ang ssh.socket ay hindi epektibo, maaari itong i-enable gamit ang sumusunod na utos.

sudo systemctl enable --now ssh.socket

Sa kabilang banda, kung gagamitin ang tradisyunal na ssh.service, i-disable ang ssh.socket at i-enable ang ssh.service nang ganito.

sudo systemctl disable --now ssh.socket
sudo systemctl enable --now ssh.service

4.2 SSH Tunnel (Port Forwarding)

Gamit ang SSH tunnel, maaaring magtatag ng ligtas na komunikasyon sa pagitan ng remote server at lokal na PC, at ilipat ang data nang hindi dumadaan sa panlabas na network.

4.2.1 Lokal na Port Forwarding

Ito ay kapaki-pakinabang kapag nagsisikap na ma-access nang ligtas ang database o web server sa remote server.

Halimbawa: Koneksyon mula sa Lokal na PC sa Remote MySQL Server (Port 3306)

ssh -L 3306:localhost:3306 username@IP address ng server

4.2.2 Reverse Port Forwarding

Ginagamit ito kapag inilalantad ang serbisyo ng panloob na network sa pamamagitan ng panlabas na SSH server.

Halimbawa: Paglalantad ng Lokal na Web Server (Port 80) sa Port 8080 ng Remote Server

ssh -R 8080:localhost:80 username@IP address ng server

4.2.3 Dynamic Port Forwarding

Gamit ang SSH bilang SOCKS proxy, maaaring mag-browse ng internet nang anonimong paraan.

Halimbawa: Paglikha ng SOCKS Proxy sa Port 1080 ng Lokal na PC

ssh -D 1080 username@IP address ng server

4.3 Paghihintay ng SSH sa Maraming Port

Karaniwang gumagana ang SSH sa isang port (default ay 22), ngunit sa pamamagitan ng paghihintay sa maraming port, maaaring tumugon sa iba’t ibang network environment.

4.3.1 Hakbang sa Pag-configure

  1. Baguhin ang /etc/ssh/sshd_config
sudo nano /etc/ssh/sshd_config
  1. Magdagdag ng mga sumusunod na linya
Port 22
Port 2200
  1. I-restart ang SSH
sudo systemctl restart ssh
  1. Payagan ang bagong port sa UFW
sudo ufw allow 2200/tcp

4.4 Payagan Lamang ang SSH mula sa Tiyak na IP Address

Sa pamamagitan ng paglilimita ng access sa SSH at pagpayag lamang ng koneksyon mula sa tiyak na IP address, maaaring palakasin ang seguridad.

4.4.1 Pag-set ng /etc/hosts.allow

Upang payagan lamang ang access ng SSH mula sa tiyak na IP address, gawin ang sumusunod na setting.

sudo nano /etc/hosts.allow

Magdagdag ng sumusunod na linya (baguhin ang bahagi ng 192.168.1.100 sa IP address na pinapayagan).

sshd: 192.168.1.100

4.4.2 Pag-set ng /etc/hosts.deny

Upang tanggihan ang lahat ng IP address bilang default, magdagdag ng sumusunod na setting.

sudo nano /etc/hosts.deny
sshd: ALL

Sa ganitong paraan, tatanggihan ang mga koneksyon ng SSH mula sa mga IP address na hindi nakalista sa hosts.allow.

Buod

Sa seksyong ito, ipinaliwanag namin ang advanced na mga setting ng SSH.

  • Pamamahala ng ssh.socket mula sa Ubuntu 22.10 at susunod
  • Ligtas na komunikasyon gamit ang SSH tunnel (port forwarding)
  • SSH na naghihintay sa maraming port
  • Paraan upang payagan ang SSH mula sa tiyak na IP address lamang

Sa pamamagitan ng pag-aaplay ng mga setting na ito, maaari mong mapabuti ang seguridad at kaginhawahan ng SSH.

5. Pag-ayos ng Mga Problema sa SSH

Kahit na i-configure ang SSH, maaaring hindi makakonekta dahil sa iba’t ibang dahilan. Sa seksyong ito, ipapaliwanag ang mga karaniwang problema na nangyayari sa koneksyon ng SSH at ang mga solusyon nito, na inorganisa ayon sa bawat problema.

5.1 Kung Hindi Makakonekta sa SSH

Kapag sinubukan mong ikonekta sa SSH ngunit lumalabas ang mga error tulad ng Connection refused o timeout, may mga posibleng dahilan.

5.1.1 Ang Serbisyo ng SSH ay Hindi Gumagana

Posibleng hindi normal na nagsimula ang SSH server. Una, suriin ang status ng SSH.

sudo systemctl status ssh

Solusyon:

  • Kung Active: inactive (dead) o failed, i-restart ang SSH.
sudo systemctl restart ssh
  • Pagkatapos mag-restart, kung nais mong i-enable ang auto-start, i-execute ang sumusunod na command.
sudo systemctl enable ssh

5.1.2 Ang Port ay Hindi Tama na Binubuksan

Kung binago ang SSH port, kailangan mong tukuyin ang tamang port sa panahon ng koneksyon.

ssh -p 2200 username@IP_address_ng_server

Bukod dito, upang suriin ang mga bukas na port, gumamit ng sumusunod na command.

sudo netstat -tulnp | grep ssh

O kaya, maaari ring gumamit ng ss command.

ss -tulnp | grep ssh

5.1.3 Suriin ang Setting ng Firewall (UFW)

Suriin kung hindi binablock ng UFW ang komunikasyon ng SSH.

sudo ufw status

Solusyon kung hindi pinapayagan ang SSH:

sudo ufw allow 22/tcp

Kung binago ang port, payagan ang tamang port.

sudo ufw allow 2200/tcp

5.2 Kapag May Authentication Error

5.2.1 Mali ang Username o Password

Kapag naglo-login sa SSH, tiyakin na tama ang username na ginagamit.

ssh username@IP_address_ng_server

5.2.2 Hindi Tama ang Setting ng Public Key Authentication

Kung gumagamit ng public key authentication, suriin kung tama ang public key na narehistro sa ~/.ssh/authorized_keys sa server.

cat ~/.ssh/authorized_keys

Suriin kung tumutugma ito sa local public key (~/.ssh/id_rsa.pub).

5.2.3 Hindi Angkop ang Permissions ng .ssh Directory

Sa setting ng SSH, mahigpit ang pamamahala sa permissions ng key files at .ssh directory.

chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

Bukod dito, suriin din ang permissions ng /home/username directory.

chmod 755 /home/username

5.3 Kapag Hindi Matatag ang Koneksyon ng SSH o Mabilis na Nawawala

Kung hindi matatag ang koneksyon ng SSH at nawawala pagkatapos ng ilang panahon, posibleng dahil sa timeout settings sa server o client side.

5.3.1 I-adjust ang ClientAliveInterval

Buksan ang SSH config file /etc/ssh/sshd_config at idagdag o baguhin ang sumusunod na parameters.

ClientAliveInterval 60
ClientAliveCountMax 3

Pagkatapos ng setting, i-restart ang SSH.

sudo systemctl restart ssh

5.3.2 Baguhin ang Setting sa Client Side

Kung nawawala ang local SSH client pagkatapos ng ilang panahon, maaaring mapabuti sa pamamagitan ng pagdagdag ng ganitong setting sa client config file (~/.ssh/config).

Host *
    ServerAliveInterval 60
    ServerAliveCountMax 3

5.4 Paano Suriin ang SSH Logs

Mahalaga ang pagsusuri ng logs upang malutas ang mga problema sa SSH.

5.4.1 Real-time na Pagsusuri ng SSH Logs

Upang suriin sa real-time ang SSH logs, i-execute ang sumusunod na command.

sudo journalctl -u ssh -f

5.4.2 Pagsusuri ng SSH Logs mula sa Nakaraang Data

Kung magse-search ng past logs, gumamit ng sumusunod na command.

sudo cat /var/log/auth.log | grep ssh

Maaari ring mag-search ng tiyak na error messages.

sudo grep "Failed password" /var/log/auth.log

Buod

Sa seksyong ito, ipinakilala namin ang mga problema na may kaugnayan sa mga trouble sa koneksyon ng SSH at ang mga solusyon nito.

  • Suriin kung gumagana ang serbisyo ng SSH
  • Suriin kung ang port ay naaangkop na nabubuksan
  • Suriin ang mga setting ng firewall
  • Suriin kung ang public key authentication ay tama na nasetup
  • Paglutas sa mga problema sa timeout
  • Saliksikin ang mga log ng SSH upang matukoy ang problema

Ang mga problema sa SSH ay madalas na nangyayari dahil sa mga pagkakamali sa setting o impluwensya ng network environment. Gamitin ang troubleshooting sa artikulong ito upang mabilis na malutas ang mga problema.

6. Mga Madalas na Tanong (FAQ)

Nagpakita kami ng mga madalas na tanong at kanilang mga solusyon tungkol sa pagkakapagsasaayos at paggamit ng SSH. Ipinapakilala ang mga tip para sa mas maginhawa at mas ligtas na paggamit ng SSH.

6.1 Ano ang gagawin kung mag-time out ang koneksyon ng SSH?

Kung ang koneksyon ng SSH ay nawawala pagkatapos ng ilang panahon, subukan ang mga sumusunod na pagkakapagsasaayos.

6.1.1 Pagbabago ng pagkakapagsasaayos sa panig ng server

I-edit ang /etc/ssh/sshd_config at i-set ang mga sumusunod na parameter.

ClientAliveInterval 60
ClientAliveCountMax 3

Pagkatapos ng pagkakapagsasaayos, i-restart ang SSH.

sudo systemctl restart ssh

6.1.2 Pagbabago ng pagkakapagsasaayos sa panig ng kliyente

Kung magdadagdag ng mga sumusunod na pagkakapagsasaayos sa lokal na ~/.ssh/config, maiiwasan ang pagwawala mula sa server.

Host *
    ServerAliveInterval 60
    ServerAliveCountMax 3

6.2 Ano ang gagawin kung nakalimutan ang password at hindi makakonekta sa SSH?

6.2.1 Kung makakapunta nang pisikal sa server

  1. Magsimula sa single user mode (piliin ang recovery mode sa menu ng GRUB)
  2. I-reset ang password gamit ang sumusunod na command
passwd username
  1. I-restart ang sistema

6.2.2 Kung hindi makakapunta nang pisikal (tulad ng cloud VPS)

  • Gumamit ng console function ng VPS para sa remote na koneksyon
  • Gumamit ng public key authentication ng SSH

6.3 Paano gumamit ng SSH sa Windows?

6.3.1 Gumamit ng PowerShell

Sa Windows 10 at mas bago, ang PowerShell ay may standard na SSH client. Makakakonekta gamit ang sumusunod na command.

ssh username@server_IP_address

6.3.2 Gumamit ng PuTTY

  1. I-download at i-install ang PuTTY
  2. Ipasok ang IP address ng server sa Host Name (or IP address)
  3. I-set ang Connection type sa SSH at i-click ang Open
  4. Ipasok ang username at password para makonekta

6.4 Paano magsasaayos ng SSH sa Ubuntu WSL (Windows Subsystem for Linux)?

Kung magse-set up ng SSH server sa kapaligiran ng WSL, sundin ang mga sumusunod na hakbang.

6.4.1 I-install ang SSH server

sudo apt update && sudo apt install openssh-server

6.4.2 Pagbabago ng pagkakapagsasaayos ng SSH

I-edit ang /etc/ssh/sshd_config at i-activate ang mga sumusunod na pagkakapagsasaayos.

PasswordAuthentication yes

Ang WSL ay hindi gumagamit ng systemd bilang default, kaya i-start nang manu-mano ang SSH gamit ang sumusunod na command.

sudo service ssh start

6.5 Ano ang karagdagang hakbang sa seguridad na dapat gawin pagkatapos ng pagkakapagsasaayos ng SSH?

6.5.1 Ipasok ang Fail2Ban

Para maiwasan ang hindi awtorisadong access sa SSH, i-install ang Fail2Ban.

sudo apt install fail2ban -y

I-edit ang config file /etc/fail2ban/jail.local at i-activate ang proteksyon para sa SSH.

[sshd]
enabled = true
port = 22
maxretry = 3
findtime = 600
bantime = 3600

I-restart ang Fail2Ban para i-apply ang pagkakapagsasaayos.

sudo systemctl restart fail2ban

6.5.2 Pagbabago ng port ng SSH

Buuin ang /etc/ssh/sshd_config at baguhin mula sa default na 22.

Port 2200

Pagkatapos ng pagkakapagsasaayos, i-restart ang SSH at i-allow ang bagong port sa UFW.

sudo ufw allow 2200/tcp

6.6 Paano suriin ang mga log ng SSH nang real-time sa Ubuntu?

Para mag-monitor ng mga log ng SSH nang real-time, i-execute ang sumusunod na command.

sudo journalctl -u ssh -f

Para suriin ang mga nakaraang log ng SSH, gumamit ng sumusunod na command.

sudo cat /var/log/auth.log | grep ssh

6.7 Paano gawing mas maginhawa ang paggamit ng SSH?

6.7.1 Madaling pag-login gamit ang .ssh/config

Kung madalas ang koneksyon sa SSH, i-save ang mga pagkakapagsasaayos sa ~/.ssh/config para madaling mag-login.

Host myserver
    HostName 192.168.1.100
    User user
    Port 2200
    IdentityFile ~/.ssh/id_rsa

Pagkatapos ng pagkakapagsasaayos na ito, makakakonekta sa SSH gamit lamang ang sumusunod na command.

ssh myserver

6.7.2 Gumamit ng ssh-agent

Para hindi na kailanganin ang passphrase ng private key, gumamit ng ssh-agent.

eval $(ssh-agent -s)
ssh-add ~/.ssh/id_rsa

Buod

Sa seksyong ito, ipinakilala namin ang mga karaniwang tanong sa SSH at ang mga solusyon nito.

  • Mga Hakbang Laban sa Timeout ng SSH
  • Paraan ng Pagbawi Kapag Nakalimutan ang Password
  • Paggamit ng SSH sa Windows at WSL
  • Karagdagang Mga Hakbang sa Seguridad
  • Paraan ng Pagsusuri ng Mga Log ng SSH
  • Paggamit ng .ssh/config para sa Mas Komportableng Paggamit

Sa pamamagitan ng paggamit ng mga nilalaman ng artikulong ito, maaari mong itayo ang isang ligtas at komportableng kapaligiran ng SSH, at madaling pamahalaan ang mga remote server.

Mga Kaugnay na Artikulo

Mga

1. Panimula Sa pamamagitan ng paggamit ng SSH sa Ubuntu, maaari kang mag-access at mag-operate nang ligtas sa server o […]