Tag: ssh

SSH到Docker:权限被拒绝(publickey)

我运行一个docker集装箱,并希望使用emacs的tramp软件包ssh。 我可以成功地使用docker exec -it containername bash 。 但我只是想用我的emacs做configuration工作。 我已经将容器的端口22暴露给本地主机端口22。 顺便说一句,我有我的.ssh文件夹id_rsa 。 但是,即使我使用ssh -p 22 dwolf@localhost它仍然不起作用。 日志如下: OpenSSH_7.4p1, LibreSSL 2.5.0 debug1: Reading configuration data /Users/spacegoing/.ssh/config debug1: /Users/spacegoing/.ssh/config line 26: Applying options for * debug1: Reading configuration data /etc/ssh/ssh_config debug1: Connecting to localhost [::1] port 22. debug1: connect to address ::1 port 22: Connection refused debug1: Connecting […]

透明ssh连接转发到docker集装箱

我想要一个服务器透明地将来自客户端的传入SSH连接转发到docker集装箱。 这应该包括scp,git transport等等。 这必须使用密钥,密码被停用。 用户不应该看到服务器。 更新:是的,这实际上意味着用户应该不知道有一台服务器。 configuration必须完全在服务器上进行! client —–> server —–> container (actual connection) client ——————-> container (what the user should see) 那么,给出的是: user@client$ ssh user@server user@server$ ssh -p 42 user@localhost user@container$ 但是我想要的是这样的: user@client$ ssh user@server user@container$ 我尝试在authorized_keys文件中使用command="ssh -p 42 user@localhost"语法,这是有点用的,只是在第二个ssh连接中用户必须input密码,因为身份validation没有通过( server没有' t有user的私钥)。 此外,即使input密码,这种方法也不适用于scp 。 我也听说过tunnel=命令,但是我不知道如何设置它(并且manpage不太有用)。 我在Arch上使用OpenSSH 7.5p1。

使用MySQL Workbench连接到Docker MySQL

我试图通过MySQL工作台连接到Docker容器上的数据库,但我不确定我应该插入到以下字段中: SSH主机名(尝试localhost:3306&8001和0.0.0.0:3306&8001)SSH用户名 MySQL主机名:留作127.0.0.1 MySQL服务器端口:3306 我的数据库名称,用户名和密码都是“magento”。 猜测这只是SSH信息是不正确的。 有人可以帮忙吗? Docker PS结果 由于我正在进行的项目,公司和客户名称已被删除 CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 25da671f766d mageinferno/magento2-nginx:1.11-1 "/usr/local/bin/st…" 5 hours ago Up 4 hours 443/tcp, 0.0.0.0:8080->80/tcp CLIENTaws_app_1 f1f7fb0e7174 COMPANY/magento2-php:7.0-fpm "docker-php-entryp…" 5 hours ago Up 4 hours 9000/tcp CLIENTaws_phpfpm_1 69388c2ce5c7 percona:5.7 "docker-entrypoint…" 5 hours ago Up 4 hours 0.0.0.0:8001->3306/tcp CLIENTaws_db_1

SSH代理从Mac OS转发到Docker Alpine容器

好吧,对于几个项目,我需要访问我的私人存储库,所以我想转发主机的SSH代理到容器,以允许从这些私人存储库中检索。 最终我想在docker-compose中实现这个。 我发现了很多答案和解决scheme,指出这样的事情: docker run –rm -t -i \ -v $SSH_AUTH_SOCK:/ssh-agent \ -e SSH_AUTH_SOCK=/ssh-agent \ alpine:3.6 sh 但是当我在那里运行ssh-add -l (在确认openssh安装之后) 我得到以下错误: 连接到代理时出错:连接被拒绝 也试过这在我的docker组合设置,但它似乎并没有像它应该的工作。 由于大多数post和解决scheme都是几年之久,所以我希望有人能够帮助我获得准确的最新信息。

在克隆或推入docker gitlab时询问密码

只需要用docker安装最新版本的gitlab( https://hub.docker.com/r/gitlab/gitlab-ce/) ,add ssh key,但是在push-docker gitlab 桌面系统:window10,osx 服务器系统:centos 7 docker git(最新版本):docker pull gitlab / gitlab-ce 这里是ssh -vt输出: $ ssh -vt git@23.234.53.236 OpenSSH_7.3p1, OpenSSL 1.0.2k 26 Jan 2017 debug1: Reading configuration data /c/Users/Nathan/.ssh/config debug1: Reading configuration data /etc/ssh/ssh_config debug1: Connecting to 23.234.53.236 [23.234.53.236] port 22. debug1: Connection established. debug1: identity file /c/Users/Nathan/.ssh/id_rsa type 1 debug1: key_load_public: […]

泊坞窗。 如何让bash \ ssh运行容器(run -d)?

我想ssh或bash运行docker集装箱。 请看例子: $ sudo docker run -d webserver webserver is clean image from ubuntu:14.04 $ sudo docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 665b4a1e17b6 webserver:latest /bin/bash … … 22/tcp, 80/tcp loving_heisenberg now I want to get something like this (go into runned container): $ sudo docker run -t -i webserver (or maybe […]

通过ssh转发x11后台会发生什么?

当我在主机上运行一个xServer,然后使用ssh连接到另一台机器时,我试图熟悉幕后实际发生的事情: ssh -Y user@machine 。 在这种情况下,我将在Windows上使用cygwin,并将DISPLAY环境variables设置为:0.0并且一旦连接到远程计算机就会运行一个GUI应用程序,这将显示在我的主机上。 Mac将使用本地xServer的石英(抱歉,如果这个术语不正确,但希望你知道我的意思),将使用ssh -X user@machine而不是-Y 。 这里的目标是拥有一个Docker容器,它只负责安装和运行GUI应用程序。 我将在主机上运行Docker容器,GUI将从目标主机上popup。 我已经通过ssh做了这个工作,并手动在容器中启动一次GUI应用程序。 我只需要知道如何configuration这个香草Linux机器(Docker容器)来转发GUI。 我想了解ssh -Y命令实际上是如何正确设置转发的是我所需要的缺失的难题。 我对.Xauthority文件的存在有一个模糊的理解。 我并不关心连接的安全性。 工作后我会担心的。

docker集装箱中的基于端口的路由

我有一个docker应用程序容器( node:latest形象),它有两个networking接口: eth1:这是一个默认的接口,是来自服务的所有容器之间的桥接networking。 (由pipeworkpipe理,但我不能在这个层面上改变任何东西) eth0:这是一个普通的docker0接口,除eth1以外的所有地方都可以访问。 这里是默认的路由表: Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 10.25.88.254 0.0.0.0 UG 0 0 0 eth1 10.25.88.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1 172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0 正如你所看到的,有必要将eth1作为默认接口,但是这会导致我一个问题:我的应用程序需要ssh访问一些其他远程服务器,这些服务器不能通过eth1访问,但eth0有访问权限。 所以我需要改变这个请求的路线。 我的第一个解决scheme是: route add -net 10.20.33.0/24 gw 172.17.42.1 这种方法工作正常,我将获得访问范围10.20.33.0/24地址。 但它会阻止从主机访问应用程序本身。 应用程序在端口80上运行,添加此路由后,来自10.20.33.0/24范围内的主机的所有请求10.20.33.0/24将失败。 所以我想这条路线是如此全球化,并影响所有input/输出请求的IP范围。 […]

如何sshdocker集装箱

我正在运行容器hypriot / rpi-busybox-httpd 我想ssh到docker集装箱:但它给错误: pi@raspberrypi:~ $ docker exec -it cc55da85b915 bash rpc error: code = 2 desc = oci runtime error: exec failed: container_linux.go:247: starting container process caused "exec: \"bash\": executable file not found in $PATH" pi@raspberrypi:~ $ docker exec -it cc55da85b915 sh rpc error: code = 2 desc = oci runtime error: exec failed: […]

执行到kubernetes / Docker中的Pods /容器,从不包含预装bash的图像创build

我试图从此映像创buildhaproxy-ingress吊舱,使用以下命令: kubectl -n kube-system exec -it haproxy-ingress-4122301161-bcd94 /bin/bash 然后我得到这个消息 rpc error:code = 13 desc =无效的头字段值“oci运行时错误:exec失败:container_linux.go:247:启动容器进程导致\”exec:\\“/ bin / bash \\”:stat / bin / bash :没有这样的文件或目录\“\ n” 有没有一种方法来执行一个容器,使用没有预装bash的图像创build的容器?