µ±Ç°Î»Öà : 145zÓÎÏ·Õ¾¡¡|¡¡Ææ¼£MU¡¡|¡¡¼¼Êõ½Ì³Ì¡¡|¡¡

Ææ¼£MU½ø½×ʵս£º¸ß¿ÉÓÃÐÔ·þÎñÆ÷´î½¨Óë·ÀºÚÖ¸ÄÏ

Èȶȣº
Ò»¡¢ÎªÊ²Ã´ÐèÒª“¸ß¿ÉÓÃÐÔ”£¿

Íæ¼ÒÁ÷ʧÂʸߣ¿·þÎñÆ÷Ƶ·±±ÀÀ££¿±¾ÎĽ«½ÌÄã´òÔìÒ»¸ö24Сʱ²»å´»ú¡¢¿¹¹¥»÷¡¢Ò×À©Õ¹µÄÆæ¼£MU£¬ÊʺÏÒÑÕÆÎÕ»ù´¡¼ÜÉèµÄÍæ¼Ò½ø½×ѧϰ¡£

¶þ¡¢¸ß¿ÉÓÃÐÔ·þÎñÆ÷µÄºËÐÄÒªËØ
Ó²¼þÈßÓà

Ë«»úÈȱ¸£º×¼±¸Á½Ì¨·þÎñÆ÷£¬Ö÷·þÎñÆ÷¹ÊÕÏʱ×Ô¶¯Çл»±¸Óûú£¨ÐèʹÓÃKeepalived»òÔÆ·þÎñ¸ºÔؾùºâ£©¡£

·Ö²¼Ê½´æ´¢£º½«Êý¾Ý¿âºÍÓÎÏ·Êý¾Ýͬ²½µ½¶ą̀·þÎñÆ÷£¨ÍƼöʹÓÃrsync»òÔÆ´æ´¢£©¡£
ÍøÂçÓÅ»¯

BGP¶àÏß½ÓÈ룺ʹÓöàÔËÓªÉÌÏß·£¨µçÐÅ+ÍøÍ¨+ÒÆ¶¯£©£¬¼õÉÙÍæ¼ÒÑÓ³Ù¡£

CDN¼ÓËÙ£º¾²Ì¬×ÊÔ´£¨ÈçµØÍ¼Îļþ¡¢¿Í»§¶Ë£©Í¨¹ýCDN·Ö·¢£¬½µµÍ·þÎñÆ÷´ø¿íѹÁ¦¡£
°²È«·À»¤

DDoS·ÀÓù£º²¿ÊðCloudflare»ò°¢ÀïÔÆ¸ß·ÀIP£¬¹ýÂ˶ñÒâÁ÷Á¿¡£

Êý¾Ý¿â¼ÓÃÜ£º¶ÔMySQLÓû§ÃÜÂë½øÐÐSHA-256¼ÓÃÜ£¬·ÀÖ¹ÍϿ⹥»÷¡£

Èý¡¢ÊµÕ½£º´î½¨Ë«»úÈȱ¸·þÎñ¶Ë

²½Öè1£ºÅäÖÃÖ÷´Ó·þÎñÆ÷
Ö÷·þÎñÆ÷£¨IP: 192.168.1.100£©

°²×°MySQL²¢¿ªÆô¶þ½øÖÆÈÕÖ¾£¨ÐÞ¸Ämy.cnf£©£º

server-id=1
log-bin=mysql-bin

µ¼³ö³õʼÊý¾Ý¿â£ºmysqldump -u root -p mirdb > mirdb.sql
´Ó·þÎñÆ÷£¨IP: 192.168.1.101£©

ͬ²½Ö÷·þÎñÆ÷Êý¾Ý£º

mysql -u root -p mirdb < mirdb.sql

ÅäÖôӿâ¼àÌý£º

server-id=2
relay-log=mysql-relay-bin
read-only=1


²½Öè2£º×Ô¶¯¹ÊÕÏÇл»£¨Ê¹ÓÃKeepalived£©
ÔÚÁ½Ì¨·þÎñÆ÷°²×°Keepalived£º

apt-get install keepalived # Debian/Ubuntu
yum install keepalived # CentOS

±à¼­ÅäÖÃÎļþ/etc/keepalived/keepalived.conf£º

vrrp_instance VI_1 {
virtual_router_id 51
interface eth0
virtual_ipaddress {
192.168.1.1000/24 # ÐéÄâIP£¨VIP£©
priority 100 # Ö÷·þÎñÆ÷ÓÅÏȼ¶¸ü¸ß


Æô¶¯·þÎñ£ºsystemctl start keepalived

Ч¹û£ºµ±Ö÷·þÎñÆ÷å´»úʱ£¬VIP×Ô¶¯Æ¯ÒƵ½´Ó·þÎñÆ÷£¬Íæ¼ÒÎÞ¸ÐÖªÇл»¡£

ËÄ¡¢·ÀÓù³£¼û¹¥»÷ʵս
µÖÓùCC¹¥»÷£¨Ë¢¹Ö½Å±¾ÀÄÓã©

·½°¸£ºÏÞÖÆÍ¬Ò»IPµÄÇëÇóƵÂÊ

ʹÓÃiptablesÀ¹½Ø¸ßƵÁ¬½Ó£º

iptables -A INPUT -p tcp --dport 7100 -m connlimit --connlimit-above 50 -j DROP

ÔڵǼÆ÷´úÂëÖмÓÈëÑéÖ¤Â루ÈçGoogle reCAPTCHA£©¡£
·ÀÖ¹Êý¾Ý¿â±»±¬ÆÆ

·½°¸£ºÇ¿ÖƸ´ÔÓÃÜÂë + µÇ¼ʧ°ÜËø¶¨

ÐÞ¸ÄMySQLÅäÖÃmy.cnf£º

plugin-load-add = auth_socket.so
password_history = 6 # Ç¿ÖÆÃÜÂë°üº¬´óСд¡¢Êý×Ö¡¢·ûºÅ

ʹÓÃFail2ban×Ô¶¯·â½û¶à´ÎµÇ¼ʧ°ÜµÄIP£º

fail2ban-client set sshd banip 192.168.1.200


Îå¡¢ÐÔÄÜÓÅ»¯£º´Óµ¥»úµ½¼¯Èº
Êý¾Ý¿â¶Áд·ÖÀë

¹¤¾ß£ºMySQL Proxy»òProxySQL

ÅäÖÃʾÀý£º

-- ½«¶Á²Ù×÷·ÖÁ÷µ½´Ó¿â
SELECT * FROM player_data --> ´Ó¿âIP:3306
UPDATE player_data SET hp=100 --> Ö÷¿âIP:3306

ÓÎÏ··þÎñ¶Ë¸ºÔؾùºâ

¹¤¾ß£ºNginx·´Ïò´úÀí£¨TCP²ãת·¢£©

stream {
upstream mir_servers {
server 192.168.1.100:7100;
server 192.168.1.101:7100;
server {

listen 7100;
proxy_pass mir_servers;
}



Áù¡¢·¨ÂÉÓëÔËά·çÏÕÌáʾ
Êý¾Ý±¸·ÝÇ¿ÖÆÒªÇó

ÿÈÕÈ«Á¿±¸·Ý + ÿСʱÔöÁ¿±¸·Ý£¨Ê¹ÓÃcron¶¨Ê±ÈÎÎñ£©£º

mysqldump -u root -p mirdb | gzip > /backup/mirdb_$(date +%F).sql.gz

Ó¦¼±Ô¤°¸

×¼±¸±¸ÓÃÓòÃûºÍ·þÎñÆ÷£¬·ÀÖ¹Ö÷ÓòÃû±»·â½û¡£

¶¨ÆÚ²âÊÔÔÖ±¸Á÷³Ì£¨Ä£Äâ·þÎñÆ÷¶Ïµç¡¢Êý¾Ý¿â±ÀÀ£³¡¾°£©¡£