2012-08-06 7 views

Odpowiedz

31

Ustaw opcję StrictHostKeyChecking na no, w pliku konfiguracyjnym lub poprzez -o.

Zastosowanie e opcja rsync przekazać opcje ssh:

-e "ssh -o StrictHostKeyChecking=no" 
+1

Dzięki! Mój przypadek: SemaphoreCI zawiesza się w wierszu bez wyłączania tej kontroli. – Dmitriy

2

Więc ja znalezieniem dużo niepewnych odpowiedzi, które work-- ale lepszym sposobem nie jest dużo więcej pracy, więc jestem szukałem postów, które zalecają mniej bezpieczny sposób robienia rzeczy związanych z SSH, takich jak rsync. I zostały poszukiwania doczesnego sposobu ominięcia unkown ręcznego gospodarza oddziaływanie klonowania repo git, jak pokazano poniżej, ale to działa na jak wspomniano rsync i innych technologii:

[email protected]:~$ git clone [email protected]:viperks/viperks-api.git 
Cloning into 'viperks-api'... 
The authenticity of host 'bitbucket.org (104.192.143.3)' can't be established. 
RSA key fingerprint is 97:8c:1b:f2:6f:14:6b:5c:3b:ec:aa:46:46:74:7c:40. 
Are you sure you want to continue connecting (yes/no)? 

zanotuj Odcisk palca klucza RSA ...

Tak, to jest rzeczą SSH, to będzie pracować dla git nad SSH SSH i tylko rzeczy związane w ogóle ...

[email protected]:~$ nmap bitbucket.org --script ssh-hostkey 

Starting Nmap 7.01 (https://nmap.org) at 2016-10-05 10:21 EDT 
Nmap scan report for bitbucket.org (104.192.143.3) 
Host is up (0.032s latency). 
Other addresses for bitbucket.org (not scanned): 104.192.143.2 104.192.143.1 2401:1d80:1010::150 
Not shown: 997 filtered ports 
PORT STATE SERVICE 
22/tcp open ssh 
| ssh-hostkey: 
| 1024 35:ee:d7:b8:ef:d7:79:e2:c6:43:9e:ab:40:6f:50:74 (DSA) 
|_ 2048 97:8c:1b:f2:6f:14:6b:5c:3b:ec:aa:46:46:74:7c:40 (RSA) 
80/tcp open http 
443/tcp open https 

Nmap done: 1 IP address (1 host up) scanned in 42.42 seconds 

Najpierw zainstaluj nmap na codziennej kierowcy. nmap jest bardzo pomocny w pewnych sytuacjach, takich jak wykrywanie otwartych portów i to - ręczna weryfikacja odcisków palców SSH. Ale wracając do tego, co robimy.

Dobrze. Jestem albo zagrożony w wielu miejscach i na maszynach, które sprawdziłem - albo bardziej prawdopodobnym wyjaśnieniem wszystkiego, co jest hunky dory, jest to, co się dzieje.

Ten "odcisk palca" to skrócona struna z algorytmem jednokierunkowym dla naszej ludzkiej wygody, z ryzykiem, że więcej niż jeden ciąg rozdzieli się na ten sam odcisk palca. Zdarza się, że są one nazywane kolizjami.

Niezależnie od tego, powrót do pierwotnego ciągu, który możemy zobaczyć w kontekście poniżej.

[email protected]:~$ ssh-keyscan bitbucket.org 
# bitbucket.org SSH-2.0-conker_1.0.257-ce87fba app-128 
no hostkey alg 
# bitbucket.org SSH-2.0-conker_1.0.257-ce87fba app-129 
bitbucket.org ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAubiN81eDcafrgMeLzaFPsw2kNvEcqTKl/VqLat/MaB33pZy0y3rJZtnqwR2qOOvbwKZYKiEO1O6VqNEBxKvJJelCq0dTXWT5pbO2gDXC6h6QDXCaHo6pOHGPUy+YBaGQRGuSusMEASYiWunYN0vCAI8QaXnWMXNMdFP3jHAJH0eDsoiGnLPBlBp4TNm6rYI74nMzgz3B9IikW4WVK+dc8KZJZWYjAuORU3jc1c/NPskD2ASinf8v3xnfXeukU0sJ5N6m5E8VLjObPEO+mN2t/FZTMZLiFqPWc/ALSqnMnnhwrNi2rbfg/rd/IpL8Le3pSBne8+seeFVBoGqzHM9yXw== 
# bitbucket.org SSH-2.0-conker_1.0.257-ce87fba app-123 
no hostkey alg 

Tak więc, z wyprzedzeniem, możemy poprosić o formę identyfikacji z oryginalnym hostem.

W tym momencie jesteśmy ręcznie podatni na ataki automatycznie - łańcuchy są zgodne, mamy dane podstawowe, które tworzą odcisk palca, i możemy poprosić o dane podstawowe (zapobiegając kolizjom) w przyszłości.

teraz używać ten ciąg w sposób, który uniemożliwia prośbą o autentyczności gospodarze ...

Plik known_hosts w tym przypadku nie używa zwykłego tekstu wpisy. Będziesz znać hashowane wpisy, gdy je zobaczysz, wyglądają jak hashe z losowymi znakami zamiast xyz.com lub 123.45.67.89.

[email protected]:~$ ssh-keyscan -t rsa -H bitbucket.org 
# bitbucket.org SSH-2.0-conker_1.0.257-ce87fba app-128 
|1|yr6p7i8doyLhDtrrnWDk7m9QVXk=|LuKNg9gypeDhfRo/AvLTAlxnyQw= ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAubiN81eDcafrgMeLzaFPsw2kNvEcqTKl/VqLat/MaB33pZy0y3rJZtnqwR2qOOvbwKZYKiEO1O6VqNEBxKvJJelCq0dTXWT5pbO2gDXC6h6QDXCaHo6pOHGPUy+YBaGQRGuSusMEASYiWunYN0vCAI8QaXnWMXNMdFP3jHAJH0eDsoiGnLPBlBp4TNm6rYI74nMzgz3B9IikW4WVK+dc8KZJZWYjAuORU3jc1c/NPskD2ASinf8v3xnfXeukU0sJ5N6m5E8VLjObPEO+mN2t/FZTMZLiFqPWc/ALSqnMnnhwrNi2rbfg/rd/IpL8Le3pSBne8+seeFVBoGqzHM9yXw== 

Pierwszy komentarz linia infuriatingly pokazuje up-- ale można się go pozbyć za pomocą prostego przekierowania za pomocą „>” lub „>>” konwencji.

Zrobiłem, co mogłem, aby uzyskać nieskażone dane, które zostaną użyte do identyfikacji hosta i zaufania. Dodam tę identyfikację do mojego pliku known_hosts w katalogu ~/.ssh. Ponieważ zostanie on teraz zidentyfikowany jako znany host, nie otrzymam powyższej prośby, gdy byłeś dzieckiem.

Dzięki za trzymanie się ze mną, proszę bardzo. Dodaję do bitbucket klucz RSA tak, że mogę współpracować z moich repozytoria git tam w interaktywny sposób niż w ramach przepływu pracy CI, ale cokolwiek robisz, co chcesz.

#!/bin/bash 
cp ~/.ssh/known_hosts ~/.ssh/known_hosts.old && echo "|1|yr6p7i8doyLhDtrrnWDk7m9QVXk=|LuKNg9gypeDhfRo/AvLTAlxnyQw= ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAubiN81eDcafrgMeLzaFPsw2kNvEcqTKl/VqLat/MaB33pZy0y3rJZtnqwR2qOOvbwKZYKiEO1O6VqNEBxKvJJelCq0dTXWT5pbO2gDXC6h6QDXCaHo6pOHGPUy+YBaGQRGuSusMEASYiWunYN0vCAI8QaXnWMXNMdFP3jHAJH0eDsoiGnLPBlBp4TNm6rYI74nMzgz3B9IikW4WVK+dc8KZJZWYjAuORU3jc1c/NPskD2ASinf8v3xnfXeukU0sJ5N6m5E8VLjObPEO+mN2t/FZTMZLiFqPWc/ALSqnMnnhwrNi2rbfg/rd/IpL8Le3pSBne8+seeFVBoGqzHM9yXw==" >> ~/.ssh/known_hosts 

Tak, to jak pozostać dziewicą na dziś. Możesz zrobić to samo z github, wykonując podobne instrukcje w swoim własnym czasie.

widziałem tylu posty przepełnienie stosu informacją programowo dodać klucz ślepo bez jakiejkolwiek kontroli. Im więcej sprawdzić klucz z różnych maszyn w różnych sieciach, tym więcej można mieć zaufanie, że gospodarz jest jeden mówi, że is-- i to jest najlepsze, co możesz mieć nadzieję z tej warstwy bezpieczeństwa.

ŹLE ssh -oStrictHostKeyChecking = brak hosta [polecenie]

źle ssh-keyscan -t rsa -H hostname >> ~/.ssh/known_hosts

nie rób albo jedną z powyższych rzeczy, proszę. Masz szansę zwiększyć swoje szanse na uniknięcie podsłuchiwania transmisji danych przez człowieka w ataku środkowym - skorzystaj z okazji. Różnica jest dosłownie weryfikacji, że klucz RSA masz jest jednym z bona fide serwera i teraz wiesz, jak uzyskać te informacje, aby porównać je więc można zaufać połączenie. Pamiętaj tylko, że więcej porównań z różnych komputerów zwykle zwiększa Twoją zdolność do ufania połączeniom.

Powiązane problemy