Centos7關於SSH埠的配置

2021-10-03 14:19:30 字數 4647 閱讀 9749

剛上完一天的網課,進來阿里雲伺服器的控制台,看到了下面這些東西,我驚呆了……

就在前幾天才領到的阿里雲伺服器,對伺服器的知識一臉矇逼,剛裝了寶塔(**還沒配置好),就執行了幾次指令碼**,然後就來攻擊我了?不過看網上說的,這是正常現象~

然後去查了一些相關的知識,發現說ssh埠預設是22,經常會有一些人大量的掃瞄然後嘗試破解,這是正常操作,歡迎來到網際網路!

環境:linux centos7以上,阿里雲伺服器

last作用是顯示近期使用者或終端的登入情況。通過last命令檢視該程式的log,管理員可以獲知誰曾經或者企圖連線系統。

last不加引數:直接執行last命令時,它會讀取/var/log目錄下名稱為wtmp的檔案,並把該檔案記錄的登入系統或終端的使用者名單全部顯示出來。預設顯示wtmp的記錄,btmp能顯示的更詳細,可以顯示遠端登入,例如ssh登入。

linux lastb命令用於列出登入系統失敗的使用者相關資訊。

lastb不加引數:單獨執行lastb指令,它會讀取位於/var/log目錄下,名稱為btmp的檔案,並把該檔案內容記錄的登入失敗的使用者名單,全部顯示出來。

【 下面的引數兩者通用 】

-a:把從何處登入系統的主機名稱或ip位址,顯示在最後一行;

-d:將ip位址轉換成主機名稱;

-f 《記錄檔案》:指定記錄檔案;

-n 《顯示列數》或-《顯示列數》::設定列出名單的顯示列數;

-r:不顯示登入系統的主機名稱或ip位址;

-x:顯示系統關機,重新開機,以及執行等級的改變等資訊。

第一列:使用者名稱;

第二列:終端位置(pts/0偽終端,意味著從ssh或telnet等工具遠端連線的使用者,圖形介面終端歸於此類)

第三列:登入ip或者核心;(如果是:0.0或者什麼都沒有,意味著使用者通過本地終端連線。除了重啟活動,核心版本會顯示在狀態中)

第四列:開始時間;

第五列:結束時間;(still login in 還未退出 down 直到正常關機 crash 直到強制關機)

第六列:持續時間。

ssh的訪問如果都利用22埠,則會容易被攻擊,修改乙個埠號可增強一定的安全性。

【第一步】

修改配置檔案sshd_config裡埠號(建議使用 1024 以上的)。

vim /etc/ssh/sshd_config

找到port 22這一行(一定不要刪除22號!),發現已經被注釋了,將注釋解開,並新增一行port 2333,儲存退出。

【第二步】

重啟ssh

systemctl restart sshd

檢視埠是否更改

netstat -ntlp | grep 2333

一定要保留原有的22埠,在加上自己的埠、更新儲存之後,如果直接斷開使用新的埠登陸,可能會發現以下錯誤:

遠端連線不上,這裡有一點就是記得去伺服器控制台配置規則,新增你新更改的埠,然後用預設的22連線ssh,進去後還需要修改防火牆的規則。

centos7預設的防火牆不是iptables,而是firewalle。

【firewalld的指令】

systemctl status firewalld:檢視防火牆的狀態,看到active(running)就意味著防火牆開啟了;

systemctl stop firewalld:關閉防火牆,如果看到inactive(dead)就意味著防火牆關閉了;(關閉後重啟會恢復回原來的狀態)

systemctl disable firewalld:關閉後重啟不會恢復回原來的狀態;

systemctl start firewalld開啟的同理關閉的systemctl enable firewalld

【第三步】

向防火牆中新增埠,顯示sucess則成功。

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

firewall-cmd --reload

檢視埠是否新增成功,成功的話返回yes

firewall-cmd --zone=public --query-port=2333/tcp

【拓展知識】

安全增強型 linux(security-enhanced linux)簡稱 selinux,它是乙個 linux 核心模組,也是 linux 的乙個安全子系統。

selinux 主要作用就是最大限度地減小系統中服務程序可訪問的資源(最小許可權原則)。

dac:

在沒有使用 selinux 的作業系統中,決定乙個資源是否能被訪問的因素是:某個資源是否擁有對應使用者的許可權(讀、寫、執行)。只要訪問這個資源的程序符合以上的條件就可以被訪問。

而最致命問題是,root 使用者不受任何管制,系統上任何資源都可以無限制地訪問。這種許可權管理機制的主體是使用者,也稱為自主訪問控制(dac)。

mac:

在使用了 selinux 的作業系統中,決定乙個資源是否能被訪問的因素除了上述因素之外,還需要判斷每一類程序是否擁有對某一類資源的訪問許可權。

這樣一來,即使程序是以 root 身份執行的,也需要判斷這個程序的型別以及允許訪問的資源型別才能決定是否允許訪問某個資源。程序的活動空間也可以被壓縮到最小。

即使是以 root 身份執行的服務程序,一般也只能訪問到它所需要的資源。即使程式出了漏洞,影響範圍也只有在其允許訪問的資源範圍內。安全性大大增加。這種許可權管理機制的主體是程序,也稱為強制訪問控制(mac)。

【第四步】

先安裝selinux的管理工具: semanage (已安裝的話略過)

yum provides semanage

yum install policycoreutils-python

安裝好之後,可以直接使用 semanage 命令,查詢當前 ssh 服務埠

semanage port -l | grep ssh

向 selinux 中新增 ssh 埠

semanage port -a -t ssh_port_t -p tcp 2333

驗證 ssh 埠是否新增成功

semanage port -l | grep ssh

新增成功之後就可以重啟 ssh 服務了

systemctl restart sshd.service

【第五步】

關掉當前終端,確保已在安全組新增自己新的ssh埠,然後登陸時使用新的埠號進行登陸,即可成功!

檢視當前系統對外開放的埠

firewall-cmd --list-ports

如果要關掉哪個埠,下面兩個步驟:

修改配置檔案sshd_config裡埠號(將不需要的刪除)

vim /etc/ssh/sshd_config

刪除firewall防火牆中的埠

firewall-cmd --zone=public --remove-port=2333/tcp --permanent

關閉semanage中的埠

semanage port -d -t ssh_port_t -p tcp 2333

firewall-cmd --reload

重啟 ssh 服務

systemctl restart sshd.service

新手上路,請多指教!

centos 7 修改 ssh 預設埠

步驟一 編輯配置檔案 1.vim etc ssh sshd config 在原port位置新增想要開放的埠 例如 port 122 2.重啟ssh服務 systemctl restart sshd.service 可能會鏈結失敗 檢視ssh開放埠 semanage port l grep ssh 如...

CentOS7 更改ssh預設埠

伺服器預設為22埠,這樣會造成有被暴力破解密碼的風險,下面是更換ssh埠過程 1.新增ssh埠 vim etc ssh sshd config開啟配置檔案,新增我們需要更改的埠號,此時不要刪除預設22埠,讓兩個埠同時存在,如果我們直接修改了埠,然後啟動防火牆之後,就會出現我們沒有使用防火牆開放埠,導...

Centos 7 修改SSH埠號

注意!這裡的centos版本是7 step1 修改 etc ssh sshd config vi etc ssh sshd config port 22 這行去掉 號 port 20000 下面新增這一行 step2 修改selinux 使用以下命令檢視當前selinux 允許的ssh埠 seman...