SSH Settings

配置命名空间:config.ssh

config.ssh的设置涉及到将如何配置vagrant使其通过ssh访问你的计算机。与大多数vagrant设置一样,默认设置通常都很好,但是你可以根据需要进行微调。

Available Settings可用设置

  • config.ssh.username (string) :这将设置Vagrant将SSH设置为默认的用户名。如果Providers检测到更合适的用户,它们可以自由地重写该命令。默认情况下,该值为“vagrant”,因为大多数公共boxes都是这样做的。
  • config.ssh.password (string) :这将设置vagrant将用于验证SSH用户身份的密码。注意,Vagrant建议你使用基于键的身份验证,而不是基于密码的(请参阅下面的private_key_path)。如果使用密码,当insert_key为true时,vagrant将自动插入一个密钥对。
  • config.ssh.host (string):SSH要进入的主机名或IP。默认情况下,这是空的,因为Providers通常会为你解决这个问题。
  • config.ssh.port (integer) :SSH连接的端口,默认为22
  • config.ssh.guest_port (integer) :SSH正在运行的客户机上的端口。一些Providers使用它来检测SSH的转发端口。例如,如果将其设置为22(默认),并且Vagrant从主机上的4567端口检测到一个连接到客户端上22端口的转发端口,如果没有其他选择,Vagrant将尝试使用主机的4567端口与客户进行对话。
  • config.ssh.private_key_path (string, array of strings):指向用于SSH连接到客户机器的私钥的路径。默认情况下,这是一个不安全的私钥,与vagrant一起运输,因为这是公共boxes使用的。如果你使用自定义SSH密钥创建自己的自定义box,则应该指向该私钥。你还可以通过将其设置为数组来指定多个私钥。例如,如果你使用默认私钥来启动机器时,这很有用。但是稍后可能会用更安全的密钥替换它。
  • config.ssh.keys_only (boolean) :只使用vagrant提供的SSH私钥(不要使用存储在SSH代理中的任何密钥)。默认值为true。
  • config.ssh.verify_host_key (string, symbol) :执行严格的主机密钥验证。默认值是:never。
  • config.ssh.paranoid (boolean) :执行严格的主机密钥验证。默认值为false。

    ⚠️config.ssh.paranoid方法已经被弃用,并将在未来的版本中删除。请使用config.ssh.verify_host_key方法替代它。

  • config.ssh.forward_agent (boolean) :如果为true,则启用SSH连接上的代理转发。默认值为false。
  • config.ssh.forward_x11 (boolean):如果为true,则启用通过SSH连接的X11转发。默认值为false。
  • config.ssh.forward_env (array of strings):要转发给客户机的主机环境变量数组。如果你熟悉OpenSSH,那么这对应于SendEnv参数。
config.ssh.forward_env = ["CUSTOM_VAR"]
  • config.ssh.insert_key (boolean):如果为true,Vagrant将自动插入一个密钥对用于SSH,如果检测到该密钥,则替换vagrant的默认密钥。默认情况下为true

    只有当你还没有使用私钥进行身份验证或者依赖于默认的不安全密钥时,这才会产生效果。如果你不需要关心项目中的安全性,并且希望继续使用默认的不安全密钥,则将其设置为false。

  • config.ssh.proxy_command (string):执行的命令行命令,该命令从stdin上接收要发送到的SSH的数据。这可以用来代理SSH连接。命令中的%h被替换为主机名,%p被替换为端口号。
  • config.ssh.pty (boolean) :如果为true,pty将用于provisioning。默认值为false。这个设置是一个高级特性,除非绝对必要,否则不应该启用它。它打破了vagrant的一些其他特征,实际上只在绝对必要的情况下才会暴露出来。如果你能找到一种不使用pty的方法,那么建议你这样做。

    启用pty时,必须注意命令输出不会流到UI中。一旦命令完成时,输出将完全交付给UI。

  • config.ssh.keep_alive (boolean) :如果为true,这个设置SSH默认情况下每5秒发送一个keep-alive包,以保持连接的活力。
  • config.ssh.shell (string) :从vagrant执行SSH命令时使用的shell。默认情况下,这是bash -l。注意,这对运行vagrant ssh时获得的shell没有影响。此配置选项仅影响在vagrant内部执行命令时使用的shell。
  • config.ssh.export_command_template (string):用于在活跃会话中生成导出环境变量的模板。当使用与Bourne不兼容的shell(如C shell)时,这一点非常有用。该模板支持两个变量,这两个变量被替换为所需的环境变量键和环境变量值:%ENV_KEY%和%ENV_VALUE%。默认模板为:
config.ssh.export_command_template = 'export %ENV_KEY%="%ENV_VALUE%"'
  • config.ssh.sudo_command (string) :使用sudo执行命令时使用的命令。这个默认值是sudo -E -H %c。%c将被正在执行的命令替换。
  • config.ssh.compression (boolean) :如果为false,此设置将不包括ssh进入机器时的压缩设置。如果没有设置,它将默认为true, ssh将启用Compression=yes。
  • config.ssh.dsa_authentication (boolean) :如果为false,此设置将不包括ssh进入机器时的DSAAuthentication值。如果没有设置这个值,它将默认为true, DSAAuthentication=yes将与ssh一起使用。
  • config.ssh.extra_args (array of strings) :这个设置值将直接传递到ssh可执行文件中。这允许你传递任意命令来执行诸如反向隧道穿到ssh程序中的操作。这些选项可以是单个标记设置为字符串,如IPV6的“-6”,也可以是参数数组,如[“-L”、“8008:localhost:80”],用于在guest上启用从主机端口8008到端口80的隧道。

virtualbox+vagrant学习-4-Vagrantfile-6-SSH Settings的更多相关文章

  1. virtualbox+vagrant学习-2(command cli)-26-vagrant share命令

    Share share命令初始化了一个vagrant share会话,允许你与世界上任何一个人共享vagrant环境,允许在几乎任何网络环境中直接在vagrant环境中进行协作. 你可以在本博客的vi ...

  2. virtualbox+vagrant学习-1-环境安装及vagrantfile的简单配置-Mac系统

    在学习docker-machine时,发现需要使用到虚拟化平台,所以选择了使用virtualBox. 然后后面发现需要使用vagrant来在mac系统中作为虚拟机管理软件,所以下面将会简述我自己学习使 ...

  3. virtualbox+vagrant学习-4-Vagrantfile-5-Machine Settings

    Machine Settings 配置命名空间:config.vm config.vm的设置将修改vagrant管理的机器的配置 Available Settings可用设置 config.vm.ba ...

  4. virtualbox+vagrant学习-2(command cli)-17-vagrant ssh命令

    SSH 格式: vagrant ssh [options] [name|id] [-- extra ssh args] 这将SSH导入正在运行的vagrant机器,并允许你访问机器的shell. us ...

  5. virtualbox+vagrant学习-4-Vagrantfile-9-Vagrant Settings

    Vagrant Settings 配置命名空间:config.vagrant config.vagrant配置将修改vagrant本身的行为 Available Settings可用设置 config ...

  6. virtualbox+vagrant学习-4-Vagrantfile-7-WinRM Settings

    WinRM Settings 配置命名空间config.winrm config.winrm配置与如何通过winrm配置vagrant访问你的Windows客户相关.与大多数vagrant设置一样,默 ...

  7. virtualbox+vagrant学习-3-Vagrant Share-2-HTTP Sharing

    HTTP Sharing Vagrant Share可以创建一个可公开访问的URL端点来访问在Vagrant环境中运行的HTTP服务器.这被称为“HTTP共享”,在使用Vagrant Share时默认 ...

  8. virtualbox+vagrant学习-2(command cli)-8-vagrant Package命令

    Package 格式: vagrant package [options] [name|id] 这将当前正在运行的VirtualBox或Hyper-V环境打包到一个可重用的box中.如果provide ...

  9. virtualbox+vagrant学习-3-Vagrant Share-3-SSH Sharing

    SSH Sharing vagrant share通过向vagrant share提供--SSH标志,使远程SSH访问vagrant环境变得非常容易. 如果你想让同事访问你的SSH,以便对ops问题进 ...

随机推荐

  1. CSS关于文本渲染的属性text-rendering

    CSS关于文本渲染的属性text-rendering告诉渲染引擎工作时如何优化显示文本. 浏览器会在渲染速度.易读性(清晰度)和几何精度方面做一个权衡. 我们知道,SVG-可缩放矢量图形(Scalab ...

  2. hello Groovy

    Groovy [rocky@www ~]$ curl -s get.sdkman.io 1. 下载 [rocky@www Downloads]$ wget https://dl.bintray.com ...

  3. [转]vue数据绑定(数据,样式,事件)

    1.mounted 与 methods 与 computed 与 watched区别 From:https://blog.csdn.net/qinlulucsdn/article/details/80 ...

  4. js时间与毫秒数互相转换(转)

    [1]js毫秒时间转换成日期时间   var oldTime = (new Date("2017/04/25 19:44:11")).getTime(); //得到毫秒数    / ...

  5. IOS下 input 被软键盘方案遮盖问题解决

    前言: 并没有完美解决 ! 场景: 最近在做企业微信H5的一个项目,里面有个动态列表页,开始输入框是隐藏的,点击评论才会出现并让 input 聚焦.经过测试在安卓上面应该没什么问题,但是iOS上面会出 ...

  6. arcgis英文版补丁下载地址

    http://support.esri.com/zh-cn/downloads/patches-servicepacks/list/productid/160

  7. DOMINO的JDBC和ODBC连接方法

     利用ODBC实现Domino和关系数据库的互操作 Lotus Domino是当今办公自动化系统的主流开发平台之一,Domino自带一个非关系型数据库–文档型数据库,而目前大部分企业的信息都储存在 ...

  8. linux 获取命令或配置文件的帮助信息 man、whatis、apropos、--help

    man /usr/bin/man man [命令或配置文件]获取帮助信息 man ls /-lman date/-d man services //不需要添加绝对路径/etc/services NAM ...

  9. 外业数据采集平台(GPS+Android Studio+Arcgis for android 100.2.1)

    外业数据采集平台 1. 综述 在室外,通过平板或者手机接收GPS坐标,实时绘制点.线.面数据,以便为后续进行海域监测.土地确权.地图绘图提供有效数据和依据. 2. 技术路线 Android studi ...

  10. ASP.NET中母版页引用外部js或css文件无效,提示对象未定义解决方法

    最近做网站用了一个js+css实现的带有二级菜单的导航条,在母版页创建好后,子页面调用出现了许多奇怪的问题,多方查证后的最终解决方案和大家分享下.... 1.路径问题 如果是一个单独的aspx页面调用 ...