zoukankan      html  css  js  c++  java
  • ssh远程连接docker中linux(ubuntu/centos)

    ssh远程连接docker中linux(ubuntu/centos)

    https://www.jianshu.com/p/9e4d50ddc57e

    centos
    docker pull centos:latest 下载centos7镜像
    docker run -i -t centos:latest /bin/bash运行下载好的centos7镜像
    yum install passwd openssl openssh-server -y
    启动sshd:
    /usr/sbin/sshd -D
    这时报以下错误:

    [root@ b5926410fe60 /]# /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@b5926410fe60 /]# ssh-keygen -q -t rsa -b 2048 -f /etc/ssh/ssh_host_rsa_key -N ''
    [root@b5926410fe60 /]# ssh-keygen -q -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key -N ''
    [root@b5926410fe60 /]# ssh-keygen -t dsa -f /etc/ssh/ssh_host_ed25519_key -N ''
    

    然后,修改 /etc/ssh/sshd_config 配置信息:

    将端口22的注释去掉、permitrootlogin yes打开、protocol 2打开
    UsePAM yes 改为 UsePAM no
    UsePrivilegeSeparation sandbox 改为 UsePrivilegeSeparation no
    接着执行

    [root@b5926410fe60 /]# sed -i "s/#UsePrivilegeSeparation./UsePrivilegeSeparation no/g" /etc/ssh/sshd_config
    [root@b5926410fe60 /]# sed -i "s/UsePAM./UsePAM no/g" /etc/ssh/sshd_config
    

    修改完后,重新启动sshd
    /usr/sbin/sshd -D
    修改容器中的密码
    通过passwd命令
    通过上述操作,再将此时容器保存为镜像
    docker commit b5926410fe60 centos7-ssh
    删除之前的容器
    基于新镜像运行容器
    docker run -d -p 10022:22 centos7-ssh:latest /usr/sbin/sshd -D

    从远程连接
    ssh root@宿主机ip -p 10022

    到此为止,成功。

    ubuntu
    ubuntu操作类似,参考

    参考资料
    centos

  • 相关阅读:
    deepin-wine-tim 字体发虚
    windows&linux双系统时间相差8小时
    Linux 禁用 ipv6
    双系统win10更新后无法进入linux
    Failed to receive SOCKS4 connect request ack 解决
    zsh 使用通配符功能
    vux修改css样式的2种办法
    Ubuntu 16.04 安装OpenSSH7.4
    Nginx开启http2访问和gzip网页压缩功能
    vue开发环境和生产环境里面解决跨域的几种方法
  • 原文地址:https://www.cnblogs.com/Leo_wl/p/9446241.html
Copyright © 2011-2022 走看看