GNU/Linux >> Znalost Linux >  >> Cent OS

Jak nainstalovat a povolit server OpenSSH na CentOS 8 Linux

SSH je zkratka pro Secure Shell. Jak jeho název napovídá, SSH je určen pro vzdálený přístup k Serveru nebo Desktop Shell ve Windows, macOS, Linuxu (CentOS, Ubuntu a všech dalších) a dalších dostupných operačních systémech. Je to v podstatě síťový protokol, což znamená nastavit pravidla pro navázání bezpečného a šifrovaného spojení mezi klientem a serverem.

Klíčovou výhodou používání SSH je bezpečný přenos dat přes nezabezpečené sítě, jako je internet. Je opravdu užitečné připojit vzdálené počítače a bezpečně k nim přistupovat pomocí příkazového řádku. Můžeme jej také použít k přenosu souborů přes skeptické sítě. To je důvod, proč jej většina datových center a cloudových správců používá pro vzdálený přístup k serverům.

Zde ukážeme kroky k instalaci serveru OpenSSH na CentOS 8 Linux. Tento softwarový balík používá protokol SSH (Secure Shell protokol) k zajištění zabezpečeného kanálu vsíti v architektuře klient-server.

Povolte SSH na CentOS 8 Linux

Níže uvedené kroky pro instalaci serveru OpenSSH budou fungovat nejen na CetnOS 8, ale i na dřívějších verzích, jako jsou 7 a 6.

1. Nainstalujte OpenSSH Server

Otevřete příkazový terminál na CentOS 8, pokud používáte verzi CLI, už jste tam. Instalace OpenSSH je velmi jednoduchá, protože již existuje na oficiálním úložišti CentOS. Takže jeden příkaz a bude to na vašem počítači.

sudo dnf –y install openssh-server

Jediný příkaz nainstaluje do systému klienta OpenSSH i serverového démona sshd.

2. Spusťte službu SSH na CentOS

Po instalaci musíme spustit službu OpenSSH jinak bychom k ní nemohli přistupovat přes žádný klientský nástroj z Windows, Linuxu nebo jiných systémů. Po úspěšné aktivaci jsme se však mohli snadno připojit a vytvořit zabezpečené připojení. Spusťte tedy níže uvedený příkaz:

Spustit démona SSH serveru OpenSSH:

sudo systemctl start sshd

V případě, že jej chcete zastavit, příkaz bude

sudo systemctl stop sshd

3. Zkontrolujte stav sshd

Chcete-li po spuštění služby SSH vědět, zda funguje perfektně nebo ne. Spusťte příkaz:

sudo systemctl status sshd

Uvidíte zelenou barvu „aktivní (běžící) ” text na obrazovce, který potvrdí, že je vše v pořádku.

4. Povolte službu OpenSSH na úrovni spouštění

Pokud chcete spouštět SSH automaticky pokaždé, když restartujete systém. Poté použijte níže uvedený příkaz. Tím také zajistíte, že jej nebudete muset pokaždé spouštět ručně.

sudo systemctl enable sshd

Chcete-li deaktivovat v budoucnu (příkaz možností) spusťte:

sudo systemctl disable sshd

5. Povolit bránu firewall portu 22

V případě, že ani po provedení všech kroků nebudete mít přístup k ssh serveru z klienta kvůli firewallu, povolte to. Chcete-li povolit port SSH 22 na CentOS 8 Linux, spusťte:

firewall-cmd --zone=public --add-port=22/tcp --permanent

Restartujte bránu firewall:

firewall-cmd --reload

6. Připojte se k serveru SSH

Chcete-li se připojit a získat přístup k CentOS přes SSH, jednoduše otevřete příkazový řádek ve Windows nebo Terminál v Linuxu a zadejte příkaz v této syntaxi:

ssh [e-mail chráněný]

Například- řekněme, že uživatelské jméno je root a adresa serveru je 192.168.0.12, pak příkaz bude:

ssh [email protected]

Pokud jste změnili výchozí port 22 na něco jiného, ​​pak to bude:

ssh [e-mail chráněný]:port

7. Změňte výchozí port SSh na CentOS 8/7 (volitelné)

Ve výchozím nastavení je port používaný SSH 22 pro zlepšení zabezpečení jej však můžete změnit na něco jiného. Pro tuto úpravu SSHD konfigurační soubor.

sudo vi /etc/ssh/sshd_config
  • Nyní najděte řádek #port 22
  • Stiskněte Vložit na klávesnici.
  • Odeberte # a změňte sshd 22 port s něčím jiným, řekněme 5678
  • Pro uložení souboru stiskněte Esc a poté zadejte :wq

Restartujte službu sshd, abyste označili změny za platné.

 service sshd restart

Pokud se zobrazí chyba:

Redirecting to /bin/systemctl restart sshd.service
Job for sshd.service failed because the control process exited with error code.
See "systemctl status sshd.service" and "journalctl -xe" for details.

To znamená, že mu musíte udělit oprávnění SELinux informováním, že jste pro službu přidali nový port.

semanage port -a -t ssh_port_t -p tcp 5678

Poznámka :Nahraďte 5678 s číslem portu, které jste zadali do sshd konfigurační soubor výše

Znovu, pokud se zobrazí chyba jako:

ValueError: Port tcp/5678 already defined

To znamená, že port, který se rozhodnete použít se službou SSH, je již přiřazen nebo vyhrazen pro nějakou jinou službu. Změňte proto číslo portu v konfiguračním souboru a znovu spusťte příkaz semange port .

Po úspěšném přidání zkontrolujte, které porty povoluje SELinux ve vašem systému pro službu SSHD:

semanage port -l | grep ssh

Získáte něco takového:

ssh_port_t tcp    5678, 22

Konečně máte dva porty pro jednu službu.

9. Zablokujte výchozí port CentOS 22

Protože máme dva porty pro jednu službu Secure Shell, můžeme zablokovat výchozí jeden, který je 22 natrvalo. To zvýší bezpečnost systému a umožní nám používat pouze jedno vlastní číslo portu pro službu.

firewall-cmd --direct --add-rule ipv4 filter INPUT  -p tcp --dport 22 -j REJECT

Nyní povolte vlastní číslo portu, které jste vytvořili ve bráně firewall, v našem případě je to 5678

firewall-cmd --add-port=5678/tcp --permanent
firewall-cmd --reload

Nyní se nebudete moci připojit přes výchozí, a pokud se o to pokusíte, dojde k chybě:ssh: connect to host 192.168.0.107 port 22: Connection refused

Chcete-li se připojit pomocí vlastního portu ssh, použijte tuto syntaxi příkazu:

ssh -p 5678 [email protected]

Ve výše uvedeném příkazu 5678 je číslo portu, takže jej nahraďte tím, které máte.

Příklad: 

ssh -p 5678 [email protected]

10. Zakázat přihlášení uživatele root (volitelné)

Chcete-li eskalovat zabezpečení serveru na další úroveň, můžete zakázat přístup uživatele root na SSH. To znamená, že lze vzdáleně přistupovat k serveru a ovládat jej pouze pomocí uživatelů bez oprávnění root.

Znovu upravte konfigurační soubor SSHD:

sudo vi /etc/ssh/sshd_config
  • Pomocí kláves se šipkami najděte řádek:„PermitRootLogin=yes
  • Stiskněte Vložit klíč na klávesnici.
  • Změňte hodnotu „ano na ne“.
  • Stiskněte Esc klíč a typ- :wq
  • Stiskněte Enter Klíč
service sshd restart

11. Odinstalujte OpenSSH

Odstranění:

dnf remove openssh-server

Přečtěte si více:

  • Nainstalujte a nakonfigurujte VNC Server na CentOS 8
  • Jak nainstalovat GUI na CentOS 8 Minimal CLI server


Cent OS
  1. Jak nainstalovat DNS server na RHEL 8 / CentOS 8 Linux

  2. Jak nainstalovat nebo upgradovat na PHP 7 na CentOS 7 Linux Server

  3. Jak nainstalovat GUI Gnome na systém CentOS 7 Linux

  1. Jak nainstalovat / povolit OpenSSH na CentOS 7

  2. Jak debootstrap na CentOS Linux

  3. Jak nainstalovat Erlang na Rocky Linux/Alma Linux/CentOS 8

  1. Jak nainstalovat a nastavit Mumble Server {Murmur} na Linux CentOS 7

  2. Nainstalujte ssh server na CentOS 8 / RHEL 8

  3. Jak nainstalovat git na RHEL 8 / CentOS 8 Linux server/pracovní stanici