Saturday, April 5, 2014

Linux ss command

Bài viết sau đây mô tả về linux ss command. Dòng lệnh này hiện thị nhiều thông tin và nhanh hơn dòng lệnh netstat. Dòng lệnh netstat nhận thông tin từ các file khác nhau trong /proc nên rất chậm. Còn dòng lệnh ss lấy trực tiếp từ kernel space rất nhanh. Dòng lệnh ss-socket statistics, Trong ví dụ sau, dòng lệnh ss check kết nối và socket statisctis.

Links:
Dòng lệnh hữu ích trong linux
Umask và thiết lập umask trong linux
Centos 6.5 tạo User và Group Basic đến Advance
Linux ss command
linux ss command
Hình Ảnh "Linux ss command"

List tất cả các kết nối

whoami@whoami-K53E ~ $ ss | less
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port
u_str ESTAB 0 0 * 14579 * 15563
u_str ESTAB 0 0 @/tmp/.X11-unix/X0 11637 * 14172
u_str ESTAB 0 0 @/tmp/dbus-GgD1mQVgda 11874 * 13129
u_str ESTAB 0 0 @/tmp/dbus-cJFLvX3o 13115 * 11856
u_str ESTAB 0 213504 @/tmp/.X11-unix/X0 14727 * 15821
u_str ESTAB 0 0 * 12994 * 14505
u_str ESTAB 0 0 * 17184 * 17634

Dòng lệnh phía trên list tất cả các kết nối tcp,udp và socket

Filter các kết nối tcp,udp và unix

Ta muốn view :)) kết nối tcp,udp or unix ta '-t','-u' or '-x'
whoami@whoami-K53E ~ $ ss -t
State Recv-Q Send-Q Local Address:Port Peer Address:Port
ESTAB 0 0 192.168.1.5:36180 173.252.107.18:https
CLOSE-WAIT 38 0 192.168.1.5:41617 118.214.83.51:https

Dòng lệnh phía trên list kết nối tcp với '-t' option. mặc định, thì nó list "established" hay CONNECTED" mà không list “Listen”, Ta thêm '-a' option list tất cả các kết nối. whoami@whoami-K53E ~ $ ss -t a

Hiển thị tên process và pid

whoami@whoami-K53E ~ $ ss -ltp

Hiện thị socket statistic

whoami@whoami-K53E ~ $ ss -s
Total: 546 (kernel 0)
TCP: 13 (estab 3, closed 0, orphaned 0, synrecv 0, timewait 0/0), ports 0
Transport Total IP IPv6
* 0 - -
RAW 0 0 0
UDP 19 16 3
TCP 13 10 3
INET 32 26 6
FRAG 0 0 0

Chỉ hiển thị kết nối IPv4 or IPv6

show ipv4 :D whoami@whoami-K53E ~ $ ss -tl4
show ipv6 :D whoami@whoami-K53E ~ $ ss -tl6

Filter địa chỉ và số port

Cấu trúc:
$ ss [ OPTIONS ] [ STATE-FILTER ] [ ADDRESS-FILTER ]

whoami@whoami-K53E ~ $ ss -at '( dport = :ssh or sport = :ssh )'
# Filter by address
whoami@whoami-K53E ~$ ss -nt dst 192.168.1.34

More example:
whoami@whoami-K53E ~ $ ss -t4 state time-wait
whoami@whoami-K53E ~ $ ss -t4 state established
whoami@whoami-K53E ~ $ ss -nt dst :443 or dst :80
whoami@whoami-K53E ~ $ # source address is 127.0.0.1 and source port is greater than 5000
whoami@whoami-K53E ~ $ ss -nt src 127.0.0.1 sport gt :5000

Kết luận: “Linux ss command” :D rất hữu ích, rất nhanh :)).Biết thêm thông tin về dòng lệnh
$man ss
Muốn biết thêm thông tin filter ở đây là hệ thống ubuntu,debian ta install. file /usr/share/doc/iproute2-doc/ss.html chứa cấu trúc filter.
whoami@whoami-K53E ~ $ sudo apt-get install iproute2-doc

Read more

Tuesday, April 1, 2014

Dòng lệnh hữu ích trong linux

Bài viết sau đây hướng dẫn về các Dòng lệnh hữu ích trong linux. Cũng như các hệ thống unix,centos,ubuntu....

Links:
Dòng lệnh hữu ích trong linux
Umask và thiết lập umask trong linux
Linux sử dụng Openssl tạo CA
Centos 6.5 tạo User và Group Basic đến Advance
”Linux
Hình Ảnh:Terminal phía trên :)) một số Dòng lệnh hữu ích trong linux

Các dòng lệnh File
$ ls : list danh sách trong thư mục
$ ls -al : list tất cả danh sách và file ẩn trong thư mục
$ mkdir dir : lệnh tạo thư mục
$ mkdir -p /A/B : lệnh tao thư mục có dạng /A/B :)
$ rm file : xóa file
$ rm -rf dir : xóa thư mục
$ cp file1 file1 : copy file1 đến file 2
$ cp -r dir1 dir2 : copy thư mục dir1 đến dir2 nếu thư mục dir2 không có
$ mv file1 file2 : di chuyển file1 đến file2
$ ln -s file link : tạo symbolic link link đến file
$ touch file : tạo và update file
$ more file : output nội dung của file
$ head file : output 10 dòng đầu tiên của file
$ tail file : output 10 dòng cuối của file

Network
$ arp-scan -I interface -l : scan IP address confict
$ ping host : kiểm tra mạng của host
$ whois domain : nhận thông tin whois của domain
$ dig domain : nhận thông tin DNS của domain
$ dig -x host : reverse lookup host
$ wget file : download file
$ ifconfig -a : show thông tin tất cả các cổng và địa chỉ IP
$ ifconfig eth0 mtu 9000 up : set mtu đến 9000
$ ifconfig -a | grep HWaddr : hiển thị địa chỉ MAC
$ ethtool eth0 : show trạng thái ethernet ( set full deplex)
$ netstat -tupl : list các port (tcp,udp,pid) active listing

Install Package
$ dpkg -i dkg.deb : install gói debian
$ dpkg -r dkg.deb: remove gói debian
$ sudo apt-get update ; sudo apt-get upgrade : update và upgrade
$ sudo apt-get install package : install package
$ sudo apt-get remove package : remove package
$ rpm -Uvh dkg.rpm : install gói RPM
$ rpm -e dkgname : remove gói RPM
install từ source $ ./configure
$ make
$ make install

Statistic và Analyze
$ top : hiển thị và update cpu process
$ vmstat 2 : hiển thị thống kê virtual memory
$ tcpdump -i eth0 : capture tất cả các packet trên interface eth0
$ watch df -h : xem dữ liệu thay đổi liên tục
$ ps : Hiển thị các active process
$ ps -aux | grep “iptables” : tìm tất cả các process id liên quan iptables
$ kill -9 “name” : kill process tên “name”

SSH
$ ssh user@host : kết nối ssh như user
$ ssh -p user@host : kết nối ssh sử dụng port

comperssion
$ gzip file : nén file và file có đuôi file.gz
$ gzip -d file.gz : giải nén file.gz
$ tar cf file.tar file : tạo file.tar chứ nội dung file
$ tar xf file.tar : extract file từ file.tar
$ tar czf file.tar.gz file : tạo file tar với nén gzip
$ tar xzf file.tar.gz : extract file tar sử dụng gzip
$ tar cjf file.tar.bz2 : tạo file tar với nén bzip2
$ tar xjf file.tar.bz2 : extract file tar sử dụng bzip2

File permission
$ ls -lFa
drwxr-xr-x 2 whoami whoami 4096 Th03 24 09:38 abc/
-rw-r--r-- 1 whoami whoami 15222 Th03 24 09:14 lenh co ban linux.odt

Note: 'd' là thư mục. '-' là file :) .ví dụ ở trên thư mục abc drwxr-xr-x gồm user:whoami có quyền rwx và group:whoami r-x và other r-x. Sử dụng dòng lệnh chmod để permission.
chmod octal files
octal : 4 -read (r)
2 -write (w)
1 -excute (x)
ví dụ : chmod 777 file : read, write, excute cho tất cả :)

system info
$ cat /etc/lsb-release : xem version bản distro
$ cat /proc/cpuinfo : thông tin cpu
$ cat /proc/meminfo : thông tin memory
$ df -h : show disk theo kb,MB,GB
$ du : show không gian thư mục sử dụng
$ free -h : hiển thị số lượng sử dụng memory trong hệ thống
$ whereis command : locate binary, source, trang manual dòng lệnh
$ which command : locate dòng lệnh
$ w : display thông tin user đang online
$ finger user : display thông tin về user
$ uname -a : show thông tin về kernel
$ last reboot: show lịch sử hệ thống reboot
$ uptime: show system running+load bao lâu.

Kết Luận:Phía trên một số dòng lênh hữu ích trong linux. Sẽ update thêm sau :))


Read more