PuTTY dla win32 Przechowywanie konfiguracji do pliku

Source : http://jakub.kotrla.net/putty/

Informacje

PuTTY To świetny darmowy telnet/SSH client for Win32 oraz platform uniksowych. To tylko jedna “exe”, bez instalowania żadnych dodatkowych bibliotek są wymagane. Dzięki czemu może być uruchamiany z dyskietki, pamięci USB flash disk…

Ale zapisuje wszystkie czynności konfiguracyjne w rejestrze [HKEY_CURRENT_USER\Software\SimonTatham\PuTTY]) – nie jest możliwe zapisywanie/wczytywanie z pliku na dyskietce lub innych urządzeń wymiennych. Istnieje workaround with bat/reg files , ale nie jest bardzo miła. Skonfigurowałem przepisana małą część PuTTY (winstore.c – funkcje, które przerabiają zapisywanie/wczytywanie konfiguracji).

Mam przepisana małą część Pageant zbyt, aby można było załadować listę zapisanych sesji (winpgnt.c – funkcja update_sessions). 

Jeśli znajdziecie błąd związany z zapisywanie/wczytywanie konfiguracji lub nie występuje w oryginale PuTTY, napisz e-mail do jakub@kotrla.net. Moja modyfikacja PuTTY jest pod samym licence as PuTTY – możesz zrobić z Polakami, ale na własne ryzyko i bez żadnej gwarancji.

Dokumentacja

Ten PuTTY przechowuje swoją konfigurację (sesje, ssh host keys, random seed347) do pliku zamiast rejestru. Każdą sesję i ssh host jest przechowywany w osobnym pliku. Trasy domyślne są (gdzie . reprezentuje wykonywalny katalogu):

  • ./sesje/packedSessionName
  • ./sshhostkeys/packedHostName
  • ./putty.rnd

Droga do zapisywania konfiguracji można ustawić poprzez plik putty.conf. Bieżący katalog roboczy jest wyszukiwany w pierwszej kolejności, jeżeli putty.conf nie zostanie znalezione, executable directory (w tym samym katalogu co program putty/pscp i psftp/plink/pageant.exe) jest przeszukiwany. putty.conf powinien wyglądać tak (jezeli nie znaleziono przywracane są ustawienia domyślne):

                ;comment line
		sessions=%SYSTEMROOT%\ses
		sshhostkeys=\ssh\hostkeys
		seedfile=C:\putty.rnd
		sessionsuffix=.session
		keysuffix=.hostkey
		jumplist=jumplist.txt

Możesz użyć o parametrach zmiennych w config (jak %systemroot%) – ciąg znaków zostanie rozszerzona poprzez ExpandEnviromentString funkcji WinAPI (specyficzne dla użytkownika zmienne nie są obsługiwane jeszcze).

Sessionsuffix i keysuffix są opcjonalne, wartości domyślne są puste. Jeśli jest ustawiony, każdy plik ma sufiks zdefiniowane (zapisanych sesjach via sessionsuffix i ssh host keys keysuffix via). Podstawowym celem jest uniknięcie “*.com” pliki z nazwami jak ssh.domain.com. Obie są ograniczone do 15 znaków.
Uwaga: Jeśli już masz zapisane niektóre sesje ssh host klucze i zmiana tych przyrostków, musisz ręcznie zmienić (dodać je do) wszystkie pliki.

Jumplist jest nowa funkcja systemu Windows 7 obsługiwane przez PuTTY 0,61. Ponieważ ten Kit powinien być lekki, jeśli nie można ustawić ścieżkę do jumplist, nikt nie będzie tworzony.

Ten kit jest nadal w stanie załadować konfigurację z rejestru. Sesje ładowanego z rejestru są oznaczone [registry]. Kiedy PuTTY jest kontrola ssh host key i to nie może być znaleziony w pliku, ale w rejestrze, możesz przenieść/skopiować klucz do pliku (lub oczywiście nie robić nic).

Pageant ładunków lista zapisanych sesjach z ustawioną ścieżkę w putty.conf, domyślne to ./sesje/packedSessionName – działa tak samo jak PuTTY (w tym keysuffix ustawienie).

Opiekunach czy rejestr zmian

Ten kit jest nadal ewoluuje, ponieważ pierwsze proste zwalnianie ucieszyły mnie dodałem kilka funkcji i stała kilka robali. Więc biorę rozpoczęte numerowanie wersji. Każdy przyszły zmiany, funkcję i bugfix pojawią się tutaj.

  • 24. 11. 2005 – pierwsza wersja 0.1.1
  • 22. 3. 2006 – PSCP i PSFTP skompilowany & dodane
  • 22. 3. 2006 – stałe Pageant do pracy z sessionsuffix prawidłowo (wersja 0.1.2).
  • 7. 8. 2006 – stałe PSCP podczas ładowania nieistniejącego ustawienia cicho & zastępowaniem uchwyt bug fixed (wersja 0.1.3).
  • 9. 8. 2006 – znacznie lepiej “putty.exe katalog” detekcji dodane (wersja 0.1.5).
  • 29. 9. 2006 – PLINK skompilowany & dodane
  • 9. 1. 2007 – save/Load Default Settings (wersja 0.1.6).
  • 25. 1. 2007 – AKTUALIZACJA: Ten zmodyfikowany program PuTTY jest obecnie oparte na PuTTY 0,59 & niewielki wyciek pamięci stałej (wersja 0.2)
  • 24. 3. 2007 – Wsparcie dla o parametrach zmiennych w  pliku config & kod Clean-up (wersja 0.2.1).
  • 1. 5. 2007 – AKTUALIZACJA: Ten zmodyfikowany program PuTTY jest obecnie oparte na PuTTY 0.60 (wersja 0.3)
  • 15. 10. 2007 – Stała pokazująca “.” i “..” sesje w lista sesji (wersja 0.3.1).
  • 6. 3. 2008 – fixed crash, jeśli  plik konfiguracyjny nie kończy się wraz z pustą linię (wersja 0.3.2)
  • 12. 8. 2008 – od teraz: zmiana w załatwianiu putty.conf i sprawny/wykonywalne katalogi
  • 4. 9. 2008 – pageant uruchamia program putty.exe na swoim (pageant) katalog roboczy & XP i Vista Visual Styles 2.0 (wersja 0.3.5).
  • 28. 7. 2009 – stałe usuwanie sesji kiedy sessionsuffix ustawione w PuTTY (wersja 0.3.6).
  • 4. 9. 2009 – jeśli  nie seesion znalezione na dysku, spróbuj w rejestrze ( WinSCP obsługuje), fixed minor bug z CurrentDirectory (wersja 0.3.7)
  • 7. 11. 2009 – Wsparcie dla o parametrach zmiennych w sesji files (wersja 0.3.8),
  • 12. 1. 2010 – stałe obciążenie sesja z nazwami zawierającymi dwukropek (:) i innych dziwacznych znaków (wersja 0.3.9)
  • 24. 8. 2011 – AKTUALIZACJA: Ten zmodyfikowany program PuTTY jest obecnie oparte na PuTTY 0,61 (wersja 0.4), wsparcie dla Win7 jumplist
  • 23. 2. 2012 – AKTUALIZACJA: Ten zmodyfikowany program PuTTY jest obecnie oparte na PuTTY 0.62 (wersja 0.5)
  • 8. 9. 2013 – AKTUALIZACJA: Ten zmodyfikowany program PuTTY jest obecnie oparte na PuTTY 0.63 (wersja 0.6)
  • 13. 9. 2013 – błąd od łączących się z kodem 063 – załadunek sesje z rejestru stałych (wersja 0.6.1).
  • 8. 3. 2015 – AKTUALIZACJA: Ten zmodyfikowany program PuTTY jest obecnie oparte na PuTTY 0,64 (w wersji 0.7), pliki sesji są filtrowane przez sessionsuffix
  • 27. 9. 2015 – AKTUALIZACJA: Ten zmodyfikowany program PuTTY jest obecnie oparte na PuTTY 0.65 (wersja 0.8)
  • 27. 9. 2015 – AKTUALIZACJA: Ten zmodyfikowany program PuTTY jest obecnie oparte na PuTTY Development snapshot 2015-09-27.acff0a6 o podanie kilku nowych szyfrów np. ed25519 krzywizn i chacha20. (wersja 0.8.1).

Podarujcie

Jeśli stwierdzisz mój patch przydatny, będę zadowolony jeśli twierdzisz dziękuje również w inny sposób:

Pobierz

Dziękujemy

Dzięki Sebastian Juerges, Sebastian Królak, Scott Akesson, Przemysław Sztoch, James Hoffman, Jones, Harold Hunt, Dmitri Gromov, Gorkum L. van, Kyle Brazell, Sergey Makarenki, Anthony Valentine, Jason K Larsona, tzeentch i Quip do testów i pomysłów.