Tiaki tūmau Linux. He aha te mahi tuatahi

Tiaki tūmau Linux. He aha te mahi tuatahi
Habib M'henni/Wikimedia Commons, CC BY-SA

I enei wa, ko te whakaara i tetahi tūmau i runga i te manaaki he take mo nga meneti e rua me etahi patene kiore. Engari i muri tonu i te whakarewatanga, ka kitea e ia i roto i te taiao kino, no te mea kei te tuwhera ia ki te Ipurangi katoa ano he kotiro harakore i roto i te rocker disco. Ka kitea tere e nga kaitirotiro ka kitea nga mano tini o nga karetao kua tuhia aunoatia e tarai ana i te whatunga rapu whakaraeraetanga me nga whirihora pohehe. He iti nga mea hei mahi tika i muri i te whakarewatanga hei whakarite i te whakamarumaru taketake.

Tuhinga

Kaiwhakamahi kore-pakiaka

Ko te mahi tuatahi ko te hanga i tetahi kaiwhakamahi kore-pakiaka mo koe. Ko te kaupapa ko te kaiwhakamahi root mana nui i roto i te pūnaha, a ki te tukua e koe ki a ia te whakahaere mamao, ka mahi koe i te haurua o te mahi mo te hacker, ka waiho he ingoa ingoa tika mo ia.

Na reira, me hanga e koe tetahi atu kaiwhakamahi, me te whakakore i te whakahaere mamao ma te SSH mo te pakiaka.

Ka timata tetahi kaiwhakamahi hou ma te whakahau useradd:

useradd [options] <username>

Na ka taapirihia he kupuhipa mo taua mea me te whakahau passwd:

passwd <username>

Ka mutu, me taapiri tenei kaiwhakamahi ki tetahi roopu e whai mana ana ki te whakahaere i nga whakahau teitei sudo. I runga i te tohatoha Linux, he roopu rereke pea enei. Hei tauira, i roto i te CentOS me te Red Hat, ka whakauruhia te kaiwhakamahi ki te roopu wheel:

usermod -aG wheel <username>

I Ubuntu ka taapirihia ki te roopu sudo:

usermod -aG sudo <username>

Kī hei utu mo nga kupuhipa SSH

Ko te kaha tutu, te turuturu kupuhipa ranei he tohu whakaeke paerewa, no reira he pai ki te whakakore i te motuhēhēnga kupuhipa i roto i te SSH (Secure Shell) me te whakamahi i te motuhēhēnga matua.

He maha nga kaupapa mo te whakatinana i te kawa SSH, penei i lsh и Matapihi, engari ko te mea rongonui ko OpenSSH. Te whakauru i te kiritaki OpenSSH ki Ubuntu:

sudo apt install openssh-client

Tāutatanga Tūmau:

sudo apt install openssh-server

Ka tiimata te SSH daemon (sshd) i runga i te tūmau Ubuntu:

sudo systemctl start sshd

Tīmata aunoatia te daemon ki ia pūtu:

sudo systemctl enable sshd

Me tohu ko te waahanga tūmau o OpenSSH kei roto te waahanga kiritaki. Arā, mā openssh-server ka taea e koe te hono atu ki etahi atu tūmau. I tua atu, mai i to miihini kaihoko, ka taea e koe te tiimata i te kohanga SSH mai i tetahi kaitoro mamao ki tetahi kaihautu tuatoru, katahi ka whakaarohia e te kaihautu tuatoru te tūmau mamao hei puna o nga tono. He waahanga tino pai mo te huna i to punaha. Tirohia te tuhinga mo nga taipitopito "Aki Mahinga, Tauira, me nga Tunnel SSH".

I runga i te miihini kiritaki, karekau he tikanga ki te whakauru i tetahi kaitoi tuuturu kia kore ai e taea te hono mamao ki te rorohiko (mo nga take haumaru).

Na, mo to kaiwhakamahi hou, me whakaputa e koe nga taviri SSH i runga i te rorohiko ka uru koe ki te tūmau:

ssh-keygen -t rsa

Ka penapena te kī tūmatanui ki tētahi kōnae .pub me te ahua o te aho o nga tohu matapōkere ka tiimata me te ssh-rsa.

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQ3GIJzTX7J6zsCrywcjAM/7Kq3O9ZIvDw2OFOSXAFVqilSFNkHlefm1iMtPeqsIBp2t9cbGUf55xNDULz/bD/4BCV43yZ5lh0cUYuXALg9NI29ui7PEGReXjSpNwUD6ceN/78YOK41KAcecq+SS0bJ4b4amKZIJG3JWm49NWvoo0hdM71sblF956IXY3cRLcTjPlQ84mChKL1X7+D645c7O4Z1N3KtL7l5nVKSG81ejkeZsGFzJFNqvr5DuHdDL5FAudW23me3BDmrM9ifUmt1a00mWci/1qUlaVFft085yvVq7KZbF2OP2NQACUkwfwh+iSTP username@hostname

Na, mai i raro i te putake, hanga he whaiaronga SSH i runga i te tūmau i roto i te whaiaronga kāinga o te kaiwhakamahi, me te tāpiri i te kī tūmatanui SSH ki te kōnae authorized_keys, ma te whakamahi i te ētita tuhinga penei i a Vim:

mkdir -p /home/user_name/.ssh && touch /home/user_name/.ssh/authorized_keys

vim /home/user_name/.ssh/authorized_keys

Ka mutu, tautuhia nga whakaaetanga tika mo te konae:

chmod 700 /home/user_name/.ssh && chmod 600 /home/user_name/.ssh/authorized_keys

me te huri i te mana ki tenei kaiwhakamahi:

chown -R username:username /home/username/.ssh

I te taha o te kiritaki, me tohu koe i te waahi o te ki huna mo te motuhēhēnga:

ssh-add DIR_PATH/keylocation

Ka taea e koe te takiuru ki te tūmau i raro i te ingoa kaiwhakamahi ma te whakamahi i tenei ki:

ssh [username]@hostname

I muri i te whakaaetanga, ka taea e koe te whakamahi i te whakahau scp ki te kape i nga konae, te taputapu Tuhinga ki te whakairi mamao i tetahi punaha konae, raarangi whaiaronga ranei.

He mea tika kia mahia etahi kape taapiri mo te kii motuhake, na te mea ka whakakorehia e koe te whakamotuhēhēnga kupuhipa ka ngaro, karekau koe e whai huarahi ki te takiuru ki to ake kaimau.

Ka rite ki te korero i runga ake nei, i roto i te SSH me whakakorehia te motuhēhēnga mo te pakiaka (koinei te take i timata ai matou he kaiwhakamahi hou).

I runga i te CentOS / Red Hat ka kitea e matou te raina PermitRootLogin yes i te kōnae whirihora /etc/ssh/sshd_config a hurihia:

PermitRootLogin no

I runga i te Ubuntu taapirihia te raina PermitRootLogin no ki te kōnae whirihora 10-my-sshd-settings.conf:

sudo echo "PermitRootLogin no" >> /etc/ssh/sshd_config.d/10-my-sshd-settings.conf

Whai muri i te manatoko kei te whakamotuhēhē te kaiwhakamahi hōu me tana kī, ka taea e koe te whakakore i te motuhēhēnga kupuhipa ki te whakakore i te tūponotanga o te rerenga o te kupuhipa me te kaha kino. Inaianei, kia uru atu ki te tuumau, me tiki e te kaitukino tetahi taviri motuhake.

I runga i te CentOS / Red Hat ka kitea e matou te raina PasswordAuthentication yes i te kōnae whirihora /etc/ssh/sshd_config ka huri kia penei:

PasswordAuthentication no

I runga i te Ubuntu taapirihia te raina PasswordAuthentication no ki te konae 10-my-sshd-settings.conf:

sudo echo "PasswordAuthentication no" >> /etc/ssh/sshd_config.d/10-my-sshd-settings.conf

Mo nga tohutohu mo te whakamotuhēhēnga-rua mā te SSH, tirohia konei.

pātūahi

Ka whakarite te paahi ahi ko nga waka i runga i nga tauranga ka tukuna tika ka haere ki te tūmau. Ka parea tenei ki te whakamahi i nga tauranga e kore e taea e etahi atu ratonga, ka tino whakaiti i te mata whakaeke.

I mua i te whakauru i te papangaahi, me mohio koe kei te whakauruhia a SSH ki te rarangi whakakore, ka kore e aukati. Ki te kore, i muri i te tiimata o te papangaahi, kaore e taea e matou te hono atu ki te tūmau.

Ko te tohatoha Ubuntu ka tae mai me te Paahi Paeahi Kore (Tuhinga o mua), me te CentOS/Red Hat - firewalld.

Whakaaetia te SSH i te papangaahi i runga i te Ubuntu:

sudo ufw allow ssh

I runga i te CentOS/Red Hat whakamahia te whakahau firewall-cmd:

sudo firewall-cmd --zone=public --add-service=ssh --permanent

I muri i tenei tukanga, ka taea e koe te timata i te papangaahi.

I runga i te CentOS/Red Hat, timata te ratonga systemd mo te firewalld:

sudo systemctl start firewalld
sudo systemctl enable firewalld

I runga i te Ubuntu ka whakamahia e matou te whakahau e whai ake nei:

sudo ufw enable

Fail2Ban

ratonga Fail2Ban ka tātari i nga raarangi i runga i te tūmau me te tatau i te maha o nga ngana uru mai i ia wahitau IP. Ko nga tautuhinga e tohu ana i nga ture mo te maha o nga ngana uru ka whakaaetia mo tetahi waahi - ka mutu ka aukatihia tenei wahitau IP mo te waa kua tohua. Hei tauira, me whakaae kia 5 ngana whakamotuhēhēnga SSH i rahua i roto i te 2 haora, ka aukati i te wāhitau IP kua hoatu mo te 12 haora.

Te whakauru i te Fail2Ban i runga i te CentOS me te Red Hat:

sudo yum install fail2ban

Te whakaurunga ki runga Ubuntu me Debian:

sudo apt install fail2ban

Whakarewa:

systemctl start fail2ban
systemctl enable fail2ban

E rua nga konae whirihoranga o te papatono: /etc/fail2ban/fail2ban.conf и /etc/fail2ban/jail.conf. Ko nga here aukati kua tohua ki te konae tuarua.

Ko te whare herehere mo te SSH kua whakahohea ma te taunoa me nga tautuhinga taunoa (5 nganatanga, te wa 10 meneti, ka aukati mo te 10 meneti).

[DEFAULT] ignorecommand=bantime=10m findtime=10m maxretry=5

I tua atu i te SSH, ka taea e Fail2Ban te tiaki i etahi atu ratonga i runga i te nginx, i te paetukutuku tukutuku Apache ranei.

Whakahoutanga haumarutanga aunoa

Kei te mohio koe, ka kitea nga whakaraeraetanga hou ki nga kaupapa katoa. Whai muri i te whakaputanga o nga korero, ka taapirihia nga mahi ki nga kete rongonui rongonui, e whakamahia nuitia ana e nga kaiwhaiwhai me nga taiohi i te wa e matawai ana i nga tūmau katoa i te rarangi. Na reira, he mea tino nui ki te whakauru i nga whakahoutanga haumarutanga ina puta mai.

I runga i te tūmau Ubuntu, ka whakahohehia nga whakahoutanga haumarutanga aunoa ma te taunoa, no reira karekau he mahi.

I runga i te CentOS / Red Hat me whakauru koe i te tono dnf-aunoa ka whakakāhia te matawā:

sudo dnf upgrade
sudo dnf install dnf-automatic -y
sudo systemctl enable --now dnf-automatic.timer

Takiwā:

sudo systemctl status dnf-automatic.timer

Te huri i nga tauranga taunoa

I whakawhanakehia te SSH i te tau 1995 hei whakakapi i te telnet (tauranga 23) me te ftp (tauranga 21), na te kaituhi o te kaupapa, ko Tatu Iltonen. kua tohua te tauranga 22 ma te taunoa, a kua whakaaetia e IANA.

Ko te tikanga, kei te mohio nga kaiwhaiwhai katoa ko tehea te tauranga SSH e rere ana - ka tirotirohia me era atu o nga tauranga paerewa kia kitea te putanga rorohiko, ki te tirotiro i nga kupuhipa pakiaka paerewa, me era atu.

Ko te whakarereke i nga tauranga paerewa - te whakapouri - he maha nga wa ka whakaitihia te nui o te hokohoko para, te rahi o nga rakau me te utaina i runga i te tūmau, me te whakaiti i te mata whakaeke. Ahakoa etahi whakahengia tenei tikanga "tiaki ma te pouri" (security through obscurity). Ko te take he whakahē tenei tikanga ki te taketake tiaki hoahoanga. Na reira, hei tauira, te US National Institute o Paerewa me Hangarau i roto i "He Aratohu Haumarutanga Tūmau" e whakaatu ana i te hiahia mo te hoahoanga tūmau tuwhera: "Ko te haumarutanga o te punaha kia kaua e whakawhirinaki ki te muna o te whakatinanatanga o ona waahanga," e kii ana te tuhinga.

Ko te tikanga, ko te whakarereke i nga tauranga taunoa he whakahe ki nga mahi o te hoahoanga tuwhera. Engari i roto i nga mahi, ka tino whakaitihia te nui o nga hokohoko kino, na he mea ngawari tenei me te whai hua.

Ka taea te whirihora i te tau tauranga ma te huri i te tohutohu Port 22 i te kōnae whirihora / etc / ssh / sshd_config. Kei te tohuhia ano e te tawhā -p <port> в sshd. Kaihoko SSH me nga kaupapa sftp tautoko hoki i te kōwhiringa -p <port>.

Taumahi -p <port> Ka taea te whakamahi hei tohu i te tau tauranga ina hono ana ki te whakahau ssh i roto i te linux. IN sftp и scp ka whakamahia te tawhā -P <port> (matua P). Ka takahia e nga tohutohu raina whakahau tetahi uara i roto i nga konae whirihoranga.

Mena he maha nga tūmau, tata katoa o enei mahi hei tiaki i te tūmau Linux ka taea te mahi aunoa i roto i te tuhinga. Engari ki te kotahi anake te tūmau, he pai ake te whakahaere ā-ringa i te tukanga.

I runga i nga Tika Tika

Tonoa ka mahi tonu! Te hanga o VDS tetahi whirihoranga me tetahi punaha whakahaere i roto i te meneti. Ko te whirihoranga teitei ka taea e koe te eke ki runga ki te tino - 128 CPU cores, 512 GB RAM, 4000 GB NVMe. Epic 🙂

Tiaki tūmau Linux. He aha te mahi tuatahi

Source: will.com