۱۰ مثال کاربردی دستور ss

رضا فرخندگان ۲۷ فروردین ۱۳۹۷ ۰ دیدگاه

پیش‌تر به‌صورت مفصل درباره‌ی دستور یا فرمان SS و کاربردهای آن صحبت کردیم. در این مقاله به ۱۰ مثال کاربردی دستور ss اشاره خواهیم کرد.

10 مثال کاربردی دستور ss

همانگونه که بیان کردیم، دستور ss جایگزین جدیدی برای دستور netsate است. از آنجایی که دستور ss از تکنولوژی سوکت استفاده می‌کند، اطلاعات را مستقیم از کرنل گرفته و هم به لحاظ سرعت و هم عملکرد از دستورات قبلی قوی‌تر است. در این مقاله سعی داریم ۱۰ نمونه از کاربردهای این دستور را با هم بررسی کنیم.

۱۰ مثال کاربردی دستور ss

۱- لیست تمام کانکشن‌ها:

ss | less

Netid  State      Recv-Q Send-Q   Local Address:Port       Peer Address:Port

u_str  ESTAB      ۰      ۰                    * ۱۵۵۴۵                 * ۱۵۵۴۴

u_str  ESTAB      ۰      ۰                    * ۱۲۲۴۰                 * ۱۲۲۴۱

u_str  ESTAB      ۰      ۰                    * ۱۲۷۲۶                 * ۱۲۱۵۹

u_str  ESTAB      ۰      ۰                    * ۱۱۸۰۸                 * ۱۱۲۵۶

u_str  ESTAB      ۰      ۰                    * ۱۵۲۰۴                 * ۱۵۲۰۵

…..

۲- برای مشاهده‌ی کانکشن‌های TCP:

ss -t

State      Recv-Q Send-Q    Local Address:Port        Peer Address:Port

ESTAB      ۰      ۰           ۱۹۲.۱۶۸.۱.۲:۴۳۸۳۹     ۱۰۸.۱۶۰.۱۶۲.۳۷:http

ESTAB      ۰      ۰           ۱۹۲.۱۶۸.۱.۲:۴۳۶۲۲     ۱۹۹.۵۹.۱۴۹.۲۰۱:https

ESTAB      ۰      ۰           ۱۹۲.۱۶۸.۱.۲:۳۳۱۴۱      ۸۳.۱۷۰.۷۳.۲۴۹:ircd

ESTAB      ۰      ۰           ۱۹۲.۱۶۸.۱.۲:۵۴۰۲۸     ۷۴.۱۲۵.۱۳۵.۱۲۵:xmpp-client

در صورت نیاز به مشاهده‌ی کانکشن‌های (LISTEN) می‌توانید از سویچ -a استفاده کنید.

۳- لیست تمام کانکشن‌های UDP باز و در حال LISTEN:

$ ss -ua

State      Recv-Q Send-Q    Local Address:Port        Peer Address:Port

UNCONN     ۰      ۰           ۱۹۲.۱۶۸.۱.۲:۴۸۲۶۸                  *:*

UNCONN     ۰      ۰           ۱۹۲.۱۶۸.۱.۲:۵۶۵۷۵                  *:*

UNCONN     ۰      ۰                     *:۴۰۳۰۹                  *:*

UNCONN     ۰      ۰           ۱۹۲.۱۶۸.۱.۲:۵۶۸۷۹                  *:*

UNCONN     ۰      ۰                     *:۴۹۰۱۴                  *:*

UNCONN     ۰      ۰           ۱۹۲.۱۶۸.۱.۲:۵۳۱۲۴                  *:*

UNCONN     ۰      ۰             ۱۲۷.۰.۱.۱:domain                 *:*

۴-  استفاده از سوییچ -n

برای این‌که فرمان ss آی‌پی‌ها را به نام دامنه تبدیل نکند، می‌توانید از سوییچ -n استفاده کنید.

ss -nt

State      Recv-Q Send-Q      Local Address:Port        Peer Address:Port

ESTAB      ۰      ۰             ۱۹۲.۱۶۸.۱.۲:۴۳۸۳۹     ۱۰۸.۱۶۰.۱۶۲.۳۷:۸۰

ESTAB      ۰      ۰             ۱۹۲.۱۶۸.۱.۲:۵۱۳۵۰      ۷۴.۱۲۵.۲۰۰.۸۴:۴۴۳

ESTAB      ۰      ۰             ۱۹۲.۱۶۸.۱.۲:۳۳۱۴۱      ۸۳.۱۷۰.۷۳.۲۴۹:۶۶۶۷

ESTAB      ۰      ۰             ۱۹۲.۱۶۸.۱.۲:۵۴۰۲۸     ۷۴.۱۲۵.۱۳۵.۱۲۵:۵۲۲۲

ESTAB      ۰      ۰             ۱۹۲.۱۶۸.۱.۲:۴۸۱۵۶      ۶۶.۱۹۶.۱۲۰.۴۴:۵۰۵۰

۵- جهت مشاهده‌ی کانکشن‌های (LISTEN):

در فرمان زیر شما لیست تمام کانکشن‌های (TCP) در حالت (LISTEN) را مشاهده می‌کنید.

ss -ltn

State      Recv-Q Send-Q        Local Address:Port          Peer Address:Port

LISTEN     ۰      ۵                 ۱۲۷.۰.۱.۱:۵۳                       *:*

LISTEN     ۰      ۱۲۸               ۱۲۷.۰.۰.۱:۶۳۱                      *:*

LISTEN     ۰      ۱۲۸                     ::۱:۶۳۱                     :::*

۶- لیست پردازش‌های در حال (LISTEN) به‌همراه (PID):

ss -ltp

State      Recv-Q Send-Q    Local Address:Port        Peer Address:Port

LISTEN     ۰      ۱۰۰           ۱۲۷.۰.۰.۱:smtp                   *:*

LISTEN     ۰      ۱۲۸           ۱۲۷.۰.۰.۱:۹۰۵۰                   *:*

LISTEN     ۰      ۱۲۸                   *:۹۰                     *:*

LISTEN     ۰      ۱۲۸                   *:db-lsp                 *:*        users:((“dropbox”,3566,32))

LISTEN     ۰      ۵             ۱۲۷.۰.۰.۱:۶۶۰۰                   *:*

LISTEN     ۰      ۱۲۸           ۱۲۷.۰.۰.۱:۹۰۰۰                   *:*        users:((“php5-fpm”,1620,0),(“php5-fpm”,1619,0))

۷- نمایش اطلاعات کلی:

ss -s

Total: 526 (kernel 0)

TCP:   ۱۰ (estab 7, closed 0, orphaned 0, synrecv 0, timewait 0/0), ports 0

Transport Total     IP        IPv6

*         ۰         –         –

RAW       ۰         ۰         ۰

UDP       ۱۵        ۹         ۶

TCP       ۱۰        ۹         ۱

INET      ۲۵        ۱۸        ۷

FRAG      ۰         ۰         ۰

۸-  نمایش اطلاعات زمان ارتباطات:

$ ss -tn -o

State      Recv-Q Send-Q      Local Address:Port        Peer Address:Port

ESTAB      ۰      ۰             ۱۹۲.۱۶۸.۱.۲:۴۳۸۳۹     ۱۰۸.۱۶۰.۱۶۲.۳۷:۸۰

ESTAB      ۰      ۰             ۱۹۲.۱۶۸.۱.۲:۳۶۳۳۵     ۲۰۴.۱۴۴.۱۴۰.۲۶:۸۰     timer:(keepalive,26sec,0)

ESTAB      ۰      ۰             ۱۹۲.۱۶۸.۱.۲:۳۳۱۴۱      ۸۳.۱۷۰.۷۳.۲۴۹:۶۶۶۷

ESTAB      ۰      ۰             ۱۹۲.۱۶۸.۱.۲:۵۸۸۵۷      ۷۴.۱۲۱.۱۴۱.۸۴:۸۰     timer:(keepalive,23sec,0)

ESTAB      ۰      ۰             ۱۹۲.۱۶۸.۱.۲:۴۲۷۹۴     ۱۷۳.۱۹۴.۴۰.۲۳۹:۸۰     timer:(keepalive,32sec,0)

۹- فیلتر خروجی بر مبنای حالت ارتباط:

$ ss -t4 state established

Recv-Q Send-Q         Local Address:Port             Peer Address:Port

۰      ۰                ۱۹۲.۱۶۸.۱.۲:۵۴۴۳۶          ۱۶۵.۱۹۳.۲۴۶.۲۳:https

۰      ۰                ۱۹۲.۱۶۸.۱.۲:۴۳۳۸۶          ۱۷۳.۱۹۴.۷۲.۱۲۵:xmpp-client

۰      ۰                ۱۹۲.۱۶۸.۱.۲:۳۸۳۵۵           ۱۹۹.۵۹.۱۵۰.۴۶:https

۰      ۰                ۱۹۲.۱۶۸.۱.۲:۵۶۱۹۸          ۱۰۸.۱۶۰.۱۶۲.۳۷:http

۱۰-  فیلتر خروجی بر مبنای پورت و آدرس:

$ ss -at ‘( dport = :ssh or sport = :ssh )’

State      Recv-Q Send-Q    Local Address:Port        Peer Address:Port

LISTEN     ۰      ۱۲۸                   *:ssh                    *:*

LISTEN     ۰      ۱۲۸                  :::ssh                   :::*

یا اطلاعات پورت ۸۰ و ۴۴۳

$ ss -nt ‘( dst :443 or dst :80 )’

State      Recv-Q Send-Q      Local Address:Port        Peer Address:Port

ESTAB      ۰      ۰             ۱۹۲.۱۶۸.۱.۲:۵۸۸۴۴      ۱۹۹.۵۹.۱۴۸.۸۲:۴۴۳

ESTAB      ۰      ۰             ۱۹۲.۱۶۸.۱.۲:۵۵۳۲۰     ۱۶۵.۱۹۳.۲۴۶.۲۳:۴۴۳

ESTAB      ۰      ۰             ۱۹۲.۱۶۸.۱.۲:۵۶۱۹۸     ۱۰۸.۱۶۰.۱۶۲.۳۷:۸۰

ESTAB      ۰      ۰             ۱۹۲.۱۶۸.۱.۲:۵۴۸۸۹    ۱۹۲.۲۴۱.۱۷۷.۱۴۸:۴۴۳

ESTAB      ۰      ۰             ۱۹۲.۱۶۸.۱.۲:۳۹۸۹۳      ۱۷۳.۲۵۵.۲۳۰.۵:۸۰

ESTAB      ۰      ۰             ۱۹۲.۱۶۸.۱.۲:۳۳۴۴۰      ۳۸.۱۲۷.۱۶۷.۳۸:۴۴۳

برای مورد بالا این دستور نیز مشابه است:

$ ss -nt dst :443 or dst :80

فناوران شبکه سینداد (آهنگ نوآوری)

سینداد یعنی هدیه‌ی سیمرغ، یا فرزند سیمرغ؛ به عبارتی یعنی خود سیمرغ، با همه ی شگفتی هایش، اما جوانتر و سرزنده تر. و این چیزی است که ما سعی می کنیم در سینداد باشیم. از سال ۱۳۸۵ دانش مان را به صورت خدماتی در حوزه ی هاستینگ، شبکه و تولید نرم افزار در اختیار مشتریان مان قرار داده ایم و به این افتخار می کنیم که تک تک آنها تا به امروز همراه ما مانده اند. باور داریم که سینداد صرفاً یک شرکت نیست، بلکه نوعی باور است به ارائه ی شگفت انگیز از هر چیز.