原文地址

配置的命名空间:config.ssh

config.ssh 中的设置与配置 Vagrant 如何通过 SSH 访问您的计算机相关。 大多数 Vagrant 设置一样,一般使用默认设置即可,但也可以根据自己的喜好进行微调。

1. 可用的设置项

config.ssh.username

设置 Vagrant 默认使用的 SSH 用户名。如果 provider 检测到更合适的用户,则可以自由覆盖此内容。默认情况下,这是“vagrant”,因为这是大多数公共 box 使用的用户名。

config.ssh.password

设置用于认证 Vagrant 的 SSH 用户的密码。建议使用基于密钥的认证(参考 private_key_path),而不是密码。如果使用密码,如果 insert_key 为 true 的话 Vagrant 会自动插入到密钥对。

config.ssh.host

要用 SSH 连接到的主机名或 IP 地址。默认为空,因为 provider 通常会自动找出。

config.ssh.port

要用 SSH 连接到的端口。默认是 22。

config.ssh.guest_port

The port on the guest that SSH is running on. This is used by some providers to detect forwarded ports for SSH. For example, if this is set to 22 (the default), and Vagrant detects a forwarded port to port 22 on the guest from port 4567 on the host, Vagrant will attempt to use port 4567 to talk to the guest if there is no other option.

客户端上运行 SSH 的端口。这被一些 provider 用来检测转发的 SSH 端口。例如,如果设置为 22(默认值),并且 Vagrant 从主机上的端口 4567 检测到客户机端口 22 的转发端口,则 Vagrant 将尝试使用端口 4567 与客户机进行对话(如果没有其他端口) 选项。

config.ssh.private_key_path

用于通过 SSH 访问客户机的私钥路径。默认情况下,这是随 Vagrant 一起提供的不安全私钥,因为这是公共 box 使用的私钥。如果你使用自定义 SSH 密钥创建自己的自定义 box,则应该指向该私钥。

也可以通过将其设置为数组来指定多个私钥。例如,如果使用默认私钥来引导机器,但稍后用更安全的密钥替换它,则这很有用。

config.ssh.keys_only

只使用 Vagrant 提供的 SSH 私钥(不使用任何存储在 ssh 代理的私钥)。默认是 true。

config.ssh.verify_host_key

执行严格的主机密钥验证。默认值是 false。

config.ssh.paranoid

执行严格的主机密钥验证。默认值是 false。

弃用 config.ssh.paranoid 选项已弃用,将在未来版本中删除。请改用 config.ssh.verify_host_key 选项。

config.ssh.forward_agent

如果为 true,则通过 SSH 连接进行代理转发。默认为 false。

config.ssh.forward_x11

如果为 true,则启用通过 SSH 连接进行的 X11 转发。默认为 false。

config.ssh.forward_env

要转发给客户机的主机环境变量数组。如果你熟悉 OpenSSH,会发现这对应于 SendEnv 参数。

config.ssh.forward_env = ["CUSTOM_VAR"]

config.ssh.insert_key

如果为 true,Vagrant 会自动插入一个用于 SSH 的密钥对,如果检测到机器内部的 Vagrant 默认不安全密钥,则替换。默认情况下是 true。

如果尚未使用私钥进行身份验证,或者依赖于默认的不安全密钥,该设置才会起作用。如果你不需要关心项目中的安全性,并且希望继续使用默认的不安全密钥,请将其设置为 false。

config.ssh.proxy_command

用于执行的命令行命令,用于接收要在 stdin 上发送到 SSH 的数据。这可以用来代理 SSH 连接。命令中的 %h 被主机替换,%p 被替换为端口。

config.ssh.pty

如果为 true,则 pty 将用于 provisioning。默认为 false。

此设置是一项高级功能,除非绝对必要,否则不应启用。它打破了 Vagrant 的一些其他功能,并且仅在绝对必要的情况下才会暴露。如果你可以找到一种不使用 pty 的方法,那就推荐使用。

当启用 pty 时,请注意命令输出不会流式传输到 UI。相反,一旦命令完成,输出将全部传送到 UI。

config.ssh.keep_alive

如果为 true,SSH 将会默认每 5 秒钟发送一个 keep-alive 包来保持连接的有效性。

config.ssh.shell

从 Vagrant 执行 SSH 命令时要使用的 shell。默认是 bash -l。注意这对运行 vagrant ssh 时获得的 shell 没有影响。此配置选项仅影响在 Vagrant 内部执行命令时使用的 shell。

config.ssh.export_command_template

用于在活动会话中生成导出的环境变量的模板。这在使用不兼容 Bourne 的 shell 如 C shell 时非常有用。该模板支持将两个变量替换为所需的环境变量键和环境变量值:%ENV_KEY%%ENV_VALUE%。默认模板是:

config.ssh.export_command_template = 'export %ENV_KEY%="%ENV_VALUE%"'

config.ssh.sudo_command

使用 sudo 执行命令时使用的命令。默认为 sudo -E -H %c%c 将被正在执行的命令替换。

config.ssh.compression

如果设置为 false,则此设置将不包括 ssh 进入机器时的压缩设置。如果没有设置,它将默认为 true,将使用 ssh 启用 Compression = yes。

config.ssh.dsa_authentication

如果设置为 false,则此设置在 ssh 登录到计算机时将不包括 DSAAuthentication。如果未设置,则默认为 true,将与 ssh 一起使用 DSAAuthentication=yes。

config.ssh.extra_args

This settings value is passed directly into the ssh executable. This allows you to pass any arbitrary commands to do things such as reverse tunneling down into the ssh program. These options can either be single flags set as strings such as “-6” for IPV6 or an array of arguments such as [“-L”, “8008:localhost:80”] for enabling a tunnel from host port 8008 to port 80 on guest.

这个设置值直接传递到 ssh 可执行文件中。这使你可以传递任何命令来执行诸如反向隧道切入 ssh 程序之类的任务。这些选项可以是将单个标志设置为字符串,例如“-6”表示 IPV6,或 [“-L”,“8008:localhost:80”] 这样的参数数组,以启用从主机端口 8008 到客户机的端口 80 的隧道。

Vagrant 手册之 Vagrantfile - SSH 设置 config.ssh的更多相关文章

  1. Vagrant 手册之 Vagrantfile - 机器设置 config.vm

    原文地址 配置的命名空间:config.vm config.vm 中的设置修改 Vagrant 管理的机器的配置. 1. 可用的设置项 config.vm.boot_timeout Vagrant 等 ...

  2. Vagrant 手册之 Vagrantfile - Vagrant 设置 config.vagrant

    原文地址 配置的命名空间:config.vagrant config.vagrant 中的设置修改 Vagrant 自身的行为. 1. 可用设置 config.vagrant.host 设置运行 Va ...

  3. Vagrant 手册之 Vagrantfile - 概述

    原文地址 Vagrantfile 的主要用途是描述用于项目的机器类型,以及如何配置和提供这些机器. Vagrant 的每个项目运行一个 Vagrantfile,并且 Vagrantfile 应该被提交 ...

  4. Vagrant 手册之 Vagrantfile - 最低版本

    原文地址 可以在 Vagrantfile 中指定一组 Vagrant 的版本,以强制人们使用带有 Vagrantfile 的特定版本的 Vagrant.这可以帮助解决使用带有 Vagrantfile ...

  5. Vagrant 手册之 Vagrantfile - 提示及技巧

    原文地址 Vagrantfile 是一种非常灵活的配置格式.语法基于 Ruby,可以用它做很多事情.在本页使用一些提示和技巧时,请注意正确使用它们. 1. 使用循环定义虚拟机 如果你想对多机器应用稍微 ...

  6. Vagrant 手册之 Vagrantfile - 配置版本

    原文地址 配置版本是 Vagrant 1.1+(引入了大量新功能和配置选项) 能够与 Vagrant 1.0.x Vagrantfiles 保持向后兼容的机制. 现在运行 vagrant init 时 ...

  7. Git TortoiseGit SSH设置

    Git TortoiseGit SSH设置 http://www.cnblogs.com/ChenRihe/p/Git_TortoiseGit_SSH.html TortoiseGit默认的SSH客户 ...

  8. 应用git(SSH设置)

    git配置完成email和user后,才可以生成SSH Key. $ git config --global user.name "自定义名称" $ git config --gl ...

  9. SSH设置秘钥登录

    设置 SSH 通过密钥登录 我们一般使用 PuTTY 等 SSH 客户端来远程管理 Linux 服务器.但是,一般的密码方式登录,容易有密码被暴力破解的问题.所以,一般我们会将 SSH 的端口设置为默 ...

随机推荐

  1. 从头到尾说一次 Java 垃圾回收,写得非常好!

    Java技术栈 www.javastack.cn 优秀的Java技术公众号 作者:聂晓龙(花名:率鸽),阿里巴巴高级开发工程 ⬆️ 图片来源于网络 之前上学的时候有这个一个梗,说在食堂里吃饭,吃完把餐 ...

  2. 【问题解决方案】GitHub上克隆项目到本地

    说明: 克隆线上项目到本地,可以直接clone克隆,不必再自己建文件夹啊,初始化啊. 命令: git clone + 想要克隆的项目的地址 END

  3. 帝国CMS模板中的多条件筛选方法

    需求:点击某一条目,调出与该条目关键词相关的类似词条数据 要点: 1.帝国CMS灵动标签使用   [e:loop= 2.专题关键词筛选  enewszt 3.SQL语句筛选   select * fr ...

  4. Taro -- 微信小程序密码弹窗

    记录一个类似支付密码的弹窗写法,实现是否免密功能.如图: index.js   import Taro, { Component } from '@tarojs/taro'   import { Vi ...

  5. Could not resolve all files for configuration ':app:debugCompileClasspath'.解决方案

    异常如下: Error:FAILURE: Build failed with an exception. * What went wrong:Could not resolve all files f ...

  6. Rust(一)介绍 安装

    目录 Rust安装 Rust介绍: Windows 安装步骤: Helle world 创建项目文件夹: 写并执行程序: Rust安装 安装过程简单快捷,直接参照官网即可,Rust安装 Rust介绍: ...

  7. join优化

    1.left outer join先执行连接操作,再将结果通过WHERE语句进行过滤 select s.ymd,s.symbol,s.price_close,d.dividend from stock ...

  8. 学习旧岛小程序 (1) flex 布局

    css : view 相当于 div 块级元素 display 默认设置 block display:inline 设置后 设置宽度高度是无效的 要设置宽度高度 又要设置为行内元素 我们设置: (1) ...

  9. 使用Github 当作自己个人博客的图床

    使用Github 当作自己个人博客的图床 前提 本文前提: 我个人博客的草稿是存放在 github上的一个仓库 diarynote 截图存放的图片或者需要放在文章中图片,会固定存放在对应的文件夹中,我 ...

  10. 专家告诉你!如何避免黑客BGP劫持?

    BGP前缀劫持是针对Internet组织的持久威胁,原因是域间路由系统缺乏授权和身份验证机制. 仅在2017年,数千起路由事件导致代价高昂的中断和信息拦截,而问题的确切程度未知.尽管在过去20年中已经 ...