MAC OSX使用公鑰方式登錄Linux服務器並進行安全加固


登錄Linux服務器的方式一般是使用ssh,直接使用密碼登錄既要記憶密碼在輸入過程中又有安全風險。所以本文將提供一個使用公鑰登錄的方式來解決輸入密碼的問題。

首先在mac上生成一個私鑰、公鑰對

首先,請打開終端。可以使用spotlight直接搜索term,就可以點擊應用打開。

打開終端后輸入下面的命令:

   $  ssh-keygen -t rsa -b 4096 -C 'test'

# 其中 -t表示加密類型,這里使用rsa
# -b表示加密位數
# -C表示備注信息

一路回車下去可以生成兩個文件,id_rsa和id_rsa.pub文件。其中id_rsa為私鑰文件,需要保存好,被別人獲取的話別人也一樣可以登錄你的服務器。
當然在生成私鑰的過程中,也可以對私鑰增加密碼,那么每次使用私鑰登錄時都需要輸入密碼。

本機放置私鑰位置

將私鑰放到本地home目錄的.ssh目錄下。若沒有.ssh目錄,則新建一個目錄。

$ mkdir -p /home/test/.ssh
$ cp id_rsa /home/test/.ssh

將公鑰上傳到Linux服務器

首先要確認你要使用公鑰登錄使用的用戶,直接用該用戶使用密碼登錄。
然后新建.ssh和authorized_keys,給authorized_keys文件600權限,給.ssh文件夾700權限

[test@vps ~]$ mkdir -p /home/camash/.ssh
[test@vps ~]$ cd .ssh
[test@vps .ssh]$ touch authorized_keys
[test@vps .ssh]$ chmod 600 authorized_keys
[test@vps .ssh]$ cd ..
[test@vps ~]$ chmod 700 .ssh/

然后在本地mac端口上新開一個term頁簽,使用scp將本地的公鑰文件id_rsa.pub傳送到Linux服務器上。

$ scp id_rsa.pub test@vps:.ssh/

使用cat命令將公鑰追加到authorized_keys文件

[test@vps .ssh]$ cat id_rsa.pub >> authorized_keys

修改sshd_config的配置參數

在Linux服務器上,使用root用戶修改/etc/sshd_config文件的配置參數。使用以下參數打開公鑰登錄。

RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile      .ssh/authorized_keys

為了增加Linux服務器的安全強度,可以設置以下幾個參數。不過請在確認使用公鑰免密登錄可行后再修改以下的參數。

PermitEmptyPasswords no
PasswordAuthentication no
PermitRootLogin no
Port 12222

配置完成后,就可在Mac上進行登錄測試。

直接使用以下的命令,若一切順利,不使用密碼便可以連接到目標Linux服務器。

$ ssh test@vps

更近一步,若不想輸入用戶或者主機名,還可以使用config給這個訪問增加一個別名

首先,在.ssh下增加一個文件config

$ touch config

在config中按以下內容添加服務器的別名和登錄信息。

$ cat config
Host        myvps #別名
HostName    vps
Port        12222
User        test
IdentityFile    ~/.ssh/id_rsa

若要增加新的服務器信息,直接在config另起一段增加以上信息即可。

文件建立完成之后,就可以使用別名的登錄服務器。

$ ssh myvps
Last login: Sun Jan 17 22:31:31 2016 from xxx.xx.xx.xxxx
[test@vps ~]$


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM