Mitä hyppypalvelin tekee
Hyppypalvelin eli bastion on palvelin, johon saat suoran yhteyden ja joka voi ottaa yhteyden sisäisiin palvelimiisi. Vain bastionin SSH-portti on avoinna ulospäin; sisäiset palvelimet hyväksyvät SSH-yhteydet vain sisäverkosta. ProxyJump-toimintoa käytettäessä asiakas avaa yhden SSH-yhteyden bastioniin ja toisen, päästä päähän salatun yhteyden sen kautta kohteeseen. Bastion välittää liikenteen, mutta ei näe istunnon sisältöä, ja yksityinen avaimesi pysyy omalla tietokoneellasi.
Yhdistä komentoriviltä
Valitsin -J määrittää hyppypalvelimen. Erota useat välipalvelimet pilkuilla; niitä käytetään antamassasi järjestyksessä. Lisää asetukset tiedostoon ~/.ssh/config, jos käytät samaa reittiä säännöllisesti, jotta lyhyt alias riittää.
ssh -J admin@bastion.example admin@app.internal
ssh -J admin@bastion.example,ops@hop2.example admin@app.internal
# ~/.ssh/config
Host app-internal
HostName app.internal
User admin
ProxyJump admin@bastion.exampleVarmenna jokainen isäntäavain
Jokainen välipalvelin on erillinen SSH-palvelin, jolla on oma isäntäavaimensa. Vahvista siksi sekä bastionin että kohteen sormenjälki toisen luotetun kanavan kautta. Muuttunut avain missä tahansa välivaiheessa vaatii saman huomion kuin suorassa yhteydessä. Vertaa ensimmäisellä yhteyskerralla tarjottua sormenjälkeä arvoon, jonka ylläpitäjä lukee palvelimelta.
ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub -E sha256Suosi ProxyJump-toimintoa agentin välityksen sijaan
Agentin välitys (ssh -A) antaa kaikille bastionissa riittävät oikeudet omaaville mahdollisuuden käyttää ladattuja avaimiasi niin kauan kuin yhteys on auki. ProxyJump ei tarvitse sitä, koska tunnistautuminen kohteeseen tapahtuu omalta tietokoneeltasi. Vältä myös yksityisten avainten tallentamista bastioniin ja rajoita, ketkä saavat kirjautua sinne.
Yleiset ongelmat
Selvitä ensin, missä välivaiheessa yhteys epäonnistuu: yhdistä pelkkään bastioniin ja suorita sitten ssh -vvv valitsimella -J nähdäksesi, mihin yhteys pysähtyy. Jos bastion toimii mutta kohde ei, syynä on yleensä niiden välinen palomuuri, väärä sisäinen nimi tai kohde, joka ei hyväksy avaintasi. Palvelin, jonka asetuksena on AllowTcpForwarding no, kieltäytyy toimimasta hyppypalvelimena.
Hyppypalvelimet CH-J Server Manager -sovelluksessa
Alpha 0.1.1 yhdistää tallennetun tai käsin syötetyn hyppypalvelimen kautta, ja tallennetuista palvelimista voi muodostaa enintään kolmen hyppypalvelimen ketjun. Isäntäavain tarkistetaan jokaisessa välivaiheessa. Saatavuuden valvonta tarkistaa hyppypalvelimen takana olevan palvelimen vain kyseiseen hyppypalvelimeen avatun istunnon kautta; muuten palvelin näytetään varmentamattomana, ei koskaan verkossa olevana. Beta 0.1.0 ei sisällä tätä toimintoa.