Saturday, January 31, 2015

Giám sát hệ thống Linux với netstat .

Netstat là một công cụ hữu ích của cho phép bạn kiểm tra những dịch vào nào đang kết nối đến hệ thống của bạn. Nó rất hữu ích trong việc phân tích cái gì đang xảy ra trên hệ thống của bạn khi bạn cố gắng ngăn chặn một cuộc tấn công nhằm vào nó.

Bạn có thể tìm thêm thông tin như có bao nhiêu kết nối được tạo ra trên một cổng, địa chỉ IP nào đang kết nối đến và nhiều thông tin khác nữa. Netstat đi kèm trong hầu hết các bản phân phối của Linux vì vậy nó nên được cài đặt trên hệ thống của bạn.
Khởi động một shell terminal trên hệ thống của bạn và chạy câu lệnh sau:
# netstat -ant

Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 ::ffff:192.168.1.19:80 ::ffff:192.168.1.240:63049 TIME_WAIT
tcp 0 0 ::ffff:192.168.0.19:80 ::ffff:192.168.1.240:62793 TIME_WAIT
tcp 0 0 ::ffff:192.168.1.19:80 ::ffff:192.168.1.240:62795 TIME_WAIT
Những thông tin xuất ra hầu hết đều rất dài. Như ở trên là một ví dụ về thông tin xuất ra. Như bạn có thể thấy trong dữ liệu ở trên có một kết nối được tạo ra từ 192.168.1.240 đến máy tính của chúng ta ở cổng 80 sử dụng giao thức TCP và kết nối đang ở trạng thái TIME_WAIT.

Những thông tin xuất ra này sẽ cho bạn biết thông tin về tất cả các cổng trên hệ thống của bạn, không chỉ riêng cổng 80.
Điều đầu tiên bạn cần nhận thức là những thông tin này rất lớn nhưng không được dùng nhiều.

Vì vậy chúng ta cần phải tổ chức lại nó. Ở đây có một vài thủ thuật chúng ta dùng để phân tích trạng thái tự nhiên của kết nối được tạo ra bởi hệ thống của chúng ta. Điều đầu tiên chúng ta cần làm là suy nghĩ xem những dịch vụ nào mà chúng ta muốn phân tích. Thông thường, cổng 80 là cổng mặc định cho web server, và cổng 3306 là cổng mặc định của MySQL. Vì vậy chúng ta sẽ dùng lệnh sau để xem cái gì đang diễn ra trên cổng 80:
# netstat -ant | grep 80
Bây giờ chúng ta sẽ có một danh sách các kết nối, nhỏ hơn lần trước, nhưng vẫn quá lớn để có thể nắm bắt hết. Vì vậy chúng ta sẽ dùng thêm lệnh “Wc -l” để đếm số dòng xuất ra để xem có bao nhiêu kết nối đến cổng 80:
# netstat -ant | grep 80 | wc -l

625
# netstat -ant | grep 3306 | wc -l

61
Bây giờ nếu muốn có một bức tranh toàn cảnh về những gì đang diễn ra trên hệ thống về các kết nối, chúng ta làm như sau:
# netstat -ant | awk '{print $6}' | sort | uniq -c | sort -n

1 established)
1 Foreign
4 FIN_WAIT2
8 LISTEN
16 CLOSE_WAIT
134 ESTABLISHED
409 TIME_WAIT
Như trên nói cho chúng ta biết có bao nhiêu loại trạng thái kết nối và số kết nối của mỗi trạng thái đó. Chúng ta cũng có thể chạy một câu lệnh tương tự để xem trạng thái kết nối được tạo ra bởi webserver như sau:
# netstat -ant | grep 80 | awk '{print $6}' | sort | uniq -c | sort -n

1 FIN_WAIT1
4 LISTEN
6 FIN_WAIT2
17 CLOSE_WAIT
94 ESTABLISHED
534 TIME_WAIT
Bạn có thể làm được nhiều việc phức tạp hơn bằng cách sử dụng lệnh Netstat kết hợp với các câu lệnh khác của Linux. Có thể rất hữu ích khi biết rõ một số thủ thuật của việc sử dụng Netstat, đặc biệt khi bạn đối mặt với một cuộc tấn công nhắm vào hệ thống của bạn.

Nguồn : http://www.gocit.vn/bai-viet/giam-sat-he-thong-linux-voi-netstat/

Tìm hiểu về /dev/null .

Trong quá trình sử dụng hay xem các bài hướng dẫn bảo mật chắc các bạn đã từng nghe nhiều đến một file đặt biệt trong hệ thống các file của là file /dev/.
 
Hôm nay Góc IT xin giới thiệu về file này để các bạn cùng hiểu thêm về hệ thống file của linux, ngoài ra có thể áp dụng nó trong việc bảo mật.


1. Trong linux mọi thứ là file.

Điều căn bản này rất quan trọng nên xin nhấn mạnh lại một lần nữa, hệ điều hành linux xem mọi thứ đều là “file” và theo định nghĩa thì file là” a block of arbitrary information, or resource for storing information”.
Vì vậy dễ dàng nhận thấy đối với linux thì folder cũng là file. Nhưng để làm việc hiệu quả thì linux cũng cần phải chia ra làm nhiều loại file khác nhau phục vụ cho công việc, thông thường thì có 7 loại chính sau đây.
d = directory
l = symbolic link
s = socket
p = named pipe
– = regular file
c = character (unbuffered) device file special
b = block (buffered) device file special
Các bạn thử gõ lệnh sau đây xem :
ls -la /dev/null
crw-rw-rw- 1 root root 1, 3 2011-04-26 13:00 /dev/null
Vậy nên có thể kết luận /dev/null là loại “character (unbuffered) device file special” (nội dung bài này không phải là phân tích cấu trúc các file linux nên phần này bỏ qua không giải thích).

2. Đặt điểm của /dev/null

/dev/null (còn gọi là “the null device”) là một file có đặt điểm là vứt bỏ (discards) mọi dữ liệu mà người dùng ghi vào trong nó (thường thông qua các lệnh chuyển hướng của shell hay các lệnh mv, cp,…), nhưng nó vẫn báo là hoàn thành quá trình ghi vào chớ không sinh ra lỗi. Và vì file này không lưu gì vào trong cả nên dĩ nhiên là cũng không xuất ra bất cứ cái gì.
Người ta xem như nó là một “lỗ đen” trong máy tính, có tác dụng thu nhận mọi thứ và không giới hạn, nhưng chả trả lại cái gì cả

3. Ứng dụng của file /dev/null

Dựa vào trong những đặt điểm trên của file /dev/null, nó được ứng dụng rộng rãi kể cả trong bảo mật (thậm chí mục tiêu bảo mật là chính), một vài ứng dụng của nó trong bảo mật là:
- Các gói tin nào không phù hợp thường được firewall chuyển vào trong /dev/null
– Các email server cũng thường được config để chuyển các email spam vào trong /dev/null giúp không bị đầy hdd
– Trong các chương trình bắt buộc phải có đầu ra dữ liệu, nhưng vì bảo mật bạn không muốn nó xuất hiện các thông tin đầu ra ví dụ .bash_history của root thì cũng có thể dùng /dev/null
– Ngoài ra các bạn còn có thể tạo các file rỗng bằng cách lấy dữ liệu trong /dev/null ra.
– … và còn nhiều thứ nữa.

Nguồn : http://www.gocit.vn/bai-viet/tim-hieu-ve-dev-null/

Quyền truy cập file trên Linux .

Một trong những điểm mạnh của là có khả năng phân quyền hạn truy cập (Permission) cho mọi đối tượng (file, thư mục, link). Hệ thống này đóng vai trò quan trọng trong việc cung cấp mức an ninh cao và tính ổn định cho hệ điều hành .

Mỗi đối tượng file được gắn với ba loại quyền: read (đọc), write (sửa đổi) và execute (thực thi). Và mỗi quyền này lại được chỉ định cho ba loại user:
  • owner : chủ sở hữu của đối tượng – mặc định ban đầu là user tạo ra đối tượng đó.
  • group : nhóm các user chia sẻ chung quyền hạn truy cập – mặc định ban đầu là group mà owner ở trên thuộc về.
  • others : tất cả các user không thuộc hai nhóm trên.
User (siêu người dùng) có đủ tất cả các quyền đối với mọi đối tượng trên hệ thống. Ngoài ra, có thể thay đổi quyền hạn truy cập đối tượng cho bất kỳ user nào và còn có thể chuyển quyền sở hữu đối tượng qua lại giữa các user.
Ý nghĩa của ba loại quyền này là:

Read: cho phép đọc.
Write: cho phép chỉnh sửa nội dung, xóa file; cho phép tạo và xóa các đối tượng trong thư mục.
Excute: cho phép thực thi hoặc truy cập nếu đó là thư mục.
Các quyền cho mỗi đối tượng được biểu diễn theo hai cách
Cách thứ nhất là biểu diễn bằng một chuỗi gồm 10 ký tự:
  • Ký tự đầu thể hiện loại file:
- : Tệp tin thông thường
d : Thư mục
l : Liên kết
c : Special file
s : Socket
p : Named pipe
b : Thiết bị
  • Ba ký tự tiếp là các quyền cho owner.
  • Kế đến là ba ký tự biểu diễn các quyền cho group.
  • Còn lại ba ký tự cuối dành cho other.
Quyền được phép read sẽ là r, write là w, e là excute. Các quyền bị cấm được biểu diễn bằng dấu –
Để xem chi tiết các quyền của tệp tin, bạn sử dụng lệnh ls với tùy chọn -l
$ ls -l
-rwxr-xr-x 1 ubuntu 9144 2011-07-07 15:16 a.out
drwxr-xr-x 2 ubuntu ubuntu 4096 2011-07-07 15:29 Desktop
-rw-r–r– 1 ubuntu ubuntu 68 2011-07-07 15:16 main.c
Giải thích chi tiết:
  • a.out : đây là file thực thi thông thường
  • Desktop : đây là một thư mục
  • main.c : đây là file thường, chủ sở hữu có quyền đọc và ghi; nhóm có quyền đọc; người khác có quyền đọc
Cách hai: ngắn gọn hơn, gồm ba con số biểu diễn theo hệ bát phân
Số đầu cho owner, số thứ hai cho group, số còn lại cho other. Mỗi một số nhận một trong tám giá trị sau:
0 : cấm tất cả các quyền
1 : execute
2 : write
3 : execute + write
4 : read
5 : read + execute
6 : read + write
7 : read + write + execute
Chỉ cần đổi ra dạng nhị phân, bạn sẽ hiểu ngay được các con số này.
Để thay đổi quyền hạn truy cập cho các user sử dụng lệnh chmod (bạn phải là owner của file hoặc có quyền root)
$ chmod 744 main.c # main.c sẽ có thuộc tính là: -rwxr–r–
Có một cách khác là sử dụng chmod bằng cách sử dụng ký tự đại diện. Các ký tự đại diện cho nhóm là:
  • u : user sở hữu file
  • g : group của user trên
  • o : others
  • a : tất cả ba ký hiệu ở trên
Các toán tử:
  • + : thêm quyền
  • - : bớt quyền
  • = : gán quyền
Ví dụ bạn thêm quyền thi hành cho một shell scripts có tên là demo.sh để bạn có thể chạy nó như sau:
$ chmod +x demo.sh # mặc định là u nên ở đây không cần nữa
$ chmod u+rwx,go-rwx demo.sh # bạn đoán thử xem!
Để thay đổi owner cho đối tượng sử dụng lệnh chown (bạn phải có quyền root):
$ chown User_Name File_Name
Để thay đổi group cho đối tượng sử dụng lệnh chgrp nhưng phải thỏa một trong hai điều kiện sau:
  1. Bạn sử dụng quyền root
  2. Bạn là chủ sở hữu và thuộc Group (có tên là Group_Name trong lệnh) mà bạn muốn thay đổi Group cho file:
$ chgrp Group_Name File_Name
Để biết mình thuộc các nhóm nào, bạn sử dụng lệnh ‘id’. Lệnh này cho biết id cùng với tên của bạn và các nhóm mà bạn tham gia.
Các thuộc tính khác của tệp tin liên quan đến quyền truy cập rất đáng chú ý khác nữa là: Set user ID, set group ID, sticky bit. Các bít này bổ xung thêm cho các quyền đã mô tả ở trên. Sau đây là mô tả chi tiết ba bít này:
  • SUID hay setuid: thay đổi việc thực thi dành cho user ID. Nếu như setuid được đặt, khi tệp tin được thực thi bởi người dùng (user), tuyến trình được tạo ra sẽ có cùng quyền với tệp tin.
  • SGID hay setgid: thay đổi việc thực thi dành cho group ID. Giống như ở trên, nhưng kế thừa các quyền của nhóm. Đối với các thư mục điều đó có nghĩa là khi một tệp tin được tạo ra trong thư mục nó sẽ kế thừa nhóm của thư mục (và không ai là người tạo ra cả).
  • Bít Sticky: Hiện nay nó ứng xử phụ thuộc vào từng hệ thống và nó thường được sử dụng để chống việc xóa các tệp tin mà tập tin này có quan hệ với những người dùng khác trong thư mục nơi bạn có quyền “write”.
Để biểu diễn các bít này, các bạn có thể sử dụng chữ số theo hệ bát phân như ở trên. Hay có thể biểu diễn theo dạng chuỗi ký tự như sau:
  • SUID: Nếu được đặt, sẽ thay thế “x” trong quyền chủ sở hữu thành “s”, nếu chủ sở hữu có quyền thực thi, còn nếu không thì thành “S”. Ví dụ:
-rws—— cả quyền thực thi và SUID được đặt.
-r-S—— SUID được đặt, nhưng quyền thực thi thì không.
  • SGID: Nếu được đặt, sẽ thay thế “x” trong nhóm thành “s”, nếu nhóm có quyền thực thi, còn nếu không thì thành “S”. Ví dụ:
-rwxrws— nhóm có quyền thực thi và bít SGID được đặt.
-rwxr-S— SGID được đặt, nhưng nhóm này không được thực thi.
  • Sticky: Nếu được đặt, sẽ thay thế “x” trong others thành “t”, nếu others có quyền thực thi, còn nếu không thì thành “T”. Ví dụ:
-rwxrwxrwt others có quyền thực thi và bít sticky được đặt
-rwxrwxr-T sticky được đặt, nhưng quyền thực thi cho others thì không.

Nguồn : http://www.gocit.vn/bai-viet/quyen-truy-cap-file-tren-linux/

Chia sẻ dữ liệu với NFS server .

 nếu bạn muốn chia sẻ dữ liệu giữa các máy *nix với nhau. Nếu trong mạng của bạn có những OS khác như hãy sử dụng samba . Cài đặt NFS trên :
# apt-get nfs-common
Cấu hình NFS Server:
Ví dụ nếu bạn muốn chia sẻ thư mục /mnt/nfs cho client với quyền đọc-ghi trước hết hãy tạo nó với câu lệnh:
# mkdir /mnt/nfs
# chown nobody:nogroup /mnt/nfs
và cấu hình file /etc/exports như sau:
/mnt/nfs 192.168.1.2(rw,sync,no_root_squash)
trong ví dụ trên thư mục /mnt/nfs trên server (192.168.1.1) sẽ được chia sẻ cho client (192.168.1.2) với quyền đọc-ghi. Hãy chắc chắn rằng thư mục đó cho phép đọc-ghi.
sau khi cấu hình xong hãy chạy:
# exportfs -a
Kết nối với NFS server trên client
# mount 192.168.1.1:/mnt/nfs /mount/nfs
nếu bạn muốn tự động kết nối mỗi khi khởi động hãy thêm dòng sau vào /etc/fstab:
192.168.1.1:/mnt/nfs /mount/nfs nfs rw,sync,hard,intr 0 0

Nguồn : http://www.gocit.vn/bai-viet/nfs-server/

Sử dụng Crontab trên Linux .

Tính năng Cron trong thực chất là 1 chế độ sắp xếp tự động các chương trình, ứng dụng và kích hoạt chúng tại 1 thời điểm nhất định trong hệ thống, tương tự với Task Scheduler của Windows.

Tất cả những gì chúng ta cần làm tại đây là gán các chương trình cần thực thi tới file của hệ thống và sử dụng cấu trúc lệnh phù hợp, cron sẽ tự động thực hiện các ứng dụng đó vào thời điểm đã được thiết lập sẵn trước đó. Do vậy, tính năng này rất phù hợp trong quá trình tự động sao lưu dữ liệu, bảo dưỡng hệ thống… và các công việc tương tự khác.

Cài đặt crontab bằng yum
yum install crontabs.noarch
yum install vixie-cron ( sử dụng lệnh này nếu lệnh trên không hoạt động)
Cron làm việc thế nào?

Một cron schedule đơn giản là một text file. Mỗi người dùng có một cron schedule riêng, file này thường nằm ở /var/spool/cron. Crontab files không cho phép bạn tạo hoặc chỉnh sửa trực tiếp với bất kỳ trình text editor nào, trừ phi bạn dùng lệnh crontab. Một số lệnh thường dùng:
crontab -e: tạo hoặc chỉnh sửa file crontab
crontab -l: hiển thị file crontab
crontab -r: xóa file crontab
Cấu trúc của crontab

Một crontab file có 5 trường xác định thời gian, cuối cùng là lệnh sẽ được chạy định kỳ, cấu trúc như sau:
*     *     *     *     *     command to be executed
–     –     –     –     –
|     |     |     |     |
|     |     |     |     +—– day of week (0 – 6) (Sunday=0)
|     |     |     +——- month (1 – 12)
|     |     +——— day of month (1 – 31)
|     +———– hour (0 – 23)
+————- min (0 – 59)
Nếu một cột được gán ký tự *, nó có nghĩa là tác vụ sau đó sẽ được chạy ở mọi giá trị cho cột đó.

Ví dụ

Giả sử một đoạn script backup database MySQL như sau:
#!/bin/bash
DB=db_gocit_bk_`date +%Y%m%d-%H%M`.sql
/usr/bin/mysqldump -u root –password=’password_gocit’ –databases gocit -R > /backup/database/$DB
gzip /backup/database/$DB
Sau đó cho script này chạy định kỳ vào 4h sáng hàng ngày bằng cách tạo một file crontab như sau:
# crontab -e
0 4  * * * /bin/sh /backup/backup.sh >/dev/null
Cuối cùng, nhớ kiểm tra dịch vụ cron daemon
# /etc/init.d/crond status
Nếu crontab chưa khởi động thì khởi động  bằng lệnh
# /etc/init.d/crond start
#  chkconfig crond on

Nguồn : http://www.gocit.vn/bai-viet/crontab-linux/

Một số lệnh cơ bản sử dụng YUM .

là một lệnh thường dùng trong để cài đặt, gỡ bỏ, update….các phần mềm. Đây là một lệnh rất hữu ích và tiện dụng. Bài viết sẽ liệt kê một số option cơ bản của lệnh yum. Tìm một phần mềm nào đó:

#yum search package-name
VD: #yum search java

Liệt kê tất cả các gói phần mềm đã được cài đặt trên máy:
# -qa
# yum list installed


Hiển thị danh sách các gói phần mềm đã có bản update:
# yum list updates

Thực hiện nâng cấp tất cả các gói phần mềm:
# yum update

Liệt kê các gói phần mềm với bộ lọc: (vd: samba)
# rpm -qa | grep samba*
# yum list installed samba


Kiểm tra xem một gói phần mềm cụ thể đã có bản update mới chưa:
# yum update package-name
 VD: # yum update samba

Tìm kiếm một gói phần mềm lọc theo tên:
# yum list package-name
# yum list regex


VD: samba, có thể dùng dấu * để thay thế cho các kí tự chưa xác định
# yum list samba
# yum list java*


Cài đặt gói phần mềm cụ thể:
# yum package-name-1 package-name-2
# yum install samba vnc-viewer


Gỡ bỏ gói phần mềm cụ thể:
# yum remove package-name-1 package-name-2
# yum remove samba  vnc-viewer


Hiển thị danh sách các gói đang kích hoạt:
# yum list all

Hiển thị các gói phần mềm theo nhóm:
# yum grouplist

Cài đặt tất cả các gói phần mềm có trong nhóm:
# yum groupinstall “Development Tools”

Update tất cả các gói phần mềm có trong nhóm:
# yum groupupdate “Development Tools”

Gỡ bỏ tất cả các gói phần mềm có trong nhóm:
# yum groupremove “Development Tools”

Hiển thị các gói phần mềm ko thể cài đặt:
# yum list extras

Hiển thị thông tin về gói phần mềm của một file cụ thể:
# yum whatprovides /etc/passwd

Xem trợ giúp thêm về lệnh Yum:
# man yum

Cài đặt các phần mềm mới nhất thông qua lệnh YUM

Yum là công cụ cài đặt thông dụng trong CentOS. Ưu điểm nổi bật của Yum là tính tự động cao.
Việc cài đặt thông qua công cụ quản lý gói (YUM) rất dễ sử dụng. Tuy nhiên, tùy theo nguồn nên các phần mềm cài đặt dùng lệnh yum thường không phải là phiên bản mới nhất. Nếu các bạn muốn có các phần mềm mới nhất, mà không cần download source code rồi biên dịch thì có thể làm theo hướng dẫn sau để cập nhật thêm các nguồn tài nguyên cho lệnh yum.
 
Bước 1:

Mở file  /etc/yum.repos.d/CentOS-Base.repo và chèn đoạn text sau vào cuối dòng:
 
[utterramblings]
    name=Jason’s Utter Ramblings Repo
baseurl=http://www.jasonlitka.com/media/EL$releasever/$basearch/
enabled=1
gpgcheck=1
gpgkey=http://www.jasonlitka.com/media/RPM-GPG-KEY-jlitka[dag]
name=Dag RPM Repository for Red Hat Enterprise Linux
baseurl=http://apt.sw.be/redhat/el$releasever/en/$basearch/dag
gpgcheck=1
enabled=1
Lưu lại.

Bước 2: 

Nhập khóa GPG để xác thực

# rpm –import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt
# rpm –import http://www.jasonlitka.com/media/RPM-GPG-KEY-jlitka
 
Thực hiện nâng cấp tất cả các gói phần mềm:
#  yum update
 
Thế là xong! từ nay các bạn sẽ có các phần mềm mới nhất khi cài đặt từ lệnh yum.

Nguồn : http://www.gocit.vn/bai-viet/mot-so-lenh-co-ban-su-dung-yum/

Các câu lệnh dành cho network trên linux .



thống kê mạng

 curl và wget

Sử dụng lệnh curl hoặc wget để tải một file từ internet mà không cần đầu cuối. Với lệnh curl, gõ curl-O đường dẫn tới file. Người sử dụng có thể sử dụng lệnh wget mà không cần thêm tùy chọn nào. File sẽ xuất hiện ở đường dẫn.
  • Curl-O website.com/file
  • Wget website.com/file
Curl

ping

Lệnh ping gửi các gói ECHO_REQUEST tới địa chỉ chỉ định. Câu lệnh nhằm kiểm tra máy tính có thể kết nối với Internet hay một địa chỉ IP cụ thể nào đó hay không. Tuy nhiên có rất nhiều hệ thống được cấu hình để không hồi đáp với các lệnh ping.
Không giống lệnh ping trên Windows, câu lệnh ping trên Linux sẽ duy trì gửi các gói tin cho đến khi bạn kết thúc nó. Có thể định số lượng gói tối đa gửi đi bằng cách gõ thêm tùy chọn –c.
  • ping –c 4 google.com
Ping

Tracepath và traceroute

Lệnh tracepath cũng tương tự như traceroute nhưng nó không đòi hỏi các quyền quản trị. Nó cũng được cài đặt mặc định trên  còn tracerout thì không. Lệnh tracepath lần dấu đường đi trên mạng tới một đích chỉ định và báo cáo về mỗi nút mạng (hop) dọc trên đường đi. Nếu gặp phải các vấn đề về mạng, lệnh tracepath có thể chỉ ra vị trí lỗi mạng.
  • Tracepath example.com
tracepath

mtr

Lệnh mtr là sự kết hợp ping và tracepath trong một câu lệnh đơn lẻ. mtr sẽ gửi liên tục các gói và hiển thị thời gian ping cho mỗi nút mạng. Câu lệnh cũng giúp phát hiện một số vấn đề mạng. Trong trường hợp này, có thể thấy nút thứ 6 làm mất hơn 20% tổng số gói.
  • mtr howtogeek.com
trace route

Nhấn q hoặc Ctrl-C để thoát khi bạn thực hiện xong.

host

Lệnh host sẽ thực hiện tìm kiếm DNS. Nhập vào tên miền khi muốn xem địa chỉ IP đi kèm và ngược lại, nhập vào địa chỉ IP khi muốn xem tên miền đi kèm.
  • Host howtogeek.com
  • Host 208.43.115.82
Host

whois

Lệnh whois sẽ đưa ra các bản ghi trên server whois (whois record) của website, vì vậy bạn có thể xem thông tin về người hay tổ chức đã đăng ký và sở hữu website đó.
  • whois example.com
bản ghi từ whois server

ifplugstatus

Lệnh ifplugstatus giúp kiểm tra dây cáp có được cắm vào giao diện mạng hay không. Câu lệnh này không được cài đặt mặc định trên Ubuntu. Sử dụng câu lệnh sau để cài đặt nó
Chạy các câu lệnh sau để xem trạng thái tất cả các giao diện hay chỉ xem trạng thái một giao diện cụ thể.
  • ifplugstatus
  • ifplugstatus eth0
ifplugstatus

“link beat detected” nghĩa là dây cáp đã được cắm và “unplugged” tức dây cáp chưa được cắm.

ifconfig

Câu lênh ifconfig có rất nhiều tùy chọn để cấu hình, điều chỉnh và dò lỗi trên các giao diện mạng hệ thống. Đây cũng là cách để xem nhanh các địa chỉ IP và các thông tin khác của giao diện mạng. Gõ ifconfig để xem trạng thái các giao diện mạng hiện đang hoạt động bao gồm tên của chúng. Bạn cũng có thể chỉ định tên một giao diện để xem thông tin trên duy nhất giao diện đó.
  • ifconfig
  • ifconfig eth0
ifconfig

ifdown và ifup

Câu lệnh ifdown và ifup giống như ifconfig up hay ifconfig down. Hai câu lệnh thực hiện bật hoặc tắt giao diện chỉ định. Điều này yêu cầu quyền quản trị nên bạn phải dùng thêm từ khóa sudo trên Ubuntu.
  • sudo ifdown eth0
  • sudo ifup eth0
ifdown cho ubuntu

Màn hình Linux sẽ báo lỗi khi được nhập những câu lệnh này. Nó thường sử dụng bộ NetworkManager cho phép quản lý giao diện mạng. Mặc dù vậy, các câu lệnh này vẫn sẽ hoạt động trên các server mà không cần dùng NetworkManager.
Nếu bạn thực sự cần cấu hình NetworkManager từ giao diện dòng lệnh, sử dụng câu lệnh nmcli.

dhclient

Lệnh dhclient giúp làm mới địa chỉ IP trên máy bằng cách giải phóng địa chỉ IP cũ và nhận một địa chỉ mới từ DHCP server. Công việc này yêu cầu quyền quản trị, vì vậy phải dùng thêm từ khóa sudo trên Ubuntu. Chạydhclient để nhận địa chỉ IP mới hoặc sử dụng tùy chọn –r để giải phóng địa chỉ IP hiện tại.
  • sudo dhclient –r
  • sudo dhclient
dhclient

netstat

Câu lệnh netstat đưa ra các thống kê khác nhau cho giao diện, bao gồm các socket mở và các bảng định tuyến.

bảng thống kê trạng thái

Sử dụng câu lệnh netstat –p để xem các chương trình đi kèm với các socket mở.

netstat

Xem các thống kê chi tiết cho tất cả các cổng bằng câu lệnh netstat –s.

netstat -s

Trên đây là các câu lệnh thông dụng để thao tác với mạng mà Linux hỗ trợ người sử dụng. Thông qua các câu lệnh này, người sử dụng có thể dễ dàng kiểm tra tìm sự cố hay các thông tin liên quan đến mạng.

Nguồn : http://www.gocit.vn/bai-viet/cac-cau-lenh-danh-cho-network-tren-linux/