[devops] Quản lý truy cập đến nhiều server với stormssh

Bài viết được thực hiện trên:

$ uname -a
 Darwin Systems-MacBook-Pro-8.local 17.5.0 Darwin Kernel Version 17.5.0: Mon Mar 5 22:24:32 PST 2018; root:xnu-4570.51.1~1/RELEASE_X86_64 x86_64

Bạn đã từng đau đầu vì khi phải quản lý nhiều servers mà không thể nhớ hết các thông tin về chúng?
Có một cách đơn giản để quản lý là thêm thông tin của các server vào file ~/.ssh/config. Nhưng bạn lại NGẠI việc copy paste và sửa đổi mỗi lần thêm server hoặc thay đổi thông tin về server?

stormssh là một giải pháp hữu hiệu dành cho người lười :D. Nó giúp bạn quản lý thông tin ssh của các server đơn giản và nhanh gọn chỉ với một câu lệnh ngắn.

Cơ bản, stormssh lưu giữ thông tin các host tại ~/.ssh/config. Thay vì việc bạn phải add thông tin ssh của các server bằng tay, thì stormssh add các thông tin đó thay bạn.

Storm is a command line tool to manage ssh connections 

1. Cài đặt

Trên Mac OSX, dùng brew để cài đặt:

$ brew install stormssh

Note: Trên Ubuntu hoặc CentOS có thể cài đặt với pip hoặc easy_install:

$ [sudo] pip install stormssh

hoặc:

$ [sudo] easy_install stormssh

2. Hướng dẫn sử dụng stormssh

$ storm --help
$ stom add --help

Tất cả các lệnh với stormssh

usage: storm [-h] COMMAND..
 Command: 'version', 'add', 'edit', 'update', 'delete', 'list', 'search', 'delete_all', 'web'

Một số lệnh cơ bản với stormssh

1. Add: thêm thông tin của ssh host

$ storm add name ssh_user@host_ip:ssh_port

default, ssh_port là port 22 nếu không được truyền.
ví dụ:

$ storm add host_test ubuntu@176.32.76.24
success host_test added to your ssh config. you can connect it by typing "ssh host_test".

Thông tin ssh của host_test sẽ được add vào file ~/.ssh/config:

$ cat ~/.ssh/config 

...
Host host_test
     hostname 176.32.76.24
     user ubuntu
     port 22
...

2. Edit: thay đổi thông tin của host đã được add vào stormssh

storm edit host_name ssh_user@host_ip:ssh_port

3. Delete: xoá thông tin của host đã được add vào stormssh

storm delete host_name
vd: $ storm delete host_test

4. List: list tất cả các host được quản lý bởi stormssh

$ storm list
 Listing entries:

host_test_1 -> ec2-user@13.114.134.202:22

host_test_2 -> ec2-user@52.198.150.30:22

host_test -> ubuntu@176.32.76.24:22

5. Delete_all: xoá tất cả các host được quản lý bởi stormssh

storm delete_all

6. Search: tìm kiếm thông tin về một host được quản lý bởi stormssh

$ storm search host_name

Ví dụ:

# list các host trong tên có bao gồm abc
$ storm search abc

…..

để ssh vào một server được quản lý với stormssh, gõ lệnh:

$ ssh host_name

ví dụ:

 $ ssh host_test

Tham khảo thêm tại:
https://stormssh.readthedocs.io/en/latest/

Add a Comment

Scroll Up