在連接實例時,首先需要完成身份驗證,確保只有授權用戶能夠訪問和管理服務器資源,以增強安全性。創建實例時,您可以選擇一個系統預設的用戶作為初始登錄用戶。實例創建完成后,即可用該用戶身份登錄。本文將詳細介紹不同用戶的特點與區別,以及如何管理這些用戶和添加額外的遠程連接用戶。
Linux實例初始登錄用戶
初始登錄用戶說明
Linux實例的初始用戶是指您在創建Linux實例時設置的登錄用戶,對于Linux實例,初始用戶可以設置為root
或ecs-user
。root
和ecs-user
說明如下。
root
Linux系統的超級用戶,在系統安裝時默認創建,擁有操作系統的所有權限。root用戶不可被刪除。如果您需要使用其他用戶登錄實例,請參見添加更多用于遠程連接的用戶。
ecs-user(推薦)
Linux系統的一個普通用戶,沒有系統級的權限,只能執行被授權的操作,但可以通過使用
sudo
命令臨時獲得root權限執行操作。部分操作系統支持使用ecs-user作為初始登錄用戶。
在系統安裝時,root用戶會自動創建,如果您在創建實例時選擇使用ecs-user作為登錄名,會自動在您實例內部的操作系統中創建ecs-user用戶,也就是說同時存在root和ecs-user用戶,但root不用于登錄實例。
使用root用戶登錄可能會導致安全風險。阿里云基于云服務器安全考慮,建議您在支持普通用戶ecs-user的操作系統鏡像中,使用ecs-user作為初始登錄用戶。
支持ecs-user的操作系統鏡像請以控制臺界面為準,或者通過DescribeImages接口查看鏡像信息,若在返回的鏡像信息中
LoginAsNonRootSupported
字段為true
,則支持ecs-user作為初始用戶。
登錄憑證說明
在創建實例時,您可以為初始登錄用戶設置登錄憑證,包括密鑰對、自定義密碼以及創建后設置三個選項,區別如下:
密鑰對(推薦)
用于遠程連接(SSH方式)使用的認證方式,分為公鑰和私鑰,公鑰保存在實例中,私鑰由您自行保存,在認證過程中,密鑰不會直接傳輸,相比于密碼認證更安全。
重要如果在創建實例時選擇密鑰對作為登錄憑證,密碼登錄選項默認會被禁用,即默認無法通過用戶名和密碼登錄實例。此時如果您通過VNC登錄實例,需要先設置登錄密碼。設置登錄密碼的操作,請參見重置初始用戶的密碼(Linux/Windows)。
自定義密碼(不推薦)
用于遠程連接Linux實例時登錄系統的密碼。
創建后設置
如果您選擇創建后設置選項,在創建實例時,會自動使用root用戶作為初始登錄用戶,但不會開放登錄,無法通過root用戶連接實例。如果您需要連接實例,您可以使用以下兩種方式連接:
方式一:先設置實例登錄密碼或為實例綁定密鑰對,通過密碼/密鑰對登錄實例。設置實例登錄密碼以及綁定密鑰對的操作,請參見重置初始用戶的密鑰對(Linux)、重置初始用戶的密碼(Linux/Windows)。
方式二:無需設置密碼,開啟云助手功能的實例,可以使用會話管理免密登錄實例。
通過會話管理登錄實例時,使用的用戶為ecs-assist-user,更多信息,請參見通過會話管理連接實例。
Windows實例初始登錄用戶
初始登錄用戶說明
Windows的初始用戶是指您在創建Windows實例時設置的登錄用戶,對于Windows實例,初始用戶為administrator。該用戶是Windows用戶的超級管理員,擁有整個Windows系統的所有操作權限。對于初始用戶的管理,包括密碼修改可以在控制臺操作,請參見重置初始用戶的密碼(Linux/Windows)。
登錄憑證說明
在創建實例時,您可以為初始登錄用戶設置登錄憑證,包括自定義密碼、創建后設置兩個選項,具體說明如下:
自定義密碼
用于遠程連接Windows實例時登錄系統的密碼。
創建后設置
如果您選擇創建后設置選項,在創建實例時,不會為administrator設置密碼,如果您需要連接實例,您可以使用以下兩種方式連接:
方式一:先設置實例登錄密碼,然后通過administrator和該密碼遠程連接實例。設置實例的登錄密碼,請參見重置初始用戶的密碼(Linux/Windows)。
方式二:無需設置密碼,開啟云助手功能的實例,可以使用會話管理免密登錄實例。
通過會話管理登錄實例時,使用的用戶為system,更多信息,請參見通過會話管理連接實例。
管理實例初始用戶的憑證
當您的實例創建完成后,您可以在阿里云控制臺中管理初始用戶的密碼或密鑰對等信息。
重置初始用戶的密鑰對(Linux)
您可以在阿里云控制臺修改初始用戶的密鑰對。具體操作如下:
創建密鑰對。
綁定密鑰對。
在密鑰對頁面,找到步驟1創建的密鑰對,在對應操作列下,單擊綁定密鑰對,進入綁定密鑰對頁面。
在綁定密鑰對頁面,選擇需要綁定的ECS實例,然后單擊下一步。
設置合適的重啟方式后,單擊確認。等待實例重啟完畢后,密鑰對生效。
重置初始用戶的密碼(Linux/Windows)
您可以在阿里云控制臺修改初始用戶的登錄密碼。具體操作如下:
進入阿里云ECS控制臺,找到待修改密碼的實例,進入修改密碼頁面。
登錄ECS管理控制臺。
在左側導航欄,選擇 。
在頁面左側頂部,選擇目標資源所在的資源組和地域。
在實例列表頁面,找到需要修改密碼的實例,單擊對應操作列下的
。
在彈出重置實例密碼頁面,修改實例登錄密碼。
配置項說明:
登錄名:該項默認為您ECS實例的初始用戶的用戶名,無需修改。
新密碼/確認密碼:根據界面提示設置新密碼。
重置密碼的方式:
在線重置密碼(推薦):修改密碼后,無需重啟實例,但需要實例安裝云助手Agent,在線重置密碼支持重置實例其他用戶的密碼。
2017年12月01日之后使用阿里云公共鏡像創建的ECS實例,默認預裝了云助手Agent,如何安裝,請參見安裝云助手Agent。
離線重置密碼:修改密碼后,需要重啟實例。不需要實例安裝云助手。但離線重置密碼的方式僅支持重置實例初始用戶的密碼。如果不想
配置SSH密碼登錄策略(僅Linux系統的實例需關注該配置項):
開啟(推薦):若您需要通過SSH密碼認證的方式連接到Linux實例,請選擇開啟。
選擇該選項,會調整您用戶的SSH配置,開啟SSH的密碼登錄功能,即自動設置
/etc/ssh/sshd_config
中的PasswordAuthentication
為true
。保持原有設置:如果您不需要通過SSH密碼認證的方式連接到實例(比如通過VNC連接),可以使用此選項。該選項表示僅更改實例內部操作系統中用戶的登錄密碼。
選擇該選項,會保持原有的SSH配置不變,如果之前您的SSH配置文件中的
PasswordAuthentication
為false,可能無法通過SSH密碼認證的方式連接到實例Linux實例。
確認信息后單擊確認修改完成重置密碼的操作。
添加更多用于遠程連接的用戶
如果您需要創建更多用于遠程連接實例的用戶,您可以參考以下步驟,在操作系統內部創建普通用戶并開啟遠程連接。
Linux實例
在Linux實例中,添加遠程連接用戶后需要檢查SSH的配置文件/etc/ssh/sshd_config
。
使用密鑰對登錄時(SSH方式),必須開啟SSH密鑰對認證的功能,即保證SSH配置中的
PubkeyAuthentication
配置項為yes,已包含在下面操作步驟中。使用密碼登錄時(SSH方式),必須開啟SSH密碼認證的功能,即保證SSH配置中的
PasswordAuthentication
配置項為yes,已包含在下面的操作步驟中。使用VNC方式以及會話管理方式登錄時對該配置文件無要求。
本示例以創建新用戶exampleuser為例。
連接到ECS實例。
選擇合適的方式連接到ECS實例,具體操作,請參見2.1 通過SSH的方式連接實例(Linux)或2.3 通過會話管理連接實例(Linux/Windows)。
創建用戶。
輸入以下命令創建用戶:
sudo useradd -m <username>
<username>
是您準備創建用戶的用戶名,例如創建exampleuser
可使用以下命令。sudo useradd -m exampleuser
密碼/密鑰對設置。
設置密鑰對
密鑰對分為公鑰和私鑰,公鑰需要存儲在您的實例中,私鑰需要您自行保存,登錄時需要用到私鑰。
準備密鑰對。
您可以使用您已有的密鑰對,或者創建新的密鑰對,創建密鑰對操作如下。
重要請不要在實例中通過ssh-keygen創建密鑰對,請不要將您生成的私鑰保存在需要連接的ECS實例中。
在您本機的命令行工具中輸入以下命令,然后連續回車,代表生成一個長度為
2048
且加密方式為RSA
的密鑰對。ssh-keygen -t rsa -b 2048 -f "./id_rsa"
該命令會在當前所在路徑下生成一個
id_rsa
文件(私鑰),id_rsa.pub
文件(公鑰)。配置公鑰到
authorized_keys
配置文件。將公鑰里的內容復制到實例對應用戶根路徑下的
.ssh/authorized_keys
文件中。在用戶目錄下創建.ssh文件夾。命令如下:
sudo mkdir /home/<username>/.ssh
<username>
是您步驟2中創建的用戶的用戶名,例如您在第一步中創建了exampleuser
您可以使用以下命令編輯該用戶的配置文件。sudo mkdir /home/exampleuser/.ssh
在新建用戶的根路徑下創建
.ssh/authorized_keys
配置文件,并將您在步驟a中生成的公鑰文件(id_rsa.pub
)的內容復制到該配置文件中。配置文件的絕對位置及名稱如下:/home/<username>/.ssh/authorized_keys
<username>
是您步驟2中創建的用戶的用戶名。例如您在第一步中創建了exampleuser
,配置文件的絕對位置及名稱為:/home/exampleuser/.ssh/authorized_keys
您可以通過vim編輯器完成文件修改操作,關于vim的用法,請參見Vim編輯器。
修改
.ssh
目錄和authorized_keys
文件的權限。sudo chmod 700 /home/<username>/.ssh sudo chmod 600 /home/<username>/.ssh/authorized_keys
<username>
是您步驟2中創建的用戶的用戶名。例如您在第一步中創建了exampleuser
,則輸入以下命令。sudo chmod 700 /home/exampleuser/.ssh sudo chmod 600 /home/exampleuser/.ssh/authorized_keys
檢查并修改SSH的
/etc/ssh/sshd_config
配置文件。在配置用戶密鑰對之后,需要配置SSH服務開啟密鑰對認證,需要修改SSH的配置文件
/etc/ssh/sshd_config
中的PubkeyAuthentication
參數為yes
。您可以通過vim編輯器完成該操作,關于vim的用法,請參見Vim編輯器。
輸入命令,重啟
sshd
服務,使配置生效。sudo systemctl restart sshd
設置密碼
重要為確保安全,請不要使用弱密碼作為用戶的登錄密碼。
在實例中輸入以下命令設置密碼。
sudo passwd <username>
<username>
是您在步驟2中創建的用戶的用戶名。例如在步驟1中創建了exampleuser
,您可以使用以下命令完成設置密碼。sudo passwd exampleuser
根據界面提示輸入新密碼和確認密碼。
檢查并修改SSH的
/etc/ssh/sshd_config
配置文件。在配置用戶密碼之后,需要配置SSH服務開啟密碼認證,需要修改SSH的配置文件
/etc/ssh/sshd_config
中的PasswordAuthentication
參數為yes
。您可以通過vim編輯器完成該操作,關于vim的用法,請參見Vim編輯器。
輸入命令,重啟
sshd
服務,使配置生效。sudo systemctl restart sshd
(驗證)使用新創建的用戶遠程登錄到ECS實例。
Windows實例
要在Windows實例中添加新的遠程連接用戶,需要先創建新用戶,并將其添加到Remote Desktop Users
用戶組。
如果您需要兩個以上的用戶同時遠程登錄Windows實例,需要使用微軟的遠程桌面服務(Remote Desktop Services)的能力,更多關于遠程桌面服務的信息,請參見Windows Server 中的遠程桌面服務概述。
本示例以在Windows Server 2022系統的實例創建新用戶exampleuser為例。不同版本的Windows系統界面可能存在差異。
連接到ECS實例。
選擇合適的方式連接到ECS實例,具體操作,請參見2.2 通過RDP的方式連接實例(Windows)。
創建用戶。
打開控制面板,找到用戶賬戶,單擊下面的更改賬戶類型。
在賬戶管理頁面,單擊添加用戶賬戶,進入添加用戶頁面。
在添加用戶頁面,根據界面提示,設置新用戶的用戶名及密碼。
本示例以創建exampleuser為例,請您根據您的需求設置用戶名。
單擊下一步,然后單擊完成。完成新用戶的創建。
將新用戶添加到
Remote Desktop Users
用戶組。在任務欄的搜索框搜索計算機管理,單擊搜索到的計算機管理進入計算機管理頁面。
在
下,找到Remote Desktop Users用戶組。雙擊進入Remote Desktop Users屬性頁面。
操作流程如圖所示。
在Remote Desktop Users屬性頁面,單擊添加。
輸入步驟2中創建用戶的用戶名,單擊檢查名稱,之后輸入框會自動根據您輸入的用戶名稱補全用戶的名稱全稱。
單擊確定。在Remote Desktop Users屬性頁面依次單擊應用、確定。完成將用戶添加到用戶組的操作。
(驗證)使用新創建的用戶遠程登錄到ECS實例。