Tag: sshd

如何从Windows连接到Docker容器内的SSHD?

我有一个Ruby on Rails环境,并将其转换为在Docker中运行。 这主要是因为开发机器是Windows笔记本电脑,而服务器则不是。 我有Docker容器主要运行,现在我想连接RubyMinedebugging器。 为了达到这个目的,build议在容器中设置一个SSH服务器。 https://intellij-support.jetbrains.com/hc/en-us/community/posts/207649545-Use-RubyMine-and-Docker-for-development-run-and-debug-before-deployment-for-testing- 我使用https://docs.docker.com/engine/examples/running_ssh_service/#build-an-egsshd-image减去EXPOSE 22中的dockerfile行成功地将SSHD添加到容器中(因为它不能与端口一起工作在docker-compose.yml中映射)。 但是端口不能在本地机器上访问 CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 6652389d248c civilservice_web "bundle exec rails…" 16 minutes ago Up 16 minutes 0.0.0.0:3000->3000/tcp, 0.0.0.0:3022->22/tcp civilservice_web_1 当我试图指向PUTTY在本地主机和3022,它说,服务器意外closures连接。 我在这里错过了什么? 这是我的dockerfile FROM ruby:2.2 RUN apt-get update && apt-get install -y \ build-essential \ libpq-dev \ nodejs \ openssh-server RUN mkdir /var/run/sshd […]

当应用程序在docker容器中运行时试图连接到亚扪人sshd

使用sbt-native-packager在基于anapsix / alpine-java:8的Docker镜像中发布应用程序。 当连接到亚扪人sshd,得到这个: $ ssh -l repl 10.20.2.10 -p 22222 Password authentication Password: Welcome to the Ammonite Repl 0.8.2 (Scala 2.11.8 Java 1.8.0_121) Connection to 10.20.2.10 closed. 和这个日志: INFO Session repl@/10.20.1.77:49204 authenticated – bash: /dev/tty: No such device or address – bash: /dev/tty: No such device or address INFO Server session created from /10.20.1.77:49204 […]

sshd AuthorizedKeysCommand引发状态127

我正在尝试构build一个ssh服务来允许push / pull到phabricator回购。 我dockerized所有的服务,我目前遇到了一个奇怪的错误,无法执行必要的身份validation脚本的SSH。 docker镜像运行php-fpm和sshd服务,把ssh和必要的php脚本联合起来。 特别是,我有以下/ etc / ssh / sshd_config: AuthorizedKeysCommand /usr/libexec/phabricator-ssh-hook.sh AuthorizedKeysCommandUser git AllowUsers git Port 2222 Protocol 2 PermitRootLogin no AllowAgentForwarding no AllowTcpForwarding no PrintMotd no #PrintLastLog no PasswordAuthentication no ChallengeResponseAuthentication no AuthorizedKeysFile none PidFile /var/run/sshd-phabricator.pid (作为一个方面,PrintLastLog抛出一个错误,当我启动sshd,我不认为是相关的,但可能是??) 当我手动运行 su – git -c "/srv/phabricator/scripts/ssh/ssh-auth.php git" ,我能够成功执行脚本。 但是,当我在debugging模式( /usr/sbin/sshd -d -d -d )下运行时检查sshd日志时,出现以下错误: …other […]

从Docker返回ssh隧道

我试图设置回到我的服务器的SSH隧道(为了有权访问我的客户端设备没有白色的IPv4)。 然后,我想能够从服务器连接到我的客户端设备。 问题是,我不能使它在捆绑Server + HostMachine + Docker中工作。 我到目前为止所做的: 当我从主机创buildback-ssh-tunnel时,我可以build立从服务器到主机的连接。 没问题。 我用: ssh -f -T -N -o StrictHostKeyChecking=no \ -R *:"$port":localhost:"$portClient" "$usernameServer"@"$server" 但是,当我从Docker Container运行此脚本时,没有结果。 我上了服务器 ssh: connect to host localhost port 43500: Connection refused 我没有忘记暴露端口23(我在该端口上使用ssh),并在docker-compose设置中绑定23:23。 我试图用这个线程来设置sshd服务。 https://docs.docker.com/engine/examples/running_ssh_service/ 我只能从内部networking连接,但不能从服务器连接: ssh root@192.168.1.21 -p 23 [成功。 我收紧容器。] ssh hostuser@192.168.1.21 [成功。 我到达主机] PS我不确定是否需要在docker中运行的sshd能够通过反向SSH隧道连接。

如何configurationDebian SSHD在Docker容器中进行远程debugging?

我试图设置远程debugging到一个Docker Debian容器,以debugging我的Windows笔记本电脑上的Ruby应用程序。 这是引导我在这个方向的职位: https : //intellij-support.jetbrains.com/hc/en-us/community/posts/207649545-Use-RubyMine-and-Docker-for-development-run-and -debug-前部署换testing- 我在容器中运行了Ruby应用程序和SSHD,但是我发现configurationSSHD的配方与Ruby映像所基于的Linux发行版不完全兼容。 我在此Docker文档页面上configuration了我的SSHDconfiguration: https : //docs.docker.com/engine/examples/running_ssh_service/ 我的图像是基于ruby:2.2的Docker Hub镜像,它使用Debian 8而不是上面的SSHD示例中使用的Ubuntu 16.04。 我可以到达SSH提示符,但是我无法使用在dockerfile中设置的根目录的屏幕录像密码进行login。 我打开任何解决scheme的工作,要么正确启用根login或添加一个新的用户具有正确的权限,以允许远程debugging。 我只是好奇Debian上下文中最直接的path。 如果它创build一个新的用户,他们需要什么权限? 另外,为了清楚起见,我把这个作为一个试运行来处理,当我去部署应用程序用于任何开发之外的环境时,显然将确保以某种方式去除SSHDfunction。 在此先感谢您的帮助。 这是我目前的dockerfile FROM ruby:2.2 RUN apt-get update && apt-get install -y \ build-essential \ libpq-dev \ nodejs \ openssh-server RUN mkdir /var/run/sshd RUN echo 'root:screencast' | chpasswd RUN sed -i 's/PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config […]

如何在Alpine上的OpenSSH中debugging无法使用的无密码RSA证书?

我计划使用真正的SSH客户端和SSH服务器编写和运行一些集成testing。 因为这需要服务器级的configuration,所以我在Docker中设置了testing,这样服务器就可以按照正确的规范构build,OpenSSH服务器启动,testing运行。 我的系统的一部分需要一个非root用户(称为nonpriv )能够ssh密码的基础上的服务器。 我已经生成了服务器证书和非root用户证书。 我已经build立了localhost作为一个已知的主机(所以服务器的真实性已经确认),但我很努力设置证书作为授权密钥。 我希望能够做ssh localhost作为nonpriv用户,并自动获得一个shell。 但是它跳过密钥,并进入密码authentication,这是不是我想要的。 Docker的ENTRYPOINT是这样的,所以每次运行的服务器密钥都是不同的: #!/bin/sh # # With thanks to https://github.com/danielguerra69/alpine-sshd if [ ! -f "/etc/ssh/ssh_host_rsa_key" ]; then # generate fresh rsa key ssh-keygen -f /etc/ssh/ssh_host_rsa_key -N '' -t rsa fi if [ ! -f "/etc/ssh/ssh_host_dsa_key" ]; then # generate fresh dsa key ssh-keygen -f /etc/ssh/ssh_host_dsa_key -N '' -t […]

Docker不会启动MONGODB,并且在启动其他服务时不会出现IPAddress

我已经在serverfault.com上问过这个问题。 我也在这里问,因为我在这两个站点看到不同的问题(看起来他们有不同的数据库)。 我一直在试图从Fedorabuild立一个操作系统映像,但没有成功启动以下内容: Systemd SSHD 的RabbitMQ MongoDB的 我可以得到前3(Systemd,SSHD和RabbitMQ-Server)的工作。 我也可以让MongoDB在容器中工作。 但是,我无法让MongoDB与其他3个服务一起工作。 另外,当我尝试“dockerize”MongoDB时,IP地址不显示。 我在Dockerfile中丢失了什么? 这是我的dockerfile: FROM fedora:20 MAINTAINER “Ashfaque” <ashfaque@email.com> ENV container docker RUN yum -y update; yum clean all RUN yum -y install systemd; yum clean all; \ (cd /lib/systemd/system/sysinit.target.wants/; for i in *; do [ $i == systemd-tmpfiles-setup.service ] || rm -f $i; done); \ […]

如何让我的docker centos sshd无密码服务器运行?

我正在运行我的docker容器: docker run -d sequenceiq/hadoop-docker:2.6.0 Dockerfile在这里 。 在我的Mac上启动后 – 我运行docker ps并获得: 6bfa4f2fd3b5 sequenceiq/hadoop-docker:2.6.0 "/etc/bootstrap.sh -d" 4 minutes ago Up 4 minutes 22/tcp, 8030-8033/tcp, 8040/tcp, 8042/tcp, 8088/tcp, 49707/tcp, 50010/tcp, 50020/tcp, 50070/tcp, 50075/tcp, 50090/tcp kind_hawking 那我就跑了 ssh -v localhost -p 22 我越来越 OpenSSH_7.4p1, LibreSSL 2.5.0 debug1: Reading configuration data /Users/User/.ssh/config debug1: Reading configuration data /etc/ssh/ssh_config debug1: Connecting […]

docker集装箱不能使用“服务sshd重启”

我正在尝试构build一个hadoop Dockerfile 。 在构build过程中,我补充道: && apt install -y openssh-client \ && apt install -y openssh-server \ && ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa \ && cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys \ && chmod 0600 ~/.ssh/authorized_keys && sed -i '/\#AuthorizedKeysFile/ d' /etc/ssh/sshd_config \ && echo "AuthorizedKeysFile ~/.ssh/authorized_keys" >> /etc/ssh/sshd_config \ && /etc/init.d/ssh restart 我假设当我运行这个容器时: docker run […]

使用docker容器自动启动sshd

鉴于: 基于Ubuntu的容器:13.10 安装了ssh(通过apt-get install ssh ) 问题:每次启动容器时,我都必须手动运行sshd service ssh start 试过: update-rc.d ssh defaults ,但它没有帮助。 问:如何设置容器在容器启动时自动启动sshd服务?