原文地址html
配置的命名空間:config.ssh
web
config.ssh
中的設置與配置 Vagrant 如何經過 SSH 訪問您的計算機相關。 大多數 Vagrant 設置同樣,通常使用默認設置便可,但也能夠根據本身的喜愛進行微調。shell
設置 Vagrant 默認使用的 SSH 用戶名。若是 provider 檢測到更合適的用戶,則能夠自由覆蓋此內容。默認狀況下,這是「vagrant」,由於這是大多數公共 box 使用的用戶名。數組
設置用於認證 Vagrant 的 SSH 用戶的密碼。建議使用基於密鑰的認證(參考 private_key_path),而不是密碼。若是使用密碼,若是 insert_key 爲 true 的話 Vagrant 會自動插入到密鑰對。安全
要用 SSH 鏈接到的主機名或 IP 地址。默認爲空,由於 provider 一般會自動找出。bash
要用 SSH 鏈接到的端口。默認是 22。ssh
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 與客戶機進行對話(若是沒有其餘端口) 選項。ide
用於經過 SSH 訪問客戶機的私鑰路徑。默認狀況下,這是隨 Vagrant 一塊兒提供的不安全私鑰,由於這是公共 box 使用的私鑰。若是你使用自定義 SSH 密鑰建立本身的自定義 box,則應該指向該私鑰。svg
也能夠經過將其設置爲數組來指定多個私鑰。例如,若是使用默認私鑰來引導機器,但稍後用更安全的密鑰替換它,則這頗有用。this
只使用 Vagrant 提供的 SSH 私鑰(不使用任何存儲在 ssh 代理的私鑰)。默認是 true。
執行嚴格的主機密鑰驗證。默認值是 false。
執行嚴格的主機密鑰驗證。默認值是 false。
棄用 config.ssh.paranoid 選項已棄用,將在將來版本中刪除。請改用 config.ssh.verify_host_key 選項。
若是爲 true,則經過 SSH 鏈接進行代理轉發。默認爲 false。
若是爲 true,則啓用經過 SSH 鏈接進行的 X11 轉發。默認爲 false。
要轉發給客戶機的主機環境變量數組。若是你熟悉 OpenSSH,會發現這對應於 SendEnv 參數。
config.ssh.forward_env = ["CUSTOM_VAR"]
若是爲 true,Vagrant 會自動插入一個用於 SSH 的密鑰對,若是檢測到機器內部的 Vagrant 默認不安全密鑰,則替換。默認狀況下是 true。
若是還沒有使用私鑰進行身份驗證,或者依賴於默認的不安全密鑰,該設置纔會起做用。若是你不須要關心項目中的安全性,而且但願繼續使用默認的不安全密鑰,請將其設置爲 false。
用於執行的命令行命令,用於接收要在 stdin 上發送到 SSH 的數據。這能夠用來代理 SSH 鏈接。命令中的 %h
被主機替換,%p
被替換爲端口。
若是爲 true,則 pty 將用於 provisioning。默認爲 false。
此設置是一項高級功能,除非絕對必要,不然不該啓用。它打破了 Vagrant 的一些其餘功能,而且僅在絕對必要的狀況下才會暴露。若是你能夠找到一種不使用 pty 的方法,那就推薦使用。
當啓用 pty 時,請注意命令輸出不會流式傳輸到 UI。相反,一旦命令完成,輸出將所有傳送到 UI。
若是爲 true,SSH 將會默認每 5 秒鐘發送一個 keep-alive 包來保持鏈接的有效性。
從 Vagrant 執行 SSH 命令時要使用的 shell。默認是 bash -l
。注意這對運行 vagrant ssh
時得到的 shell 沒有影響。此配置選項僅影響在 Vagrant 內部執行命令時使用的 shell。
用於在活動會話中生成導出的環境變量的模板。這在使用不兼容 Bourne 的 shell 如 C shell 時很是有用。該模板支持將兩個變量替換爲所需的環境變量鍵和環境變量值:%ENV_KEY%
和 %ENV_VALUE%
。默認模板是:
config.ssh.export_command_template = 'export %ENV_KEY%="%ENV_VALUE%"'
使用 sudo 執行命令時使用的命令。默認爲 sudo -E -H %c
。%c
將被正在執行的命令替換。
若是設置爲 false,則此設置將不包括 ssh 進入機器時的壓縮設置。若是沒有設置,它將默認爲 true,將使用 ssh 啓用 Compression = yes。
若是設置爲 false,則此設置在 ssh 登陸到計算機時將不包括 DSAAuthentication。若是未設置,則默認爲 true,將與 ssh 一塊兒使用 DSAAuthentication=yes。
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 的隧道。