2014-02-10 33 views
0

我有兩臺服務器,一臺在Amazon EC2實例(t1.medium)中,另一臺在Microsoft Azure(中型)實例中。這兩臺服務器都具有相同的配置Ubuntu LTS 12.04.1, 64-bit arch運行PostgreSQL 9.1。我需要在Azure上設置災難恢復系統(通過pgbarman開啓Amazon實例數據庫的WAL歸檔以用於我的特定數據備份計劃)。ssh:亞馬遜EC2和Azure中的pgbarman設置問題

雖然經歷的pgbarman-docs,的強制性要求之一是看過那部,沒有密碼認證/提示在兩個所需

但我對登錄到這些情況的複雜性都低於:

  • 亞馬遜EC2有.pem文件,無需任何口令認證訪問:ssh -i my-pem-file.pem [email protected]
  • Azure不具有.pem文件。相反,它可以採用密碼機制進行訪問:ssh [email protected]

儘管如此,使設置我做以下,

  • 我通過ssh-keygen[email protected]創建的密鑰文件postgres-barman.pub
  • 通過ssh-copy-id -i [email protected]傳輸該文件到亞馬遜(請參閱下面詳細信息的鏈接)

我的問題是:

  1. SSH天青亞馬遜:

    • 我不能將此文件傳輸到postgres用戶: cat postgres-barman.pub | ssh -i my-pem-file.pem [email protected] 'cat >> .ssh/authorized_keys'但如果我更改目的地的用戶到ubuntu,文件被複制。
    • 傳輸文件後(通過ubuntu用戶),我嘗試這樣做:ssh [email protected]。它失敗。
  2. SSH亞馬遜天青

    • 同樣的文件現在居住在兩側。不過,如果我發出ssh [email protected],它會要求輸入密碼認證(在Azure實例的/etc/ssh/sshd_config中設置爲yes)。我無法繼續使用barman pre-req。
  3. 亞馬遜只允許通過ubuntu用戶編輯ssh。我需要爲postgres用戶啓用此功能。這可以做到嗎?

注:亞馬遜有PasswordAuthentication設置爲no在它的sshd_config文件。

參考文獻:

+0

azure網站上有關於如何設置基於密鑰的ssh登錄的指南(您需要將密鑰包裝在X.509中,但有一步一步的指南)。你顯然不能寫入其他用戶的主目錄 - 這將是一個可怕的安全漏洞。使用su/sudo複製Linux端的密鑰文件。不要忘記適當地設置所有權+權限。 –

+0

您也可以像使用EC2,FYI一樣對Azure虛擬機使用SSH身份驗證。如果通過REST或SDK創建,則有參數;如果要在門戶中創建,請確保使用更高級的創建選項而不是「快速創建」,以便能夠上載.pem文件。 –

回答

1

不管怎樣,我把它整理出來。

我沒有正確地進行配置。這就是我所做的。

在亞馬遜:

[email protected]~$ sudo -s 
[email protected]~$ passwd postgres 
Enter new UNIX Password: 
[email protected]~$ su - postgres 
Password: 
[email protected]~$ ssh-keygen -t rsa 
[email protected]~$ scp .ssh/id_rsa.pub [email protected]:~/.ssh/ 

在Azure上:

[email protected]~$ sudo -s 
[email protected]~$ passwd barman 
Enter new UNIX Password: 
[email protected]~$ su - barman 
Password: 
[email protected]~$ cd .ssh 
[email protected]~$ cat .ssh/id_rsa.pub >>~/.ssh/authorized_keys 

現在,ssh來蔚藍:

[email protected]:~$ ssh [email protected] 

現在,重複相同的Azure上。

唯一不同的是,通過scp沒有發生到亞馬遜的密鑰傳輸。所以,我將id_rsa.pub的內容複製到barman @ azure的/.ssh文件夾中,粘貼在postgres @ amazon的.ssh/authorized_keys文件中並保存。

現在,ssh來亞馬遜:

[email protected]:~$ ssh po[email protected] 

它的工作原理!感謝您的建議!

參考文獻:

我們擔心酒保」的cronjob。