容器搭建sshd服務
阿新 • • 發佈:2020-09-21
容器搭建sshd服務
通過外部伺服器訪問docker容器內部,下面以centos使用ssh連線為例:
宿主機
1、準備一個centos映象
docker pull centos:7
2、映象容器化
docker run -it --name con_ssh centos:7 bash
容器內
1、容器中安裝sshd
yum install passwd openssl openssh-server -y
2、啟動sshd
-
/usr/sbin/sshd -D &
-
報錯如下:
[root@ec5a752c0605 /]# /usr/sbin/sshd
Could not load host key: /etc/ssh/ssh_host_rsa_key
Could not load host key: /etc/ssh/ssh_host_ecdsa_key
Could not load host key: /etc/ssh/ssh_host_ed25519_key
執行以下命令解決該問題:
[root@ec5a752c0605 ~]# ssh-keygen -q -t rsa -b 2048 -f /etc/ssh/ssh_host_rsa_key -N ''
[root@ec5a752c0605 ~]# ssh-keygen -q -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key -N ''
[root@ec5a752c0605 ~]# ssh-keygen -t dsa -f /etc/ssh/ssh_host_ed25519_key -N ''
3、修改 /etc/ssh/sshd_config 配置資訊
- UsePAM yes 改為 UsePAM no
sed -i "s/#UsePrivilegeSeparation.\*/UsePrivilegeSeparation no/g" /etc/ssh/sshd_config
修改完後,重新啟動sshd
4、修改root密碼
-
[root@ec5a752c0605 ~]# passwd rot
輸入密碼
此時可以將該容器打成映象,也可以後續將步驟整理成Dockerfile。
返回到宿主機,使用ssh root@容器ip
容器ip檢視方式:docker inspect 容器名