¹¹½¨Çå¾²µÄLinuxЧÀÍÆ÷ÇéÐΣº×î¼Ñʵ¼ùºÍ¼¼ÇÉ
¹¹½¨Çå¾²µÄLinuxЧÀÍÆ÷ÇéÐΣº×î¼Ñʵ¼ùºÍ¼¼ÇÉ
ÕªÒª£ºÔÚÊý×Ö»¯Ê±´ú£¬LinuxЧÀÍÆ÷ÊÇÆóÒµµÄÒªº¦×ʲú¡£ÎªÁËÈ·±£Ð§ÀÍÆ÷µÄÇå¾²ÐÔ£¬±¾ÎÄÏÈÈÝÁ˹¹½¨Çå¾²µÄLinuxЧÀÍÆ÷ÇéÐεÄ×î¼Ñʵ¼ùºÍ¼¼ÇÉ¡£ÕâЩʵ¼ùºÍ¼¼ÇÉ°üÀ¨Ê¹ÓÃÇ¿ÃÜÂë¡¢°´ÆÚ¸üÐÂÈí¼þ¡¢ÏÞÖÆÔ¶³Ì»á¼û¡¢ÉèÖ÷À»ðǽ¡¢Ê¹ÓÃÇå¾²ÐÒ顢ʵÑéȨÏÞÖÎÀíºÍ¼ÓÃÜÊý¾Ý´«ÊäµÈ¡£±ðµÄ£¬ÎÒÃÇ»¹ÌṩÁËһЩ´úÂëʾÀýÀ´×ÊÖú¶ÁÕ߸üºÃµØÃ÷ȷʵ¼ùºÍ¼¼ÇɵÄÏÖʵӦÓá£
Òªº¦´Ê£ºLinuxЧÀÍÆ÷¡¢Çå¾²ÐÔ¡¢×î¼Ñʵ¼ù¡¢¼¼ÇÉ¡¢ÃÜÂë¡¢Èí¼þ¸üС¢Ô¶³Ì»á¼û¡¢·À»ðǽ¡¢Çå¾²ÐÒ顢ȨÏÞÖÎÀí¡¢Êý¾Ý¼ÓÃÜ
СÐò£º
Ëæ×Å»¥ÁªÍøµÄѸÃÍÉú³¤£¬LinuxЧÀÍÆ÷³ÉΪÁËÆóÒµºÍСÎÒ˽ÈË´æ´¢Ö÷ÒªÊý¾ÝµÄÊ×Ñ¡¡£È»¶ø£¬Ð§ÀÍÆ÷µÄÇå¾²ÐÔÊǽûÖ¹ºöÊÓµÄÎÊÌâ¡£Ò»¸ö±»ÈëÇÖ»òÔâÊܹ¥»÷µÄЧÀÍÆ÷¿ÉÄܻᵼÖÂÊý¾Ýй¶¡¢Ð§ÀÍÖÐÖ¹ÉõÖÁÓªÒµÍ߽⡣Òò´Ë£¬¹¹½¨Çå¾²µÄLinuxЧÀÍÆ÷ÇéÐÎÊÇÖÁ¹ØÖ÷ÒªµÄ¡£±¾ÎĽ«ÏÈÈÝһЩ×î¼Ñʵ¼ùºÍ¼¼ÇÉ£¬×ÊÖú¶ÁÕß±£»¤×Ô¼ºµÄLinuxЧÀÍÆ÷¡£
Ò»¡¢Ê¹ÓÃÇ¿ÃÜÂë
Ç¿ÃÜÂëÊDZ£»¤Ð§ÀÍÆ÷µÄµÚÒ»µÀ·ÀµØ¡£Ê¹ÓðüÀ¨¾Þϸд×Öĸ¡¢Êý×ÖºÍÌØÊâ×Ö·ûµÄÖØ´óÃÜÂë¿ÉÒÔ´ó´óÔöÌíÆƽâÃÜÂëµÄÄѶȡ£Í¬Ê±£¬×èֹʹÓÃÈõÃÜÂë»òĬÈÏÃÜÂ룬ÀýÈç¡°123456¡±¡¢¡°admin¡±µÈ£¬ÕâЩÃÜÂëÈÝÒ×±»Æƽ⡣ÔÚLinuxϵͳÖУ¬¿ÉÒÔʹÓÃpasswdÏÂÁîÀ´ÐÞ¸ÄÃÜÂ룬ʾÀý´úÂëÈçÏ£º
$ passwd Changing password for user username. New password: Retype new password:
µÇ¼ºó¸´ÖÆ
¶þ¡¢°´ÆÚ¸üÐÂÈí¼þ
ʵʱ¸üÐÂÒÑ×°ÖõÄÈí¼þÊǼá³ÖЧÀÍÆ÷Çå¾²µÄÒªº¦¡£Ê±³£Ðû²¼µÄÈí¼þ¸üв¹¶¡Í¨³£°üÀ¨ÁËÐÞ¸´ÒÑÖªÎó²îµÄÖ÷ÒªÐÅÏ¢¡£Í¨¹ý°´ÆÚ¸üÐÂÈí¼þ£¬¿ÉÒÔ×èֹʹÓÃÒÑÖªÎó²îµÄ¹¥»÷¡£ÔÚDebian/UbuntuϵͳÖУ¬¿ÉÒÔʹÓÃÒÔÏÂÏÂÁîÀ´¸üÐÂÈí¼þ°ü£º
$ sudo apt update # ¸üÐÂÈí¼þ°üÁбí $ sudo apt upgrade # Éý¼¶¿ÉÓõÄÈí¼þ°ü
µÇ¼ºó¸´ÖÆ
Èý¡¢ÏÞÖÆÔ¶³Ì»á¼û
Ô¶³Ì»á¼ûЧÀÍÊÇЧÀÍÆ÷±»¹¥»÷µÄÖ÷ÒªÃÅ»§¡£ÏÞÖÆÔ¶³Ì»á¼û¿ÉÒÔïÔÌDZÔÚµÄΣº¦¡£¿ÉÒÔÉèÖ÷À»ðǽ£¬Ö»ÔÊÐíÌض¨IPµØµã»òµØµã¶Î»á¼ûЧÀÍÆ÷¡£ÁíÍ⣬½¨Òé½ûÓÃSSHµÄrootµÇ¼£¬¶øÊǽ¨ÉèÒ»¸öͨË×Óû§¾ÙÐÐÔ¶³ÌµÇ¼¡£ÒÔÏÂÊÇÐÞ¸ÄSSHÉèÖÃÎļþµÄʾÀý´úÂ룺
$ sudo nano /etc/ssh/sshd_config
µÇ¼ºó¸´ÖÆ
ÕÒµ½ÒÔÏÂÐУº
#PermitRootLogin yes
µÇ¼ºó¸´ÖÆ
¸ÄΪ£º
PermitRootLogin no
µÇ¼ºó¸´ÖÆ
×îºó£¬ÖØÆôSSHЧÀÍ£º
$ sudo systemctl restart ssh
µÇ¼ºó¸´ÖÆ
ËÄ¡¢ÉèÖ÷À»ðǽ
·À»ðǽ¿ÉÒÔ¹ýÂËÍøÂçÁ÷Á¿£¬×èֹDZÔڵĹ¥»÷¡£Í¨¹ýÏÞÖƽøÈëºÍÍÑÀëЧÀÍÆ÷µÄÁ÷Á¿£¬·À»ðǽ¿ÉÒÔ×ÊÖú±£»¤Ð§ÀÍÆ÷¡£ÔÚLinuxϵͳÖУ¬iptablesÊÇÒ»¸öÇ¿Ê¢µÄ·À»ðǽ¹¤¾ß¡£ÒÔÏÂÊÇʹÓÃiptablesÉèÖ÷À»ðǽµÄʾÀý´úÂ룺
$ sudo iptables -A INPUT -i eth0 -p tcp --dport 80 -j ACCEPT # ÔÊÐíHTTPÁ÷Á¿ $ sudo iptables -A INPUT -i eth0 -p tcp --dport 22 -j ACCEPT # ÔÊÐíSSHÁ÷Á¿ $ sudo iptables -A INPUT -j DROP # ×èÖ¹ÆäËûËùÓÐÁ÷Á¿ $ sudo iptables-save > /etc/iptables/rules.v4 # ÓÀÊÀÉúÑÄ·À»ðǽ¹æÔò
µÇ¼ºó¸´ÖÆ
Î塢ʹÓÃÇå¾²ÐÒé
ÔÚÊý¾Ý´«ÊäÀú³ÌÖÐʹÓÃÇå¾²ÐÒé¿ÉÒÔ±ÜÃâÐÅÏ¢±»ÇÔÈ¡»ò¸Ä¶¯¡£ÎªÁËÈ·±£Êý¾ÝµÄÇå¾²ÐÔ£¬¿ÉÒÔʹÓÃHTTPSÐÒéÀ´¼ÓÃÜÍøÕ¾µÄ´«ÊäÊý¾Ý£¬Ê¹ÓÃSFTPÐÒéÀ´¼ÓÃÜÎļþ´«Êä¡£ÒÔÏÂÊÇʹÓÃLet’s EncryptÖ¤ÊéÉèÖÃApacheЧÀÍÆ÷µÄʾÀý´úÂ룺
$ sudo apt install certbot python3-certbot-apache # ×°ÖÃÖ¤Ê鹤¾ß $ sudo certbot --apache # ΪÓòÃûÉèÖÃÖ¤Êé
µÇ¼ºó¸´ÖÆ
Áù¡¢ÊµÑéȨÏÞÖÎÀí
ȨÏÞÖÎÀíÊDZ£»¤Ð§ÀÍÆ÷µÄÖ÷Òª²½·¥Ö®Ò»¡£Ö»ÎªÐëÒªµÄÓû§ÊÚÓè×ã¹»µÄȨÏÞ£¬²¢ÏÞÖÆ»á¼ûÃô¸ÐÎļþºÍĿ¼¡£ÔÚLinuxϵͳÖУ¬¿ÉÒÔʹÓÃchmodÏÂÁîÀ´¸ü¸ÄÎļþºÍĿ¼µÄȨÏÞ£¬Ê¾Àý´úÂëÈçÏ£º
$ chmod 600 file.txt # Ö»ÔÊÐíÎļþËùÓÐÕ߶Áд $ chmod 700 directory # Ö»ÔÊÐíÎļþËùÓÐÕ߶ÁдִÐÐ
µÇ¼ºó¸´ÖÆ
Æß¡¢¼ÓÃÜÊý¾Ý´«Êä
¼ÓÃÜÊý¾Ý´«Êä¿ÉÒÔÈ·±£Êý¾ÝÔÚ´«ÊäÀú³ÌÖеÄÇå¾²ÐÔ¡£¿ÉÒÔʹÓÃOpenSSL¹¤¾ßÀ´ÌìÉú×ÔÊðÃûÖ¤Ê飬²¢Ê¹ÓÃËüÀ´ÉèÖüÓÃܵÄFTP»òµç×ÓÓʼþЧÀÍÆ÷¡£ÒÔÏÂÊÇʹÓÃOpenSSLÌìÉú×ÔÊðÃûÖ¤ÊéµÄʾÀý´úÂ룺
$ openssl genpkey -algorithm RSA -out key.pem # ÌìÉú˽Կ $ openssl req -new -key key.pem -out csr.pem # ÌìÉúÖ¤ÊéÇëÇó $ openssl x509 -req -days 365 -in csr.pem -signkey key.pem -out cert.pem # Ç©·¢Ö¤Êé
µÇ¼ºó¸´ÖÆ
½áÂÛ£º
ͨ¹ýʹÓÃÇ¿ÃÜÂë¡¢°´ÆÚ¸üÐÂÈí¼þ¡¢ÏÞÖÆÔ¶³Ì»á¼û¡¢ÉèÖ÷À»ðǽ¡¢Ê¹ÓÃÇå¾²ÐÒ顢ʵÑéȨÏÞÖÎÀíºÍ¼ÓÃÜÊý¾Ý´«ÊäµÈ×î¼Ñʵ¼ùºÍ¼¼ÇÉ£¬ÎÒÃÇ¿ÉÒÔ¹¹½¨Ò»¸öÇå¾²µÄLinuxЧÀÍÆ÷ÇéÐΡ£¶ÁÕß¿ÉÒÔƾ֤×Ô¼ºµÄÏÖʵÐèÇóºÍЧÀÍÆ÷ÉèÖ㬽ÓÄÉÊʵ±µÄÇå¾²²½·¥¡£Ö»Óб£»¤ºÃЧÀÍÆ÷µÄÇå¾²£¬²Å»ªÈ·±£Êý¾ÝºÍЧÀ͵ÄÍêÕûÐÔºÍÉñÃØÐÔ¡£
ÒÔÉϾÍÊǹ¹½¨Çå¾²µÄLinuxЧÀÍÆ÷ÇéÐΣº×î¼Ñʵ¼ùºÍ¼¼ÇɵÄÏêϸÄÚÈÝ£¬¸ü¶àÇë¹Ø×¢±¾ÍøÄÚÆäËüÏà¹ØÎÄÕ£¡