天天看點

支援多使用者的遠端編譯伺服器搭建一、賬戶管理二、SSH管理三、其它

通過SSH以root使用者登入遠端伺服器(主要是要有超級管理者權限),可以是遠端伺服器主機,亦可是安裝在遠端伺服器主機上的docker、podman等容器(需提前啟動)。

在遠端伺服器上配置好編譯環境,然後添加低權限使用者(所有使用者共用一個端口,使用同一個容器):

一、賬戶管理

指令行建立新的使用者賬戶:

使用useradd時若不設定其它參數,可能出現在/home目錄未建立和使用者名同名的目錄,且存在密碼洩漏風險(密碼記錄在/etc/passwd而不是/etc/shadow),推薦使用adduser。

useradd <username> -m -b /home -d /home/<username> -p <passwords> -s /bin/bash  //或使用passwd <username>添加密碼
adduser <username>
           

預設情況下,在Ubuntu上,sudo組的成員被授予sudo通路權限。如果希望新建立的使用者具有管理權限,請将使用者添加到sudo組:

sudo usermod -aG sudo username  //更通用的方式是使用

visudo

指令編輯

/etc/sudoers

檔案

visudo -f /etc/sudoers
           

指令行删除使用者賬戶:

推薦使用deluser

userdel <username>
           

要删除使用者而不删除使用者檔案,請運作:

deluser <username>
           

如果要删除并且删除使用者的家目錄和郵件使用

--remove-home選項

deluser --remove-home <username>
           

檢視所有使用者和使用者組:

cat /etc/shadow  //檢視系統中存在的所有使用者。
cat /etc/group  //檢視系統中存在的所有使用者組。
           

修改檔案(夾)所有者和通路權限:

chown(英文全拼:change owner)指令用于設定檔案(夾)的所有者和關聯組

chmod(英文全拼:change mode)指令是控制使用者對檔案的權限的指令

支援多使用者的遠端編譯伺服器搭建一、賬戶管理二、SSH管理三、其它

二、SSH管理

service ssh status
service ssh start  //容器中在root使用者啟動ssh後,隻要不使用podman stop <container-name>,容器中的ssh針對所有使用者均保持啟動狀态。
service ssh restart
           

容器中啟動ssh狀态總是sshd is not running

Linux使用者管理和SSH遠端配置

問題:單容器多使用者,直接在主控端使用低權限使用者登入進容器,目前環境變量配置均是root,比如 echo $HOME,echo $USER,echo $LOGNAME 等均是root使用者的配置。但遠端PC使用SSH登入容器時卻不會這樣???

三、其它

podman建立容器參數配置參考:

支援多使用者的遠端編譯伺服器搭建一、賬戶管理二、SSH管理三、其它

通過SSHFS可将遠端伺服器目錄挂載到本地計算機。

mount: sshfs [email protected]:/home/slf/SSHMountDir /home/pc/246_Server -p 60040
umount: fusermount -u /home/pc/246_Server
           

有多個使用者的分布式遠端檔案系統較常使用諸如蘋果歸檔協定(AFP)、網絡檔案系統(NFS)和伺服器消息塊(SMB)。SSHFS是這些協定的備選方案,僅适合用于使用者确信檔案和目錄不會同時在被另一個使用者寫入。

SSHFS在與其他網絡檔案系統協定相比時的優點是,由于使用者已具有對主機的SSH通路,它不需要任何額外的配置工作,也不需要在防火牆中打開額外的傳入端口。

檢視已經開啟的端口:sudo ufw status

打開端口:sudo ufw allow <port>

開啟防火牆:sudo ufw enable

重新開機防火牆:sudo ufw reload

檢視指令用法:sudo ufw --help(不支援 -h)

鄭重提示:①本文不允許轉載,若認可本文,可點贊收藏關注。

                  ②若有疑問,可在評論區留言互相讨論。

繼續閱讀