Docker Ubuntu上安装ssh和连接ssh

下面所有操作都是在阿里云服务器上进行,ubuntu18.04环境。Docker 版本是18.09.6

  1. 首先从云上拉取一个ubuntu的一个镜像
root@LIZ:~# docker pull ubuntu  # 如果是在自己的物理机上操作前面要加sudo,下同

在这里插入图片描述
使用docker image ls 查看刚才拉取下来的镜像:
在这里插入图片描述

  1. 启动镜像
root@LIZ:~# docker run -itd -p 6789:22 7698f282e524

这段命令的意思是在后台启动镜像,并将本机的6789的端口映射到容器的22端口,最后那一串字符是IMAGE ID(镜像id),可以通过docker image ls 查看:
在这里插入图片描述
只要没有报错,显示一串字符就说明镜像启动成功了,可以通过docker container ls 查看启动的容器:

### 在基于 Ubuntu 22.04 的 Docker 容器中配置并启动 SSH 服务 要在基于 Ubuntu 22.04 的 Docker 容器中正确配置并启动 SSH 服务,可以按照以下方法操作: #### 创建并运行容器 首先,通过 `docker run` 命令创建一个新的基于 Ubuntu 22.04 的容器,并映射主机端口到容器内的 SSH 端口 (默认为 22),以便可以从外部访问该容器中的 SSH 服务。 ```bash docker run -itd -p 20022:22 --name ssh_container ubuntu:22.04 ``` 此命令会以后台模式 (`-d`) 启动一个名为 `ssh_container` 的新容器,并将主机的端口 `20022` 映射到容器内部的 SSH 默认端口 `22`[^2]。 --- #### 进入容器并安装 OpenSSH Server 进入已创建的容器以完成后续配置工作: ```bash docker exec -it ssh_container /bin/bash ``` 在容器内安装 OpenSSH 服务器软件包: ```bash apt update && apt install -y openssh-server ``` 这一步更新了 APT 软件源列表并安装了必要的 OpenSSH 服务器组件[^1]。 --- #### 配置 SSH 服务 确保 `/etc/ssh/sshd_config` 文件存在且未被修改。如果需要调整某些参数(例如更改监听地址或启用密码认证),可以通过编辑此文件来实现: ```bash nano /etc/ssh/sshd_config ``` 常见的配置项包括但不限于: - **PermitRootLogin yes/no**:允许或拒绝 root 用户登录。 - **PasswordAuthentication yes/no**:开启或关闭密码验证功能。 - **Port 22**:指定 SSH 使用的端口号,默认为 22。 保存退出后重启 SSH 服务使更改生效: ```bash service ssh restart ``` --- #### 设置用户账户密码 为了安全起见,建议创建一个非特权用户用于远程登录: ```bash adduser new_user ``` 随后为其设定初始密码: ```bash passwd new_user ``` 注意记录下用户名及其对应的密码,稍后测试连接时需要用到它们。 --- #### 测试 SSH 功能 返回宿主机环境尝试通过客户端工具连接至刚搭建好的 SSH 服务实例: ```bash ssh new_user@localhost -p 20022 ``` 成功建立会话即表明整个流程顺利完成。 --- #### 自定义优化选项(可选) 对于生产环境中部署的服务而言,还应考虑额外的安全加固措施,比如使用密钥对代替传统密码方式、限制特定 IP 地址范围访问以及定期审查日志文件等。 ---
评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值