SlideShare uma empresa Scribd logo
1 de 24
Managing servers with DSSH




29. 11. 2010                                Juraj Bednár
Introduction

DIGMIA

●
    System administration and consulting company

    ●
        Most of the TOP 20 web sites in Slovakia are our customers

●
    Supporters of open-source

Me

    ●
        Co-founder of Progressbar.sk hackerspace

    ●
        Member of Society for Open Information Technologies

        (soit.sk)
Who is this presentation for?



●
    At least 5 system administrators or

●
    At least 30 servers in heterogenous environment
Use case
Wrong solutions


●   Use ssh agent forwarding
       –   Known to be insecure if you don't trust the
            server (which you should not – it's customer's,
            their security policy applies)
●   Create VPN to office
       –   Single point of failure
       –   Difficult to manage if there are different
            customers with same network range
            (192.168.x.x)?
Wrong solutions



●
    Cut & paste passwords

    ●
        Clipboard not safe enough

    ●
        You don't need to display passwords, just use them at just

        the right place (don't paste to chat...)
Not applicable for us


●
    pfexec, sudo, ...

    ●
        Low auditability

        ●
            sudo -s

        ●
            copy file to server and then execute

    ●
        Management hell

        ●
            Can not create lots of unix accounts and manage them

        ●
            LDAP not possible (different customers, different security

            policies)
Enter DSSH



●
    Custom scriptable SSH client

●
    Written in Java, using modified Trilead SSH library

    ●
        Console initialization components written in JNI

    ●
        Needs terminal emulator (such as xterm or Terminal.app)

●
    Scriptable in BeanShell

    ●
        Used Groovy, but it was too slow (interactive start)
Features


●
    SSH in SSH tunneling

    ●
        Hostnames can be interpreted by script to login you to target

        network

    ●
        Possibility to change hostnames

●
    Possibility to login as root by using “su” or “ena”

●
    Limited scp support (sftp coming soon)

    ●
        Not possible to scp using “su” or “ena” because of server lim.
Additional features


●
    Dynamic path selection (script can ping several entry point

hosts)

●
    Logging support

●
    Credentials storage very lightweight

    ●
        API does not support key retrieval (you can only use keys)

    ●
        Supports password retrieval

    ●
        Can be changed for any password storage solution easily
Architecture
Examples
●
    We don't want our admins to remember weird port numbers

if ((host.equals("weirdhost.customer1")) && (port == 22))

                  port = 31337;

●
    Or IP addresses

             if (host.equals("weirdhost.customer2"))

                  host = "192.146.122.211";
Examples
●
    Automatically use backup connection

    if (host.equals("weirdhost3.customer")) {

       InetAddress address = InetAddress.getByName(host);

         if (!address.isReachable(1500)) {

           if (verbose)

System.err.println("Unable to connect to weirdhost3.customer,

connecting to weirdhost3-1.customer instead");

                                  host = "weirdhost3-1.customer";

           }}
Examples
●
    Use jumpstation (SSH in SSH tunelling)

    if (host.equals("weirdhost5.customer")) {

       parent = getAuthenticatedSSHConnection(myuser,

“gw.customer”, 22, parent, auth);

           }

●
    Additionaly you can create “virtual hostnames” by adding

host = “192.168.2.3”;
Examples
●
    Security policy denies direct root logins

●
    In getAuthenticatedSSHConnection()

      if (host.equals("weirdhost.customer4") && user.equals("root"))

                   user = "digmia";

●
    In getInteractiveSession()

if (host.equals("weirdhost.customer4") && user.equals("root")

    return new InteractiveSuSession(conn.openSession(), host,

username, pass);
Examples
●
    Collect configurations from Cisco routers

for i in `cat dsshhostlist-cisco`

       do

              echo "Downloading configuration from $i"

              echo term len 0 $'n' sh run $'n' exit |

/usr/local/bin/dssh -k cisco/known_hosts ena@$i | sed -n

'/^[!]/,/^end/p' > cisco/$i

       done
Documentation and license


●
    Currently GPLv2
         –   We consider to switching to less strict license (BSD)
●
    Documentation with examples available online
●
    Download at http://opensource.digmia.com/
Future


●
    Creating “DSSH server”
         –   Standalone mode still possible
         –   Lightweight client (possibly in Python)
                  ●
                      Faster start-up times
                  ●
                      Very little actual functionality
                           –Possible to quickly steal terminal
                              emulation from Putty and allow “xterm”-
                              less Windows client
                  ●
                      SSL + certificates
Future
         –   Server allows additional features
                  ●
                      Client never sees credentials
                  ●
                      Server can check ACLs
                  ●
                      Revoke certificates (no need to change all
                       passwords, although this is scriptable thanks
                       to DSSH :)
         –   DSSH server side auditing
                  ●
                      DSSH server sees into connections (even
                       forwarded ones)
                  ●
                      Logging of file transfers, port forwards,
                       console, ...
●
    Server can be clustered (very little state information, this is
    really easy)
Future
●
    Admins never see credentials
         –   No password leaks nor key leaks
         –   SSL certificates can be revoked and exchanged easily
●
    Admins sometimes have to see credentials anyway (console
    root login to broken server)
         –   Portal to request password and provide explanation
         –   Automatically creates ticket to change password in
               trouble ticketing system
●
    SOCKS proxy -D (currently supports only -L a -R port
    forwarding)
Future
●
    Central server key authority
         –   known_hosts idea is a main failure
         –   Key never “just changes”, someone has to approve
         –   Configurable policy, that does not ask the
               administrator, but just drops the connection
New architecture
Questions?
●
    Working on it right now
        –   Q1-Q2 2011
        –   You can help and shape the future of DSSH!
●
    Questions?
        –   (and possibly some answers)

Mais conteúdo relacionado

Mais procurados

Up and Running SSH Service - Part 2
Up and Running SSH Service - Part 2Up and Running SSH Service - Part 2
Up and Running SSH Service - Part 2GLC Networks
 
Security Bootcamp 2013 - Difficulties of malware analysis - Nguyễn Chấn Việt
Security Bootcamp 2013 - Difficulties of malware analysis - Nguyễn Chấn ViệtSecurity Bootcamp 2013 - Difficulties of malware analysis - Nguyễn Chấn Việt
Security Bootcamp 2013 - Difficulties of malware analysis - Nguyễn Chấn ViệtSecurity Bootcamp
 
Real world blockchains
Real world blockchainsReal world blockchains
Real world blockchainsDmitry Meshkov
 
Multi-core Node.pdf
Multi-core Node.pdfMulti-core Node.pdf
Multi-core Node.pdfAhmed Hassan
 
PHP at Density and Scale (Lone Star PHP 2014)
PHP at Density and Scale (Lone Star PHP 2014)PHP at Density and Scale (Lone Star PHP 2014)
PHP at Density and Scale (Lone Star PHP 2014)David Timothy Strauss
 
OSMC 2018 | Handling messages and notifications from software and gadgets wit...
OSMC 2018 | Handling messages and notifications from software and gadgets wit...OSMC 2018 | Handling messages and notifications from software and gadgets wit...
OSMC 2018 | Handling messages and notifications from software and gadgets wit...NETWAYS
 
Nodejs web service for starters
Nodejs web service for startersNodejs web service for starters
Nodejs web service for startersBruce Li
 
Attacking Big Data Land
Attacking Big Data LandAttacking Big Data Land
Attacking Big Data LandJeremy Brown
 
Масштабируемый и эффективный фаззинг Google Chrome
Масштабируемый и эффективный фаззинг Google ChromeМасштабируемый и эффективный фаззинг Google Chrome
Масштабируемый и эффективный фаззинг Google ChromePositive Hack Days
 
ECMAScript 6 from an Attacker's Perspective - Breaking Frameworks, Sandboxes,...
ECMAScript 6 from an Attacker's Perspective - Breaking Frameworks, Sandboxes,...ECMAScript 6 from an Attacker's Perspective - Breaking Frameworks, Sandboxes,...
ECMAScript 6 from an Attacker's Perspective - Breaking Frameworks, Sandboxes,...Mario Heiderich
 
We shall play a game....
We shall play a game....We shall play a game....
We shall play a game....Sadia Textile
 
Passwords#14 - mimikatz
Passwords#14 - mimikatzPasswords#14 - mimikatz
Passwords#14 - mimikatzBenjamin Delpy
 
A slightly advanced introduction to node.js
A slightly advanced introduction to node.jsA slightly advanced introduction to node.js
A slightly advanced introduction to node.jsSudar Muthu
 
Построение простого REST сервера на Node.js | Odessa Frontend Code challenge
Построение простого REST сервера на Node.js | Odessa Frontend Code challengeПостроение простого REST сервера на Node.js | Odessa Frontend Code challenge
Построение простого REST сервера на Node.js | Odessa Frontend Code challengeOdessaFrontend
 
Node in Real Time - The Beginning
Node in Real Time - The BeginningNode in Real Time - The Beginning
Node in Real Time - The BeginningAxilis
 

Mais procurados (20)

Up and Running SSH Service - Part 2
Up and Running SSH Service - Part 2Up and Running SSH Service - Part 2
Up and Running SSH Service - Part 2
 
Security Bootcamp 2013 - Difficulties of malware analysis - Nguyễn Chấn Việt
Security Bootcamp 2013 - Difficulties of malware analysis - Nguyễn Chấn ViệtSecurity Bootcamp 2013 - Difficulties of malware analysis - Nguyễn Chấn Việt
Security Bootcamp 2013 - Difficulties of malware analysis - Nguyễn Chấn Việt
 
Real world blockchains
Real world blockchainsReal world blockchains
Real world blockchains
 
Multi-core Node.pdf
Multi-core Node.pdfMulti-core Node.pdf
Multi-core Node.pdf
 
PHP at Density and Scale (Lone Star PHP 2014)
PHP at Density and Scale (Lone Star PHP 2014)PHP at Density and Scale (Lone Star PHP 2014)
PHP at Density and Scale (Lone Star PHP 2014)
 
OSMC 2018 | Handling messages and notifications from software and gadgets wit...
OSMC 2018 | Handling messages and notifications from software and gadgets wit...OSMC 2018 | Handling messages and notifications from software and gadgets wit...
OSMC 2018 | Handling messages and notifications from software and gadgets wit...
 
Nodejs web service for starters
Nodejs web service for startersNodejs web service for starters
Nodejs web service for starters
 
Attacking Big Data Land
Attacking Big Data LandAttacking Big Data Land
Attacking Big Data Land
 
Масштабируемый и эффективный фаззинг Google Chrome
Масштабируемый и эффективный фаззинг Google ChromeМасштабируемый и эффективный фаззинг Google Chrome
Масштабируемый и эффективный фаззинг Google Chrome
 
ECMAScript 6 from an Attacker's Perspective - Breaking Frameworks, Sandboxes,...
ECMAScript 6 from an Attacker's Perspective - Breaking Frameworks, Sandboxes,...ECMAScript 6 from an Attacker's Perspective - Breaking Frameworks, Sandboxes,...
ECMAScript 6 from an Attacker's Perspective - Breaking Frameworks, Sandboxes,...
 
We shall play a game....
We shall play a game....We shall play a game....
We shall play a game....
 
Node.js Introduction
Node.js IntroductionNode.js Introduction
Node.js Introduction
 
Passwords#14 - mimikatz
Passwords#14 - mimikatzPasswords#14 - mimikatz
Passwords#14 - mimikatz
 
A slightly advanced introduction to node.js
A slightly advanced introduction to node.jsA slightly advanced introduction to node.js
A slightly advanced introduction to node.js
 
Testing NodeJS Security
Testing NodeJS SecurityTesting NodeJS Security
Testing NodeJS Security
 
Построение простого REST сервера на Node.js | Odessa Frontend Code challenge
Построение простого REST сервера на Node.js | Odessa Frontend Code challengeПостроение простого REST сервера на Node.js | Odessa Frontend Code challenge
Построение простого REST сервера на Node.js | Odessa Frontend Code challenge
 
Node js first look - 2016
Node js first look - 2016Node js first look - 2016
Node js first look - 2016
 
VXCON 2017
VXCON 2017VXCON 2017
VXCON 2017
 
openSUSE12.2 Review
openSUSE12.2 ReviewopenSUSE12.2 Review
openSUSE12.2 Review
 
Node in Real Time - The Beginning
Node in Real Time - The BeginningNode in Real Time - The Beginning
Node in Real Time - The Beginning
 

Destaque

ATI Ultimate Vista
ATI Ultimate VistaATI Ultimate Vista
ATI Ultimate VistaDave Burrell
 
CET Quiz Club Set #2
CET Quiz Club Set #2CET Quiz Club Set #2
CET Quiz Club Set #2Jithin Jacob
 
About Dyantek Media
About Dyantek MediaAbout Dyantek Media
About Dyantek Mediaguest724cfe5
 
The Future Of Blended Learning V3
The Future Of Blended Learning V3The Future Of Blended Learning V3
The Future Of Blended Learning V3Mary Rose
 
Trade show techology trends
Trade show techology trendsTrade show techology trends
Trade show techology trendsMichelle Bruno
 
GöNüL Sultan MüBarek SöZlerii
GöNüL Sultan MüBarek SöZleriiGöNüL Sultan MüBarek SöZlerii
GöNüL Sultan MüBarek SöZleriiyelbeyi
 
Incomes Outcomes How Come 9 09
Incomes Outcomes How Come 9 09Incomes Outcomes How Come 9 09
Incomes Outcomes How Come 9 09Guy Davis
 
PecteSNami
PecteSNamiPecteSNami
PecteSNamijana203
 
Miracolul Vietii
Miracolul VietiiMiracolul Vietii
Miracolul Vietiialexcurbet
 
El Jardin De La Mente Manual
El Jardin De La Mente ManualEl Jardin De La Mente Manual
El Jardin De La Mente Manualguest7adf3a3
 
Coronado Island
Coronado IslandCoronado Island
Coronado Islandjangeres
 
JISC BCE - Dissemination
JISC BCE - DisseminationJISC BCE - Dissemination
JISC BCE - DisseminationJISC BCE
 
JISC BCE Programme Streams
JISC BCE Programme StreamsJISC BCE Programme Streams
JISC BCE Programme StreamsJISC BCE
 
RDBを中核としたXMLDBの開発
RDBを中核としたXMLDBの開発RDBを中核としたXMLDBの開発
RDBを中核としたXMLDBの開発Hiroyuki Inoue
 
Hydrodrive electronic catalytic convertor cum synthesizer mechanism adopted
Hydrodrive  electronic catalytic convertor cum synthesizer  mechanism adoptedHydrodrive  electronic catalytic convertor cum synthesizer  mechanism adopted
Hydrodrive electronic catalytic convertor cum synthesizer mechanism adoptedSRINIVASAN GOPALAKRISHNAN
 

Destaque (20)

ATI Ultimate Vista
ATI Ultimate VistaATI Ultimate Vista
ATI Ultimate Vista
 
CET Quiz Club Set #2
CET Quiz Club Set #2CET Quiz Club Set #2
CET Quiz Club Set #2
 
About Dyantek Media
About Dyantek MediaAbout Dyantek Media
About Dyantek Media
 
The Future Of Blended Learning V3
The Future Of Blended Learning V3The Future Of Blended Learning V3
The Future Of Blended Learning V3
 
Yahoo! Mobile AD
Yahoo! Mobile ADYahoo! Mobile AD
Yahoo! Mobile AD
 
Trade show techology trends
Trade show techology trendsTrade show techology trends
Trade show techology trends
 
GöNüL Sultan MüBarek SöZlerii
GöNüL Sultan MüBarek SöZleriiGöNüL Sultan MüBarek SöZlerii
GöNüL Sultan MüBarek SöZlerii
 
Incomes Outcomes How Come 9 09
Incomes Outcomes How Come 9 09Incomes Outcomes How Come 9 09
Incomes Outcomes How Come 9 09
 
PecteSNami
PecteSNamiPecteSNami
PecteSNami
 
Miracolul Vietii
Miracolul VietiiMiracolul Vietii
Miracolul Vietii
 
Save power
Save powerSave power
Save power
 
El Jardin De La Mente Manual
El Jardin De La Mente ManualEl Jardin De La Mente Manual
El Jardin De La Mente Manual
 
Coronado Island
Coronado IslandCoronado Island
Coronado Island
 
JISC BCE - Dissemination
JISC BCE - DisseminationJISC BCE - Dissemination
JISC BCE - Dissemination
 
JISC BCE Programme Streams
JISC BCE Programme StreamsJISC BCE Programme Streams
JISC BCE Programme Streams
 
Firststeps
FirststepsFirststeps
Firststeps
 
Avivo
AvivoAvivo
Avivo
 
Schilderijen1
Schilderijen1Schilderijen1
Schilderijen1
 
RDBを中核としたXMLDBの開発
RDBを中核としたXMLDBの開発RDBを中核としたXMLDBの開発
RDBを中核としたXMLDBの開発
 
Hydrodrive electronic catalytic convertor cum synthesizer mechanism adopted
Hydrodrive  electronic catalytic convertor cum synthesizer  mechanism adoptedHydrodrive  electronic catalytic convertor cum synthesizer  mechanism adopted
Hydrodrive electronic catalytic convertor cum synthesizer mechanism adopted
 

Semelhante a Dssh @ Confidence, Prague 2010

Presentation nix
Presentation nixPresentation nix
Presentation nixfangjiafu
 
Presentation nix
Presentation nixPresentation nix
Presentation nixfangjiafu
 
Tatu: ssh as a service
Tatu: ssh as a serviceTatu: ssh as a service
Tatu: ssh as a servicePino deCandia
 
Instant developer onboarding with self contained repositories
Instant developer onboarding with self contained repositoriesInstant developer onboarding with self contained repositories
Instant developer onboarding with self contained repositoriesYshay Yaacobi
 
encryption presentation (SAGE-WA, 2010-10-05)
encryption presentation (SAGE-WA, 2010-10-05)encryption presentation (SAGE-WA, 2010-10-05)
encryption presentation (SAGE-WA, 2010-10-05)Alastair Irvine
 
Insecurity-In-Security version.1 (2010)
Insecurity-In-Security version.1 (2010)Insecurity-In-Security version.1 (2010)
Insecurity-In-Security version.1 (2010)Abhishek Kumar
 
MariaDB Security Best Practices
MariaDB Security Best PracticesMariaDB Security Best Practices
MariaDB Security Best PracticesFederico Razzoli
 
DevOops & How I hacked you DevopsDays DC June 2015
DevOops & How I hacked you DevopsDays DC June 2015DevOops & How I hacked you DevopsDays DC June 2015
DevOops & How I hacked you DevopsDays DC June 2015Chris Gates
 
Scalable Architecture 101
Scalable Architecture 101Scalable Architecture 101
Scalable Architecture 101ConFoo
 
IT Operations for Web Developers
IT Operations for Web DevelopersIT Operations for Web Developers
IT Operations for Web DevelopersMahmoud Said
 
Owning computers without shell access dark
Owning computers without shell access darkOwning computers without shell access dark
Owning computers without shell access darkRoyce Davis
 
Passwords good badugly181212-2
Passwords good badugly181212-2Passwords good badugly181212-2
Passwords good badugly181212-2Iftach Ian Amit
 
2012-03-15 What's New at Red Hat
2012-03-15 What's New at Red Hat2012-03-15 What's New at Red Hat
2012-03-15 What's New at Red HatShawn Wells
 
AWS DevOps - Terraform, Docker, HashiCorp Vault
AWS DevOps - Terraform, Docker, HashiCorp VaultAWS DevOps - Terraform, Docker, HashiCorp Vault
AWS DevOps - Terraform, Docker, HashiCorp VaultGrzegorz Adamowicz
 
DerbyCon2016 - Hacking SQL Server on Scale with PowerShell
DerbyCon2016 - Hacking SQL Server on Scale with PowerShellDerbyCon2016 - Hacking SQL Server on Scale with PowerShell
DerbyCon2016 - Hacking SQL Server on Scale with PowerShellScott Sutherland
 
Shall we play a game
Shall we play a gameShall we play a game
Shall we play a gamejackpot201
 

Semelhante a Dssh @ Confidence, Prague 2010 (20)

Presentation nix
Presentation nixPresentation nix
Presentation nix
 
Presentation nix
Presentation nixPresentation nix
Presentation nix
 
Tatu: ssh as a service
Tatu: ssh as a serviceTatu: ssh as a service
Tatu: ssh as a service
 
Gwc3
Gwc3Gwc3
Gwc3
 
Ssh tunnel
Ssh tunnelSsh tunnel
Ssh tunnel
 
Instant developer onboarding with self contained repositories
Instant developer onboarding with self contained repositoriesInstant developer onboarding with self contained repositories
Instant developer onboarding with self contained repositories
 
encryption presentation (SAGE-WA, 2010-10-05)
encryption presentation (SAGE-WA, 2010-10-05)encryption presentation (SAGE-WA, 2010-10-05)
encryption presentation (SAGE-WA, 2010-10-05)
 
Insecurity-In-Security version.1 (2010)
Insecurity-In-Security version.1 (2010)Insecurity-In-Security version.1 (2010)
Insecurity-In-Security version.1 (2010)
 
MariaDB Security Best Practices
MariaDB Security Best PracticesMariaDB Security Best Practices
MariaDB Security Best Practices
 
DevOops & How I hacked you DevopsDays DC June 2015
DevOops & How I hacked you DevopsDays DC June 2015DevOops & How I hacked you DevopsDays DC June 2015
DevOops & How I hacked you DevopsDays DC June 2015
 
Web security 101
Web security 101Web security 101
Web security 101
 
Websec
WebsecWebsec
Websec
 
Scalable Architecture 101
Scalable Architecture 101Scalable Architecture 101
Scalable Architecture 101
 
IT Operations for Web Developers
IT Operations for Web DevelopersIT Operations for Web Developers
IT Operations for Web Developers
 
Owning computers without shell access dark
Owning computers without shell access darkOwning computers without shell access dark
Owning computers without shell access dark
 
Passwords good badugly181212-2
Passwords good badugly181212-2Passwords good badugly181212-2
Passwords good badugly181212-2
 
2012-03-15 What's New at Red Hat
2012-03-15 What's New at Red Hat2012-03-15 What's New at Red Hat
2012-03-15 What's New at Red Hat
 
AWS DevOps - Terraform, Docker, HashiCorp Vault
AWS DevOps - Terraform, Docker, HashiCorp VaultAWS DevOps - Terraform, Docker, HashiCorp Vault
AWS DevOps - Terraform, Docker, HashiCorp Vault
 
DerbyCon2016 - Hacking SQL Server on Scale with PowerShell
DerbyCon2016 - Hacking SQL Server on Scale with PowerShellDerbyCon2016 - Hacking SQL Server on Scale with PowerShell
DerbyCon2016 - Hacking SQL Server on Scale with PowerShell
 
Shall we play a game
Shall we play a gameShall we play a game
Shall we play a game
 

Mais de Juraj Bednar

Optionality, uncertainty and freedom from HCPP
Optionality, uncertainty and freedom from HCPPOptionality, uncertainty and freedom from HCPP
Optionality, uncertainty and freedom from HCPPJuraj Bednar
 
Biohacking a mentální koučing - Miroslav Nečas, Biohacking meetup Paralelná p...
Biohacking a mentální koučing - Miroslav Nečas, Biohacking meetup Paralelná p...Biohacking a mentální koučing - Miroslav Nečas, Biohacking meetup Paralelná p...
Biohacking a mentální koučing - Miroslav Nečas, Biohacking meetup Paralelná p...Juraj Bednar
 
Tedsig introduction
Tedsig introductionTedsig introduction
Tedsig introductionJuraj Bednar
 
Úvod do biohackingu, Paralelná Polis
Úvod do biohackingu, Paralelná PolisÚvod do biohackingu, Paralelná Polis
Úvod do biohackingu, Paralelná PolisJuraj Bednar
 
Mne to na notebooku funguje
Mne to na notebooku fungujeMne to na notebooku funguje
Mne to na notebooku fungujeJuraj Bednar
 
Sifrovanie hovorov a textovych sprav
Sifrovanie hovorov a textovych spravSifrovanie hovorov a textovych sprav
Sifrovanie hovorov a textovych spravJuraj Bednar
 
Processing workshop intro
Processing workshop introProcessing workshop intro
Processing workshop introJuraj Bednar
 
Processing a Arduino
Processing a ArduinoProcessing a Arduino
Processing a ArduinoJuraj Bednar
 
Processing and Arduino
Processing and ArduinoProcessing and Arduino
Processing and ArduinoJuraj Bednar
 
Úvod do umelej inteligencie
Úvod do umelej inteligencieÚvod do umelej inteligencie
Úvod do umelej inteligencieJuraj Bednar
 
Progressbar promo - slovenska verzia
Progressbar promo - slovenska verziaProgressbar promo - slovenska verzia
Progressbar promo - slovenska verziaJuraj Bednar
 
Progressbar promo - english version
Progressbar promo - english versionProgressbar promo - english version
Progressbar promo - english versionJuraj Bednar
 
Telefónia a VoIP barcamp
Telefónia a VoIP barcampTelefónia a VoIP barcamp
Telefónia a VoIP barcampJuraj Bednar
 

Mais de Juraj Bednar (15)

Optionality, uncertainty and freedom from HCPP
Optionality, uncertainty and freedom from HCPPOptionality, uncertainty and freedom from HCPP
Optionality, uncertainty and freedom from HCPP
 
Biohacking a mentální koučing - Miroslav Nečas, Biohacking meetup Paralelná p...
Biohacking a mentální koučing - Miroslav Nečas, Biohacking meetup Paralelná p...Biohacking a mentální koučing - Miroslav Nečas, Biohacking meetup Paralelná p...
Biohacking a mentální koučing - Miroslav Nečas, Biohacking meetup Paralelná p...
 
Tedsig introduction
Tedsig introductionTedsig introduction
Tedsig introduction
 
Úvod do biohackingu, Paralelná Polis
Úvod do biohackingu, Paralelná PolisÚvod do biohackingu, Paralelná Polis
Úvod do biohackingu, Paralelná Polis
 
Mne to na notebooku funguje
Mne to na notebooku fungujeMne to na notebooku funguje
Mne to na notebooku funguje
 
Sifrovanie hovorov a textovych sprav
Sifrovanie hovorov a textovych spravSifrovanie hovorov a textovych sprav
Sifrovanie hovorov a textovych sprav
 
Tedx hacktivism
Tedx hacktivismTedx hacktivism
Tedx hacktivism
 
Processing workshop intro
Processing workshop introProcessing workshop intro
Processing workshop intro
 
Phone security
Phone securityPhone security
Phone security
 
Processing a Arduino
Processing a ArduinoProcessing a Arduino
Processing a Arduino
 
Processing and Arduino
Processing and ArduinoProcessing and Arduino
Processing and Arduino
 
Úvod do umelej inteligencie
Úvod do umelej inteligencieÚvod do umelej inteligencie
Úvod do umelej inteligencie
 
Progressbar promo - slovenska verzia
Progressbar promo - slovenska verziaProgressbar promo - slovenska verzia
Progressbar promo - slovenska verzia
 
Progressbar promo - english version
Progressbar promo - english versionProgressbar promo - english version
Progressbar promo - english version
 
Telefónia a VoIP barcamp
Telefónia a VoIP barcampTelefónia a VoIP barcamp
Telefónia a VoIP barcamp
 

Último

Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 

Último (20)

Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 

Dssh @ Confidence, Prague 2010

  • 1. Managing servers with DSSH 29. 11. 2010 Juraj Bednár
  • 2. Introduction DIGMIA ● System administration and consulting company ● Most of the TOP 20 web sites in Slovakia are our customers ● Supporters of open-source Me ● Co-founder of Progressbar.sk hackerspace ● Member of Society for Open Information Technologies (soit.sk)
  • 3. Who is this presentation for? ● At least 5 system administrators or ● At least 30 servers in heterogenous environment
  • 5.
  • 6. Wrong solutions ● Use ssh agent forwarding – Known to be insecure if you don't trust the server (which you should not – it's customer's, their security policy applies) ● Create VPN to office – Single point of failure – Difficult to manage if there are different customers with same network range (192.168.x.x)?
  • 7. Wrong solutions ● Cut & paste passwords ● Clipboard not safe enough ● You don't need to display passwords, just use them at just the right place (don't paste to chat...)
  • 8. Not applicable for us ● pfexec, sudo, ... ● Low auditability ● sudo -s ● copy file to server and then execute ● Management hell ● Can not create lots of unix accounts and manage them ● LDAP not possible (different customers, different security policies)
  • 9. Enter DSSH ● Custom scriptable SSH client ● Written in Java, using modified Trilead SSH library ● Console initialization components written in JNI ● Needs terminal emulator (such as xterm or Terminal.app) ● Scriptable in BeanShell ● Used Groovy, but it was too slow (interactive start)
  • 10. Features ● SSH in SSH tunneling ● Hostnames can be interpreted by script to login you to target network ● Possibility to change hostnames ● Possibility to login as root by using “su” or “ena” ● Limited scp support (sftp coming soon) ● Not possible to scp using “su” or “ena” because of server lim.
  • 11. Additional features ● Dynamic path selection (script can ping several entry point hosts) ● Logging support ● Credentials storage very lightweight ● API does not support key retrieval (you can only use keys) ● Supports password retrieval ● Can be changed for any password storage solution easily
  • 13. Examples ● We don't want our admins to remember weird port numbers if ((host.equals("weirdhost.customer1")) && (port == 22)) port = 31337; ● Or IP addresses if (host.equals("weirdhost.customer2")) host = "192.146.122.211";
  • 14. Examples ● Automatically use backup connection if (host.equals("weirdhost3.customer")) { InetAddress address = InetAddress.getByName(host); if (!address.isReachable(1500)) { if (verbose) System.err.println("Unable to connect to weirdhost3.customer, connecting to weirdhost3-1.customer instead"); host = "weirdhost3-1.customer"; }}
  • 15. Examples ● Use jumpstation (SSH in SSH tunelling) if (host.equals("weirdhost5.customer")) { parent = getAuthenticatedSSHConnection(myuser, “gw.customer”, 22, parent, auth); } ● Additionaly you can create “virtual hostnames” by adding host = “192.168.2.3”;
  • 16. Examples ● Security policy denies direct root logins ● In getAuthenticatedSSHConnection() if (host.equals("weirdhost.customer4") && user.equals("root")) user = "digmia"; ● In getInteractiveSession() if (host.equals("weirdhost.customer4") && user.equals("root") return new InteractiveSuSession(conn.openSession(), host, username, pass);
  • 17. Examples ● Collect configurations from Cisco routers for i in `cat dsshhostlist-cisco` do echo "Downloading configuration from $i" echo term len 0 $'n' sh run $'n' exit | /usr/local/bin/dssh -k cisco/known_hosts ena@$i | sed -n '/^[!]/,/^end/p' > cisco/$i done
  • 18. Documentation and license ● Currently GPLv2 – We consider to switching to less strict license (BSD) ● Documentation with examples available online ● Download at http://opensource.digmia.com/
  • 19. Future ● Creating “DSSH server” – Standalone mode still possible – Lightweight client (possibly in Python) ● Faster start-up times ● Very little actual functionality –Possible to quickly steal terminal emulation from Putty and allow “xterm”- less Windows client ● SSL + certificates
  • 20. Future – Server allows additional features ● Client never sees credentials ● Server can check ACLs ● Revoke certificates (no need to change all passwords, although this is scriptable thanks to DSSH :) – DSSH server side auditing ● DSSH server sees into connections (even forwarded ones) ● Logging of file transfers, port forwards, console, ... ● Server can be clustered (very little state information, this is really easy)
  • 21. Future ● Admins never see credentials – No password leaks nor key leaks – SSL certificates can be revoked and exchanged easily ● Admins sometimes have to see credentials anyway (console root login to broken server) – Portal to request password and provide explanation – Automatically creates ticket to change password in trouble ticketing system ● SOCKS proxy -D (currently supports only -L a -R port forwarding)
  • 22. Future ● Central server key authority – known_hosts idea is a main failure – Key never “just changes”, someone has to approve – Configurable policy, that does not ask the administrator, but just drops the connection
  • 24. Questions? ● Working on it right now – Q1-Q2 2011 – You can help and shape the future of DSSH! ● Questions? – (and possibly some answers)