linux中禁止root使用者ssh遠程登入並修改ssh遠程登入連接埠

來源:互聯網
上載者:User

伺服器的安全性不言而喻,伺服器安全性設定的第一步就是堵住入口。

對於linux而言,堵住入口,就是不讓別人能隨便進入我們的伺服器裡面亂搞,不然一個命令 “rm  -rf  / “,後果不堪設想。所以不能讓別人進入我們的伺服器,更加不能讓別人用root使用者進去。所以最好的做法就是:

在linux上面設定禁止root使用者遠程登入,並且修改ssh連接埠【因為預設的連接埠是22,改了設定多一層障礙】,然後我們需要登入進去的時候,就用一個沒有許可權的使用者登入進去,然後再用su命令切換到root或者其他有許可權操作的使用者。

這樣做了之後,別人哪怕知道伺服器的ip,但是不知道連接埠,也不知道是要用什麼使用者登入,暴力破解也破解不了。

以centos為例,設定linux禁止root使用者ssh遠程登入,使用其他使用者登入:

1、用root使用者登入進去

2、使用groupadd命令建立一個login的分組,專門用於登入

# groupadd login
3、去存放組資訊檔  /etc/group  裡面檢查login分組是否添加成功,如果在輸出的資訊裡有  login:x:501:  這樣的資訊,就說明成功了【後面的501並不是每台機子都一樣,501是這個組的標識id,會因你伺服器已經擁有的組不同而不同,預設是從500開始排序的,所以有login就是成功了】

# cat /etc/group
4、使用useradd命令建立一個 zhoumanhe 使用者用於ssh遠程登入,屬於login分組,該使用者目錄在 /home/zhoumanhe 下

# useradd zhoumanhe -g login -G login -d /home/zhoumanhe
5、去存放使用者資訊檔 /etc/passwd  檢查使用者是否添加成功。如果輸出資訊裡面有 zhoumanhe:x:501:501::/home/zhoumanhe:/bin/bash  則說明使用者添加成功,並且屬於login組【因為有501,login組的標識id就是501】

# cat /etc/passwd
6、使用passwd命令給zhoumanhe使用者添加一個登陸密碼,剛剛添加完是還沒有設定密碼的。

# passwd zhoumanhe
Changing password for user zhoumanhe.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
特別嚴重的提示 : 其實在使用useradd命令也是可以直接為添加使用者佈建密碼的,後面加上“ -p  要設定的密碼 ”為什麼獨立出來,因為如果直接這樣添加,存進密碼檔案裡面的密碼就是明文的,就是說你的密碼是123,存進去的密碼也是123,到那時linux使用者的登入密碼是要經過加密的,所以可能導致linux新添加的使用者登入失敗,而剛剛添加完使用者,su切換到新添加使用者,輸入passwd更改密碼的時候也會提示 “Authentication token manipulation error”,因為改密碼要先輸入舊的密碼,你輸入123,但是真實的密碼確實加密過了的,所以提示出錯。所以出現這個問題的朋友,可以切換到root使用者,使用 “passwd 使用者名稱”來改新添加使用者的密碼。想看一下成功了沒有?行,開啟存放密碼的檔案看一下就知道了,使用命令 “  cat /etc/shadow  ”查看即可,如果出現了 使用者名稱:一長字串,那就是成功了,如果出現的是你輸入的純文字密碼,那就重新修改密碼吧!
7、這樣的話就設定成功了。管理遠程登入軟體,試用您剛剛添加的zhoumanhe使用者登入看一下吧。

8、如果成功了,那我們就可以禁止掉root使用者的遠程登入了。

9、使用root登入進去,如果是在剛剛添加的zhoumanhe使用者,就是用直接輸入su,斷行符號,輸入密碼切換到root使用者。

$
$ su
Password:
#
10、這個的配置資訊在  /etc/ssh/sshd_config  這個檔案裡面,所以開啟這個檔案

# vi  /etc/ssh/sshd_config
11、找到 PermitRootLogin yes  這一句,將yes改成no,退出儲存;

PermitRootLogin no
12、修改了ssh的設定檔,所以還得重啟一下ssh服務才會生效,輸入以下命令重啟:

# service sshd restart
13、然後就重新使用ssh軟體,使用root使用者登入看一下吧,在login as:後面輸入root,然後斷行符號,讓你輸入密碼,輸入密碼之後,是不是發現密碼是正確的,但是提示”Access denied”。說明root已經被禁止掉ssh遠程登入了;

14、我們就更改一下centos使用ssh遠程登入的連接埠。還是開啟  /etc/ssh/sshd_config  這個檔案。

# vi  /etc/ssh/sshd_config
15、找到 #Port 22 這一行,把前面的#去掉,變成 Port 22,然後斷行符號,再下一行輸入 Port 8888 ,然後:wq儲存退出。【8888就是你要設定的連接埠,改成你想設定的就行,一般改成一個自己好記的,但是不能是現在已經用著的連接埠,不然有衝突。】

#Port 22
 #改成如下
Port 22
Port 8888
這樣是不是就有了兩行的Port了?沒錯,就是要兩行,22那一行是用於以防萬一的,為了避免,我們設定的另外一個連接埠萬一登入不上,我們還可以使用22連接埠登入上去改,不然沒有預留22連接埠,自己新添加的那個也登入不上去,那就只有。。。。聯絡客服吧!
16、剛剛我們知道,修改了ssh的設定檔,需要重啟ssh伺服器。

17、使用剛剛的那個連接埠登入看一下吧,成功了?,成功了就可以再次開啟  /etc/ssh/sshd_config  這個檔案把 Port 22 這一行刪除掉,然後再次儲存退出,重啟ssh服務。

18、到了這裡,我們的“linux禁止root使用者ssh遠程登入並修改ssh遠程登入連接埠”目的達到了。以後登入,就用新連接埠,新使用者登入吧,登入進去再su切換root或者其他許可權使用者。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.