L i ng i d ch: ườ
Đây là b n d ch c a tài li u "How To Become A Hacker" c a Eric Steven Raymond. B n g c
http://catb.org/~esr/faqs/hacker-howto.html.
Tôi d ch tài li u này v i hy v ng ph n nào cung c p thông tin nh m m c đích gi i to m t s
ng nh n v cái g i là 'hacking'.
Cá nhân tôi cho r ng Eric Raymond có m t cái nhìn c c đoan th hi n qua nh ng đi u anh ta
đ nh nghĩa và phân tích trong tài li u này. Có nhi u đi m anh ta c tình (hay vô ý), càng v
sau, càng đ a tính ch t hacking h ng v vi c đóng góp và phát tri n c ng đ ng m ngu nư ướ
và đây là m t cái nhìn (theo tôi là) thiên v . Tuy v y, tài li u này c a Eric Raymond đã đ a ra ư
nh ng đi m giá tr v cái g i là "thái đ " và kh năng t duy m t hacker. Nh ng đi m bàn v ư
"phong cách" và thói quen c a hackers là nh ng đi m lý thú.
Theo tôi, hacker và hacking không có biên gi i rõ ràng v h đi u hành, v software, v môi
tr ng.... Hacking là vi c thay đ i tính ch t và kh năng làm vi c c a m t s th và "s th "ườ
này không có gi i h n Microsoft, Linux, BSD, Solaris.... Hacking cũng không nh t thi t ph i ế
là nh ng đóng góp cho c ng đ ng mã ngu n m . B t c n i đâu, hacking đ gi i quy t tr ơ ế
ng i, đ c i thi n công vi c, đ nâng cao ch t l ng.... đ u là hacking. R t mong b n đ c ượ
v i cái nhìn t nh táo.
T i sao có tài li u này?
Là ch biên c a m c http://www.ctb.org/jargon và m t s tài li u n i ti ng có tính ch t t ng ế ươ
t , tôi th ng nh n r t nhi u e-mail t các newbies h i cách "làm sao tôi có th h c đ tr ườ
thành cao th hacker -1-?" Quay v năm 1996, tôi th y ch ng có FAQ -2- ho c tài li u trên
web gi i đáp câu h i tuy t đ i c n thi t đó, b i th tôi b t đ u v i tài này. Ngày nay, r t ế ế
nhi u hackers cho r ng tài li u này là m t kim ch nam -3-.
N u b n đang đ c m t b n l u nào đó c a tài li u này, phiên b n hi n l u có :ế ư ư
http://catb.org/~esr/faqs/hacker-howto.html
Có khá nhi u b n d ch c a tài li u này cho các th ti ng: R p, Bulgary, Catalan, ti ng Hoa ế ế
(gi n th ), Đan M ch, Hoà Lan, Farsi (ti ng Iran), Ph n Lan, Đ c, ti ng Do Thái thu c nhánh ế ế
Hy L p, Ý, Nh t, Na Uy, Ba Lan, B Đào Nha, Romania, Nga, Tây Ban Nha, Th Nhĩ Kỳ và
Th y Đi n. Xin l u ý vì b n chính th nh tho ng có thay đ i nên các tài li u d ch có th b l i ư
th i m c nào đó.
Năm ch m trong chín hình vuông đ c dùng đ trang trí trên tài li u này đ c g i là ượ ượ glider.
Nó là m t m u đ n gi n có các giá tr đáng ng c nhiên c a m t quy trình simulation toán h c ơ
đ c g i làượ
http://dmoz.org/Computers/Artificial_Life/Cellular_Automata/Conway's_Game_of_Life/ đã làm
nhi u hackers kinh ng c nhi u năm qua. Tôi nghĩ nó có th dùng đ làm m t bi u t ng tuy t ượ
v i cho nh ng đi u hackers a thích - tính tr u t ng ư ượ -4-, tho t tiên có v mang m t chút bí
n, nh ng đó là c ng vào m t th gi i đ y logic c a riêng nó. B n có th đ c thêm v bi u ư ế
t ng glider http://www.catb.org/~esr/hacker-emblem/. ượ
Hacker là gì?
Trên m c http://www.catb.org/jargon có ch a m t m đ nh nghĩa cho t 'hacker', h u h t liên ế
quan đ n kh năng k thu t và cái s ng sau khi gi i quy t nh ng tr ng i và v t qua cácế ướ ế ượ
gi i h n. N u b n mu n bi t cách ế ế tr thành m t hacker, ch có hai đ nh nghĩa là xác h p.
Có m t c ng đ ng, m t n i có th văn hoá chia x c a các chuyên viên l p trình và các cao ơ
th m ng t nhi u th p k tr c, t th i các ti u vi tính ướ -5- l n đ u đ c tung ra và t th i ượ
ARPAnet còn hoang s . Các thành viên c a c ng đ ng này t o ra t 'hacker'. Hackers xâyơ
d ng nên Internet. Hackers t o ra h đi u hành UNIX ngày nay. Hackers đi u qu n Usenet.
Hackers làm cho World Wide Web ho t đ ng. N u b n là m t ph n c a c ng đ ng này, n u ế ế
b n đã đóng góp cho nó và nh ng ng i trong c ng đ ng này bi t đ n b n, g i b n là 'hacker' ườ ế ế
thì b n chính là hacker.
T duy c a m t hacker không gi i h n trong khuôn kh văn hoá 'software-hacker'. Nh ngư
ng i này đã áp d ng ườ thái đ c a hacker vào nh ng vi c khác ví d nh trong đi n t ho c ư
trong âm nh c - th t s ra, b n có th th y đi u này đ ng c p cao nh t c a lãnh v c khoa
h c hay ngh thu t. Dân Software hackers nh n ra đ c m i liên h đ ng c m nh ng lĩnh ượ
v c khác và có th g i h (nh ng ng i nh ng lĩnh v c khác) là 'hackers' - vài ng i cho ườ ườ
r ng b n s c t nhiên c a hacker th t s đ c l p v i th tr ng mà hackers làm vi c và ti p ế
c n -6-. Ph n còn l i c a tài li u này chúng ta s t p trung vào kh năng và thái đ c a
software hackers và các truy n th ng c a n n văn hoá chia x đã t o ra t 'hacker'.
Có m t nhóm ng i khác luôn t cho h là hackers m t cách m ĩ nh ng th t s h không ườ ư
ph i là hackers. Nh ng ng i này (ph n l n là các c u tu i đang l n) là nh ng ng i "ghi ườ ườ
bàn" đ c m t vài cú thâm nh p vào máy tính và l a l c h th ng đi n tho i. Nh ng hackersượ
th c th g i lo i ng i này là 'crackers' và h (hackers) ch ng mu n dính dáng gì đ n đám ườ ế
ng i này. Hackers th c th h u h t cho r ng đám 'crackers' l i nhác, vô trách nhi m vàườ ế ườ
không thông minh cho l m. Vi c có th b gãy c ch b o m t ch ng bi n anh thành m t ơ ế ế
hacker; cái này ch ng khác gì kh năng 'đ ' xe (không c n chìa) -7- bi n anh thành m t k sế ư
xe máy. Không may, quá nhi u phóng viên và cây vi t đã b ngu hoá v i vi c dùng t 'hacker' ế
đ mô t crackers; đi u này làm cho các hackers th thi t c c kỳ khó ch u.
Đi m khác bi t căn b n là: hackers xây d ng, crackers đánh đ .
N u b n mu n tr thành hacker, ti p t c đ c. N u b n mu n tr thành cracker, hãy đ n v iế ế ế ế
news:atl.2600 newsgroup và s n sàng lao vào đ tìm th y r ng b n không khôn ngoan nh ư
b n t ng. Và đó là b y nhiêu đi u tôi mu n nói v crackers. ưở
Thái đ c a Hacker
Hackers gi i quy t tr ng i và xây d ng v t th , và h tin t ng t do và t nguy n chia ế ưở
x , giúp đ l n nhau. Đ đ c ti p nh n nh m t hacker, b n ph i t tr ng nh th chính ượ ế ư ư
b n có thái đ này. Và đ t tr ng nh th b n có thái đ y, b n ph i th t s tin vào thái đ ư
y -8-.
Nh ng n u b n nghĩ r ng ch c n b i đ p thái đ đ đ c ti p nh n vào xã h i này thì b nư ế ượ ế
đã ng nh n. Tr thành m t ng i tin t ng vào nh ng đi u này là đi u quan tr ng cho ườ ưở b n -
b i l , t vi c giúp đ , chính b n s h c h i và duy trì đ ng l c cho chính b n. Cũng nh v i ư
các lĩnh v c ngh thu t, cách h u hi u nhât đ tr thành b c th y là b t đ u v i t duy c a ư
b c th y - không ch khía c nh trí th c mà còn khía c nh tinh th n.
Ho c, nh m t đo n th Thi n nh sau: ư ơ ư
Theo l i d n:
ng ng nhìn th y,
đi theo th y,
đi cùng th y,
nhìn th u th y,
tr thành th y.
Th , n u b n mu n tr thành hacker, l p đi, l p l i các đi u sau cho đ n khi b n tin vàoế ế ế
chúng:
1. Th gi i đ y nh ng tr ng i kỳ l đang ch đ c gi i quy t.ế ượ ế
Làm m t hacker có nhi u đi u vui, nh ng nh ng đi u vui này đòi h i r t nhi u c g ng. C ư
g ng t o đ ng l c. Các v n đ ng viên tìm th y đ ng l c t nh ng đi m thú v trong vi c
khi n cho c th c a h ho t đ ng, trong vi c t đ y h v t qua chính gi i h n th l cế ơ ượ
hi n có. T ng t , đ làm m t hacker b n c n b t l y nh ng ni m thích thú nho nh t vi c ươ
gi i quy t đ c nh ng tr ng i, tinh luy n kh năng và th c t p trí thông minh c a mình. ế ượ
N u b n không ph i là d ng ng i có c m nh n nh ng chuy n này m t cách t nhiên, b nế ườ
s c n bi n mình thành m t ng i nh th thì m i có th tr thành hacker. N u không, b n ế ườ ư ế ế
s th y năng l ng hacking c a mình b nh ng th d làm chi ph i nh tình ái, ti n b c và ượ ư
danh ti ng.... c n xé t i b i. ế ơ
(B n cũng c n phát tri n m t th ni m tin v i kh năng h c h i c a chính mình - m t ni m
tin, ngay c có th b n không bi t m i đi u c n thi t đ gi i quy t tr ng i, n u b n ch ế ế ế ế
c n lao vào đ gi i quy t m t m nh tr ng i r i h c h i t đi m y, b n s h c đ đ gi i ế
quy t m nh k ti p - và nh th , cho đ n khi b n hoàn t t.) ế ế ế ư ế ế
2. Không có tr ng i nào nên đ c gi i quy t hai l n ượ ế
Nh ng kh i óc sáng t o là nh ng th quý báu, có gi i h n. Chúng không nên b phí ph m
trong vi c tái t o nh ng th đã có s n -9- trong lúc có quá nhi u tr ng i l kỳ đang đ i đ c ượ
gi i quy t ngoài kia. ế
Đ có thái đ nh m t hacker, b n c n tin r ng th i gian suy g m c a các hackers khác là ư
nh ng th quý giá - quý giá đ n n i, đ i v i b n nó tr thành trách nhi m đ o đ c đ ph i ế
chia x thông tin, gi i quy t tr ng i và sau đó chia x gi i pháp đ giúp nh ng hackers khác ế
có th gi i quy t nh ng tr ng i ế m i thay vì h ph i th ng xuyên tái xét nh ng tr ng i đã ườ
đ c (ai đó) gi i quy t. ượ ế
Tuy v y, nên nh là câu "không có tr ng i nào nên đ c gi i quy t hai l n" không n d ượ ế
r ng m i gi i pháp hi n có đ u quý giá, ho c ch m t gi i pháp đúng đ n cho m t tr
ng i. Thông th ng, chúng ta nghiên c u m t tr ng i nào đó ch a t ng đ i di n tr c đây ườ ư ướ
b ng cách hình thành m t gi i pháp t c th i. Đi u này không có gì sai và th ng là c n thi t ườ ế
đ giúp quy t đ nh m t cách t t h n. Đi u không hay n m ch tr ng i thu c gi i h n k ế ơ
thu t trá hình, pháp lu t ho c các hàng rào c n t p đoàn (nh mã ngu n đóng) làm ngăn c n ư
gi i pháp t t đ c tái d ng và ượ bu c m i ng i ph i tái t o l i nh ng th đã có s n. ườ
(B n không c n ph i tin r ng b n b bu c ph i chia x m i s n ph m sáng t o c a b n, d u
r ng nh ng hackers làm vi c này là nh ng ng i đ c n tr ng nh t trong đám hackers. Vi c ườ ượ
duy trì thu nh p cho th c ăn, ti n tr , chi phí cho máy tính là chuy n c n thi t. B n dùng kh ế
năng hack c a mình đ h tr gia đình ho c ngay c làm giàu, đ u t t c , mi n sao b n đ ng
quên s g n bó c a b n đ i v i cái đ p b n t o ra và đ i v i nh ng b n hackers đ ng hành
cũng đang làm nh th ). ư ế
3. Chán n n và đ n đi u là ám ch ng ơ ướ
Hackers (và nh ng ng i sáng t o nói chung) không nên b c m th y chán n n ho c đ n đi u ườ ơ
trong khi làm nh ng vi c mang tính l p đi, l p l i m t cách ngu xu n, b i vì khi c m giác này
x y ra có nghĩa h không làm nh ng đi u h đáng làm - gi i quy t tr ng i. S lãng phí này ế
làm h ng m i ng i. B i th , chán n n và đ n đi u không ch không thú v mà còn là ám ườ ế ơ
ch ng. ướ
Đ có thái đ nh m t hacker, b n c n tin vào đi u này, đ đ t đ ng hoá nh ng công vi c ư
nhàm chán càng nhi u càng t t, không ch cho riêng b n mà cho m i ng i (đ c bi t cho ườ
nh ng hackers khác).
(Có m t ngo i l hi n nhiên cho đi u (s 3) này. Hackers đôi khi làm nh ng chuy n có v
nh l p đi l p l i ho c chán phèo đ đóng vai nh m t quan sát viên cho công vi c "t y não"ư ư
ho c đ thu th p ki n th c ho c kinh nghi m nào đó không th có đ c n u không làm nh ế ượ ế ư
th . Nh ng vi c này tùy ng i - ch ng có ai nên b đ y vào v th chán ch ng.) ế ư ườ ế ườ
4. T do là đi u t t
Hackers có b n tính t nhiên là nh ng ng i ch ng c a quy n. B t c ai có th ra l nh cho ườ
b n đ u có th ngăn b n làm công vi c gi i quy t tr ng i mà b n đam mê - và, b não c a ế
nh ng k có quy n l c th ng n y ra nh ng lý do ngu xu n và bu n nôn đ ngăn tr b n. ườ
Th nên, thái đ c a k c a quy n c n đ c công kích b t c n i nào b n th y có, hãy làmế ượ ơ
cho nó tan bi n kh i b n và nh ng hackers khác. ế
(Đây không ph i t ng t nh ch ng đ i lu t pháp. Tr con c n đ c u n n n và t i ph m ươ ư ượ
c n đ c ki m ch . M t hacker có th đ ng ý m t th d ng lu t pháp đ đ i l y cái gì đó ượ ế
anh ta mu n thay vì thúc th tuân l nh. Nh ng đây là chuy n có gi i h n, m c c t nh táo; ư
m t d ng ch p nh n trao đ i bán chính th c gi a k có quy n l c và b n.)
Nh ng k có quy n l c thích b i đ p kh năng ngăn c n và tính bí m t. Và th , h không tin ế
vào thái đ t nguy n h p tác và t nguy n chia x thông tin - h ch mu n 'h p tác' theo
ki u h kh ng ch . B i th , đ có thái đ nh m t hacker, b n c n phát tri n ph n x ch ng ế ế ư
tr v i thái đ ngăn c n, thái đ bí hi m b ng vũ l c ho c ép bu c. B n c n có ý chí đ làm
chuy n này.
5. Thái đ không thay th th c ch t kh năng ế
Đ làm m t hacker, b n c n b i đ p m t s thái đ nh th . Nh ng ch thái đ s không ư ế ư
đ bi n b n tr thành m t hacker ho c m t v n đ ng viên vô đ ch ho c m t ngôi sao nh c ế
rock. Tr thành m t hacker c n ki n th c, th c hành, b n b chăm ch . ế
B i th , b n c n hoài nghi 'dáng đi u' và th t s tôn tr ng th c ch t kh năng. Hackers không ế
đ cho nh ng k làm dáng lãng phí th i gian c a h , ng c l i (hackers) th ng tôn th th c ượ ườ
ch t kh năng - đ c bi t là th c ch t kh năng hacking và th c ch t kh năng làm b t c
vi c gì có giá tr . Th c ch t kh năng cho nh ng nhu c u ích l i (mà không hi m ng i đ t ế ườ
đ c) là đi u r t t t, và th c ch t kh năng cho nh ng nhu c u đòi h i s linh m n c a tríượ
tu , khéo léo và đ t p trung là t t nh t.
N u b n đã có s n th c ch t kh năng, b n s phát tri n nó m t cách thích thú - chăm ch ế
chuyên c n s t o nên tr ng thái căng th ng và s không có ch cho s u o i. Thái đ này là
đi m t i quan tr ng đ tr thành m t hacker.
K năng hacking căn b n
Thái đ c n thi t c a hacker là đi m quan tr ng nh ng k năng l i càng quan tr ng h n. Thái ế ư ơ
đ không th thay th cho kh ng th t s , và m t s ngh " ế -10- căn b n mà b n ph i
có tr c khi m t hacker nào khác g i b n là hacker. ướ
ngh " này thay đ i d n d n theo th i gian khi công ngh hình thành nh ng cái m i và
làm cho cái cũ tr nên vô d ng. Ví d , tr c đây th ng bao g m vi c l p trình b ng ngôn ướ ườ
ng c a máy -11- và g n đây, vi c dùng HTML ch ng h n không còn đòi h i này n a. Ngay
lúc này 'đ ngh ' g m có nh ng th khá rõ ràng nh sau: ư
1. H c l p trình
Hi n nhiên đây là đi m n n móng cho k năng hacking. N u b n không bi t m t ngôn ng ế ế
l p trình nào, tôi đ ngh b n b t đ u v i Python. Ngôn ng này đ c thi t k g n, s ch, tài ượ ế ế
li u đ y đ và khá nh nhàng cho nh ng ng i b t đ u. M c dù thích h p cho ngôn ng đ u ườ
tiên, nó không ph i là đ ch i; nó r t m nh m , linh đ ng và có th thích h p cho các công ơ
trình l n. Tôi đã vi t m t bài chi ti t http://www.linuxjournal.com/article.php?sid=3882 (đánh ế ế