Skip to content

Instantly share code, notes, and snippets.

@jbourassa
Last active August 29, 2015 13:55

Revisions

  1. jbourassa revised this gist Feb 5, 2014. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion notes.md
    Original file line number Diff line number Diff line change
    @@ -99,7 +99,7 @@ C'est tanant taper les paths au complet, utilisons plutôt la complétion scp av

    ssh rita 'mysqldump opencode -u root -p_PW_'
    ssh rita 'mysqldump opencode -u root -p_PW_' > db.sql
    ssh rita 'mysqldump opencode -u root -p_PW_' > mysql -u root opencode
    ssh rita 'mysqldump opencode -u root -p_PW_' | mysql -u root opencode


    ssh rita -t htop
  2. jbourassa revised this gist Feb 2, 2014. 1 changed file with 13 additions and 11 deletions.
    24 changes: 13 additions & 11 deletions notes.md
    Original file line number Diff line number Diff line change
    @@ -36,6 +36,8 @@
    # Pas sécure trop trop, mais + rapide
    CheckHostIP no


    # Pas mal plus rapide maintenant!
    time ssh rita ls


    @@ -44,17 +46,17 @@
    # Beau dessins
    VisualHostKey yes

    +--[ RSA 2048]----+
    | o oo |
    | + o oE . |
    | o . oo |
    | . o. |
    | ..S |
    | .. |
    | o . |
    | o.. .o.. |
    | ....o**+o. |
    +-----------------+
    +--[ RSA 2048]----+
    | o oo |
    | + o oE . |
    | o . oo |
    | . o. |
    | ..S |
    | .. |
    | o . |
    | o.. .o.. |
    | ....o**+o. |
    +-----------------+


    ## SCP
  3. jbourassa created this gist Feb 2, 2014.
    155 changes: 155 additions & 0 deletions notes.md
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,155 @@
    # SSH

    ## Basic intro

    ssh user@host -p PORT

    ssh user@host __command__


    ## Config file (`~/.ssh/config`)

    ### Info de base

    - Host (alias)
    - User
    - Port
    - HostMame
    - IdentityFile


    ### Speed gain

    time ssh rita ls

    <!--- Update config with: -->
    Host *
    # don't try to authenticate with Kerberos
    GSSAPIAuthentication no
    GSSAPIKeyExchange no
    # persist the ssh connection for 5 minutes
    # subsequent ssh connections respond faster because its reusing an existing connection
    ControlMaster auto
    ControlPath ~/.ssh/master-%r@%h:%p
    ControlPersist 5m
    # Pas sécure trop trop, mais + rapide
    CheckHostIP no

    time ssh rita ls


    ### Autres options pour épater la gallerie

    # Beau dessins
    VisualHostKey yes

    +--[ RSA 2048]----+
    | o oo |
    | + o oE . |
    | o . oo |
    | . o. |
    | ..S |
    | .. |
    | o . |
    | o.. .o.. |
    | ....o**+o. |
    +-----------------+


    ## SCP

    scp rita:files/file1.txt ~/Desktop

    C'est tanant taper les paths au complet, utilisons plutôt la complétion scp avec...

    source /usr/local/etc/bash_completion


    # Récursif
    scp rita:files/* ~/Desktop/files_from_rita/
    scp -r rita:files/ ~/Desktop/files_from_rita

    # Conserver les permissions et temps
    scp -p rita:some/ ~/Desktop/

    # Ouvrir dans vim
    vim scp://rita/files/file2.txt

    # SCP moins sécure mais plus rapide
    scp -c blowfish rita:files/ ~/Desktop/

    # SCP pas sécure pentoute mais plus rapide
    scp -c none rita:files/ ~/Desktop/

    # Direct d'un serveur à l'autre
    scp rita:/source/ armand:/dest/

    # Limite de bandwith (ex. 56k)
    scp -l 56 rita:/source/ armand:/dest/


    # D'un serveur à l'autre via local
    # (ex. 2 réseaux qui peuvent pas se parler directement)
    scp -3 rita:/source/ goerge-en-prison:/dest/

    ## Ok, on fait quoi avec ça?

    ssh rita 'mysqldump opencode -u root -p_PW_'
    ssh rita 'mysqldump opencode -u root -p_PW_' > db.sql
    ssh rita 'mysqldump opencode -u root -p_PW_' > mysql -u root opencode


    ssh rita -t htop

    ## sshfs

    brew install sshfs

    sshfs rita: ~/Desktop/rita_fs/


    ## ForwardAgent / Proxy


    ForwardAgent: fait suivre ton accès sur la machine, permet donc de SSHer vers
    une autre machine. Par la bande, ça permet de faire des opérations git via ssh;
    c'est très utile pour déployer (ie: avec Capistrano)

    ssh-add
    ssh -A rita
    ssh -A user@other_server


    Automatiquement passer par une `SERVER_1` pour atteindre `SERVER_2`.
    Autrement dit, `ssh __ALIAS__` connecte à `SERVER_2` en passant par `SERVER_1`
    Usecase : firewall whitelist ip only + ip variable

    Host __ALIAS__
    User SERVER_2_USER
    HostName SERVER_2_HOST
    ProxyCommand ssh SERVER_1_CONFIG -W %h:%p


    ## Socks Proxy

    Ou comment avoir l'air d'un américain n'importe où dans le monde

    ssh -ND 9999 __machine___

    Script qui setup le proxy automatiquement sur OSX: [greecard](https://github.com/jbourassa/dotfiles/blob/master/bin/greencard)


    ## Alternatives à OpenSSH?

    Dropbear : pour embeded-os (arduino, routeurs, etc, mais compile aussi sur OS X)

    https://matt.ucc.asn.au/dropbear/dropbear.html

    ZOC : GUI propriétaire

    http://www.emtec.com/zoc/

    SecureCRT : GUI propriétaire

    http://www.vandyke.com/products/securecrt/mac_osx.html