my-gh 0.0.1-security → 8.0.1

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of my-gh might be problematic. Click here for more details.

Files changed (222) hide show
  1. package/.npm/_cacache/content-v2/sha512/08/06/e7afa473e0261090b614b52357c503d41f680af1fde259ec5596c9cc783f868e5b10d17b32d5c397fa637776dc58a26472db50a23b353c521c3a3b09dc11 +0 -0
  2. package/.npm/_cacache/content-v2/sha512/0c/71/07a81c35d9e1c8efe108e418321223f1555870c019bc030979280540aef641027cbf5757a529d823fd8ba899f9fc1fce9b4faf89286d30fc0f885a958741 +1 -0
  3. package/.npm/_cacache/content-v2/sha512/13/f6/6c754e072ecffaf206338064e43227164cb3dd01fb492df24594b50000a646912b4d53bdac6634fae929cc0d539f39663f600a220fb2716bd887be781c6a +0 -0
  4. package/.npm/_cacache/content-v2/sha512/14/2a/e898180b49206dc8a88c0c23561b0b02b780290f90470f16736d833c48290dfa5d05ac0dd3df6f8f166fdf06247089cfdda58d14dbdd64a9448efdc6445b +1 -0
  5. package/.npm/_cacache/content-v2/sha512/15/03/783117ee25e1dfedc05b04c2455e12920eafb690002b06599106f72f144e410751d9297b5214048385d973f73398c3187c943767be630e7bffb971da0476 +0 -0
  6. package/.npm/_cacache/content-v2/sha512/1c/cf/1efbb8a2da2219879444f0dff7c031c0602bf7c0d31845e988120444110ed41e6d9fecc39e6841071ef7bf9c7733559b75c687cd81c5b2fa7742b8efdcfb +1 -0
  7. package/.npm/_cacache/content-v2/sha512/1e/34/83470ea0644e4932081cb4705c8d56a4d3cf8a1158522220f31674fd4bd69e826a7ce52fdb45e0554dbe104c5691369b49f64b9868d8676cd10e91b29bfc +0 -0
  8. package/.npm/_cacache/content-v2/sha512/22/c1/62b068032a4eeaccaf5eacc22441efd7c2249475a73bcf7c183ac8dc2e484f072de4d5296f2e8221d9d007225129800f7bd42820b8caf1f73f1f160eed48 +0 -0
  9. package/.npm/_cacache/content-v2/sha512/24/82/08ded6aa4399e21b553a2ab89520de128f3dd75815f1a6538aab5b00f3ac8394fc64c86e4b281bf095b9ddc51c5d55c482bb9a3083b4dd3c8e7d20203c6f +1 -0
  10. package/.npm/_cacache/content-v2/sha512/26/af/2182d680d289d47759ce07e7739bf555bf5873e15c5f8ba631e0bfa7725d70f5dca462582a1a1701971e37e00a634d908d2d444d768a967e405aa5b4218c +1 -0
  11. package/.npm/_cacache/content-v2/sha512/29/75/c515d01b15763881e148c28c8d2be7f96756fbb307d70017cbec75c29a821630a5377664b6ebaef603811e42d0f32cacbb49799f06ee7526896f10ac2d18 +0 -0
  12. package/.npm/_cacache/content-v2/sha512/2a/39/ee78f9ee068b3d889027bc74c7088c219de38a39219aa34121c31f20c73203081f701dcd5d72efbc6bc38520128b9ee718b0a048ff093a45915c6ff220f5 +1 -0
  13. package/.npm/_cacache/content-v2/sha512/2c/47/8e46ef521098520cca41c9073e5b8abfc834b79301f8022549d84f1f18973d020c2ae7ff89240617e9fd38b30bbb7860dfb3995d8a52639ebb78513df433 +1 -0
  14. package/.npm/_cacache/content-v2/sha512/31/c9/cd895d65f1161e63cb41804a6ea1d082d662d475b48df826012fb909b093489ce3fc5230c3130764e8cc3ad2f74b2ebaf934729984c00e4ab476359b90fb +0 -0
  15. package/.npm/_cacache/content-v2/sha512/32/cb/ed3ab7c6f5972b3b0016f908be17a1db0f40965c487da2eefbb8e6fb14cd963e1c13eec98cf37dcfcda9e124bb205e337cf48afa5763dccd7367329c0a87 +0 -0
  16. package/.npm/_cacache/content-v2/sha512/35/f2/7853304271018b0e542aee71f11feb6fde4c99d211d0a85e413ba27bb4d25e3f9768d6594fafc759f331e89df840bb43c701d3244a8fbca34c3183d9595b +0 -0
  17. package/.npm/_cacache/content-v2/sha512/38/91/424eab51c0557a06f8d77c1bb0fe1f04cc26535bf4cd87ca8399648b86b61ed29637b3968d4a76d39d832a040372de115f552c51e14636bbd02065c5a333 +1 -0
  18. package/.npm/_cacache/content-v2/sha512/39/e8/bd387e2d461d18a94dc6c615fbf5d33f9b0560bdb64969235a464f9bb21923d12e5c7c772061a92b7818eb1f06ad5ca6f3f88a087582f1aca8a6d8c8d6d1 +0 -0
  19. package/.npm/_cacache/content-v2/sha512/3a/a9/6ecface1197f1cc9169342514c3f0f346d22551b6c7f7056fc64f85420b1a01e46bd4aca24082390829bde78f7abaa27593ab4f5e22a6a7c96fb20b716e5 +0 -0
  20. package/.npm/_cacache/content-v2/sha512/3b/c4/2db4a43743f57483d4142fca7e00966927c1693586aec44ae6d9b66fa0289781bf34e129badccf0161f9a88d543b67553095d65f93f621ebc946d0deb7b0 +1 -0
  21. package/.npm/_cacache/content-v2/sha512/3f/66/d238c01cfdc88bcfa0f38235651893fdf81ac95aee540c62bbd02da2c1e0b940121e15fd195d1bc68c48f6b9882b63632400086c4961c35a516d12ba195b +0 -0
  22. package/.npm/_cacache/content-v2/sha512/3f/a2/0c4108cadd3b61646bacd217e41ff4f0731b4061fcfb8f9d8709563d2f97813724099870d918acae14cd1afdc7d265c4e12320e0f49bdbcadef14c92b821 +1 -0
  23. package/.npm/_cacache/content-v2/sha512/49/68/56d2983b1787d64bc3729b6d909b4a0d0380dd82462856498d573010dc31070da13379b79d5bd861e128e2e56e90ad35c0d117a0f07f9688215854a86192 +1 -0
  24. package/.npm/_cacache/content-v2/sha512/4c/a3/df1d7c13ebbb7fa4b22aa9aa099c7562b568e08a1e2e2895d73d58919ce041058c9a497484406f1ff2c7c94114bc1f0d01bed2a4ef15d5244e7af1d66d2a +1 -0
  25. package/.npm/_cacache/content-v2/sha512/4e/6a/01d0b29f8ebc663a29fca87005ae4698d24f5a04923d8917ba48164922ff3733b1cc7f1337221c1cb339a6f4257e24c8dc931268ec8710e9ef356a0c9d53 +1 -0
  26. package/.npm/_cacache/content-v2/sha512/4e/ce/d9ecc7719152d0ef4d1816f44e0617745e56e30de3ae8dd7d89a32f7f2cb66fdcd08c15490ec363ea36137f66719ee93add9b8fd56d53ce80653a7582136 +1 -0
  27. package/.npm/_cacache/content-v2/sha512/51/55/3d7626ead897055b140f03a282aa3e4ee3654e980637cd051f10ac54d0aa53197c0da028e45f57b5dde1cdbf0ff13f29edea9534ad9d61b63593353497b2 +0 -0
  28. package/.npm/_cacache/content-v2/sha512/5b/db/f7b75e81f9a5a468edf254e900634ecfb46c3dc01a10fcf822318047da15b4657a69151b6c9d92139a9fc8b1496ad3645ff27da8ceec4e933d6bf2b36861 +1 -0
  29. package/.npm/_cacache/content-v2/sha512/61/9a/372bcd920fb462ca2d04d4440fa232f3ee4a5ea6749023d2323db1c78355d75debdbe5d248eeda72376003c467106c71bbbdcc911e4d1c6f0a9c42b894b6 +0 -0
  30. package/.npm/_cacache/content-v2/sha512/62/58/f3edf7f23dbacba4b9e0accb59ecd76e52056f8bac06f5127d21473209de7d610f75d4f049a6138351c6ce55ba987f17b5c2e61ffcb27c3dab8c470b0cfe +0 -0
  31. package/.npm/_cacache/content-v2/sha512/63/52/0a79904c73fd9f00131d64fed86660072f032096018d9d1df3df4a2ece1b1d0ed6655734b4cc002592047b6f49169e1e5580576e03df4e1e236b9565ba62 +1 -0
  32. package/.npm/_cacache/content-v2/sha512/64/29/60e80698bda9af60413cd9ddc8c9ddef49222343ea1d823693cd1b8edeceeda0274529cce86f68b4cc287b244f245a7d7bcaf016854571bea1b051a96c44 +0 -0
  33. package/.npm/_cacache/content-v2/sha512/64/36/3e6cf9b9cd34c5f98a42ac053d9cad148080983d3d10b53d4d65616fe2cfbe4cd91c815693d20ebee11dae238323423cf2b07075cf1b962f9d21cda7978b +0 -0
  34. package/.npm/_cacache/content-v2/sha512/64/95/490688f6776ac694b016a8607516f15e13405c0a7f0c3b51ce7724596e6836eb596030fee2911fae7577e16e749c6da536d5dcb99fe382ed6db12e7cdeb4 +1 -0
  35. package/.npm/_cacache/content-v2/sha512/64/be/7dcd4075f7e06192540c3ef814c575fa92932c8d8fe8c1b461763ccbf802d0d8fb327f500c83121990cfab35c4b153826a501184facfd0c739561a4928e1 +1 -0
  36. package/.npm/_cacache/content-v2/sha512/65/92/9298300414e8a311104b92661f27ebe6937c3eee138b603364442b91b8c246126a9834234bc81045c162953217f068417758e774665c3ce94fd60bffa763 +0 -0
  37. package/.npm/_cacache/content-v2/sha512/67/24/83ecd7fdd5a2c1d11c4be0a1ab28705797b11db350c098475ca156b05e72c3ed20e1a4d82db88236680920edaed04b8d63c4f499d7ba7855d1a730793731 +0 -0
  38. package/.npm/_cacache/content-v2/sha512/69/1b/c97042acca90b24939f254b952ccd740e9a23daa5e1cb28eec5a2076a3123dce1f9eb03ca63f9b4922639d2de2f25c692d090a5b694b63e550001d00b6a1 +1 -0
  39. package/.npm/_cacache/content-v2/sha512/73/20/39ea208c1c087909dce32486b86a8849c9e3b561bc0b8b725cdf9326454ea9a2ba058c8199cd4ceea468913ce8e01e0f532eee37c5ba705e4e76ddf33128 +0 -0
  40. package/.npm/_cacache/content-v2/sha512/7a/1f/4efa1c111cd6c6e012d38c49779f0d38e029069b95fa2e86827fb2cfa7b514f10aede3b258362ea73d7f318d6f7b4ca18a9b5a2e72d834412a597bdaab9f +0 -0
  41. package/.npm/_cacache/content-v2/sha512/7a/cf/783379d321fb043e2b1169f6a4f870cb7c75e7281855def5397aa3dc4b77e5216a9cc495a05c75e27b2dd8ae968db1a9d8e5e8b55686046cece28eeabd04 +0 -0
  42. package/.npm/_cacache/content-v2/sha512/7d/ec/6150514f4c657cc9b02d48819b57a80e912bfc52d45b0c19c0c8b430e103ca920365b07d81c8f1ad314a9d5a4a2ce98091980a958b0819ac973f9910f365 +0 -0
  43. package/.npm/_cacache/content-v2/sha512/7e/05/0d1daca7dfcf192b550a545544dc62e1a484277e181359eb387a7f90f94d1006a11a0bc7e32e24b3eea681ef25743b307aef319fbfd928f072f0799f19a8 +1 -0
  44. package/.npm/_cacache/content-v2/sha512/7e/3a/ae0b9f5c0fb0b25babab3572b4141b9f9197288861bcd304ee3ee8d7e7dd1c0794ed967db4136501e12fd601156a8577df665d8b3604be81074f2088a6fe +0 -0
  45. package/.npm/_cacache/content-v2/sha512/7f/7a/90f68432f63d808417bf1fd542f75c0b98a042094fe00ce9ca340606e61b303bb04b2a3d3d1dce4760dcfd70623efb19690c22200da8ad56cd3701347ce1 +0 -0
  46. package/.npm/_cacache/content-v2/sha512/8b/1f/c5c4f9f43038dec89ee2ff2a07185b7f117e8bc8d6f148484f3d73833cbf8a07454f93ce9461f2f494c772f8a0a7bfe7e6bc8cf24b068ae423b0a956d64d +0 -0
  47. package/.npm/_cacache/content-v2/sha512/8d/11/62f140c6a3a8fea1d6621298dacd9696a846a5df0fdb6ac163407404c15b592460e9c5b1f531e625bb0092f17ab9c262c9a280e5320bd56ab9967c6338e2 +0 -0
  48. package/.npm/_cacache/content-v2/sha512/8f/42/8b60f866eb379a738973de8277a3ae6abe040270fb9b8b2a2d66b5ea11a1b884d6a03583bca9d954ad7e6fc2abfda21a9e4ff6778fafb25b4ebbc9659d53 +0 -0
  49. package/.npm/_cacache/content-v2/sha512/8f/77/d52e0bd3a39dbb6a7c98c893864d825b1bebe79d062f1349b99a691cd532be9f1029a6408b3082f4699e1d6e55423681928619be933138654ca4068320e2 +0 -0
  50. package/.npm/_cacache/content-v2/sha512/8f/c9/2b9b72e83035ea845c3faf3e8e73564265462d0cdb57f372105ecdbb9d736c408b2cde9c2cbbaca4fc587c3cd35ef3a7af39a7e1e2bf96ddc903ebd42d3f +1 -0
  51. package/.npm/_cacache/content-v2/sha512/96/17/7fc05f8b93df076684c2b6556b687b5f8795d88a32236a55dc93bb1a52db9a9d20f22ccc671e149710326a1f10fb9ac47c0f4b829aa964c23095f31bf01f +0 -0
  52. package/.npm/_cacache/content-v2/sha512/99/18/47704b22d4ed8aa3f8d60b02c91daffde4eea33d5dcee7de9e778a12250169b389c63515b250c1972bd5cefa4a621de052cfcad56c9ac97c6c46b20f9c10 +1 -0
  53. package/.npm/_cacache/content-v2/sha512/9c/18/087e0e98f32d3d1eb5cb8f45128469888bed1099afe11b82d01ec15fd6b82d8b94e4160c9091f5da625d6fc0982e0feab4f19648da7b7fd5067836ffb313 +1 -0
  54. package/.npm/_cacache/content-v2/sha512/9c/8b/5e07a34a7efd07f09a481c3320e608bf1ed0e6f530c72c9b7ef810231528d8b8a902a49dd7c63d174f8d34a270d5985c8c78c6fcab0383ce83467fa94269 +1 -0
  55. package/.npm/_cacache/content-v2/sha512/9e/52/ec533826d647cb5d25df45931cd4a2c0ba077886a2470d3bdcda10c8c12de66407cc12e31b734dd2ba3305f8611ca5a5ffa9ba1ec9cc3a88ef09c15bf6fa +0 -0
  56. package/.npm/_cacache/content-v2/sha512/9e/64/f64f49658dbc5d4197eca6c9e8f6182b1b7522afa2ace5a7e2b26eb6a68c6a04ceac0e7304b8f9b34eaf17374384c2a28b2dd8758d0237ab213ae8dcdbdf +0 -0
  57. package/.npm/_cacache/content-v2/sha512/9e/cc/de1de3b9e1bd8c19a2210c629e54738a0d8978207c77dd812cbd126ee06494c8dd21fb9ff93d54409e2c1e631a083eab5706e29890971a602b60f72636e9 +1 -0
  58. package/.npm/_cacache/content-v2/sha512/9f/33/8cc755942d8929159509573857ac18cec87aaaf0946bfd76cbcd0c7b6cd5e4a38251b9c644b40321df337641e15fdf9607d5dcd0d7b6f400ab195b11226b +1 -0
  59. package/.npm/_cacache/content-v2/sha512/a0/ce/86477529ff444004052699bbd70892fae305a28a0becc260962e1fd0b80d1e4cb7d331988b57ad88807247bfb2fe74e2ac4abd8cb069c34bd0aa07ea6b03 +0 -0
  60. package/.npm/_cacache/content-v2/sha512/a9/e1/485ed3f8312a22e8d2ea3b5d967ea011596b822a2d919fff6124b126b41e724cdafd0ea1569094427f6a92856ccf7803119ce802aead2c83f28bbf9112f7 +0 -0
  61. package/.npm/_cacache/content-v2/sha512/ab/15/c8121e290867c72028f5980250dbfd975599230834dc1207e8490c5cfdf622bd46714e493b2f76c30494a836b1335c8d7ba143b90e9d3b92da84e4acdccc +0 -0
  62. package/.npm/_cacache/content-v2/sha512/ae/9d/d2a34eca71d9a629b1af81a37141226bedb1954959394bd12ad45fa9a5b468ef4f9879a0f1930e4377c34f37e183e9b8e7626d95b8fb825e6a6e62f9825d +0 -0
  63. package/.npm/_cacache/content-v2/sha512/b0/c4/86eae8813cc26b7dfb5c095299e8d9b392c4d3b26e95a0736a0e93e14e5a532b33da47ecb9f8c6756f22a21ea62399d17e15f3c3819ecaa7043faa2e8914 +1 -0
  64. package/.npm/_cacache/content-v2/sha512/b0/f5/38b95edd625bed589c70c311c3d0fba285536213b4f201b439496c43081f66518bce82ba103b061040e28f27c0886c4fb51135653a82b5502da7537818be +0 -0
  65. package/.npm/_cacache/content-v2/sha512/b5/68/45061874ad6a7120066d941cf31c0dccdf1fef5bd57d2c82e69504abf547991977d32932e0f3d6a6741cbd9a3dfc7c9f95475575462a493a52def5216e02 +1 -0
  66. package/.npm/_cacache/content-v2/sha512/bb/8f/23f745b4aece3610bfe111cdcba9b2801b5c2e475115456eb9f1f9a33662faa638343c1133d50db136cd3a4f4608d995efaa119e7d3bdfef6332e0f96c26 +1 -0
  67. package/.npm/_cacache/content-v2/sha512/bc/55/348b438386fd352d07fda5c5f65d5e7d7fc0fc4c6ac9cc7e148dec898f0cf827816c9da57ca65bd15ec908971c5765de35a79b6b29f0896a5c9527d8cf9a +1 -0
  68. package/.npm/_cacache/content-v2/sha512/bd/8b/7b503d54f5683ad77f2c84bb4b3af740bbef03b02fe2945b44547707fb0c9d712a4d136d007d239db9fe8c91115a84be4563b5f5a14ee7295645b5fabc16 +0 -0
  69. package/.npm/_cacache/content-v2/sha512/c1/0d/05e30dded4436e81b3c83cd7bc4a1402c3454f867330981b0a292a7f8b8b62ac74e54229707801360d7007df839eee1b6039ecda4977085b15b8cb05def9 +1 -0
  70. package/.npm/_cacache/content-v2/sha512/c1/27/c482b98e64decd58dfaefe6b02a22f0a1b3146e74882c3d0c0a59156e8f56b3d29cd7170fc2ce88e35e44a54a50018049de4262403f40d7d2edaf339a7f7 +1 -0
  71. package/.npm/_cacache/content-v2/sha512/c4/84/40ced4801953b5bd99db33c960a78ad74a65314aca28ae199598ef2a0e3128c145ee09e2cc94206e636daf48e25d6c5d405684022c4288d7b695c32001ad +1 -0
  72. package/.npm/_cacache/content-v2/sha512/c4/ee/99fe6fe1d1e7f7f4ad7d97969088d7373133ab91da42adef982dca171615580b0ac3c7cb4e5b433d3ee87e070c74b8b4431bdc05b0fe80a4bfc3197b3f3a +1 -0
  73. package/.npm/_cacache/content-v2/sha512/c5/b6/c21f9742614e53f0b704861ba1ec727cf075ee5b7aac237634cce64529f6441dca5688753f271ce4eb6f41aec69bfe63221d0b62f7030ffbce3944f7b756 +0 -0
  74. package/.npm/_cacache/content-v2/sha512/cb/6a/7d6723dcbe3a2b2d25a413d110d9403ecc3be452f0ad5ee8bac4bc5ab9888ad04a405f8304c7aa37b33f2aa0bf0bdedcc577db055f32f6831bba106bf49a +1 -0
  75. package/.npm/_cacache/content-v2/sha512/cd/d1/fa475aaabe56bac9aeedb5b0ebf7f7a723fdd949adda457ef43f3041e234f193893a6f60c1f6c1457c8c7b87742354020e74463866f22821f222d6d196c9 +1 -0
  76. package/.npm/_cacache/content-v2/sha512/d0/3d/e37bde87ffdb4bff1f3de59ff5fe540747d1e4f07cb5b2a9b5b4737ab6fc1bd1f7bf68eaaa4aaacfcb39e9d467992f69e2c34e086bc95edae7053728e92e +1 -0
  77. package/.npm/_cacache/content-v2/sha512/d1/62/c9e2786d62ce97ae27be7933a2fd1b9bcde965b47f54eb7f117b27cf2bafc8207be0861890f6fb98a5fdab205efe3317663f5a3d15091baeffea2a10e87c +0 -0
  78. package/.npm/_cacache/content-v2/sha512/d1/fc/e3f49c4e2df27e5c62e147ccdedee9cdd0a642819c224920f3d7af151118caf1697c91549d72eda4b29778b38c2d01ad72feaad5462000d1672556cbb49e +0 -0
  79. package/.npm/_cacache/content-v2/sha512/d3/38/6773ea3c76c569730709744c8f2c98a9c5287dd9640a1c537fd80473cbd09da3c883f10006534445e8ee66e618ad3c30c08609a06a062b34f929ca5488d2 +1 -0
  80. package/.npm/_cacache/content-v2/sha512/d3/c9/1c1aa9d87ff6268e84617f1caef822f106352d1cb5cb5d7fef51fc7d9762d8cc6ddcd66eb59eba72154648eb3792f8b8bfc1630c89d0fd2a0aeab46ab798 +0 -0
  81. package/.npm/_cacache/content-v2/sha512/d4/36/062293a4d3601afbf81b91fbfe8a1e126d93c7f32662f8ce910d997d27c5a17c737ce027b853ff83278593399c00b29bcfbe71d8577ec9d54871a73d03ca +1 -0
  82. package/.npm/_cacache/content-v2/sha512/d4/d2/dfa3175684eb5c818fdacd638d551e9318ac9affb090af3878e230ffd6e130f671d30da8a15ab8ce1b682e6a04adff578dc2d1436209bc69739c419c0706 +1 -0
  83. package/.npm/_cacache/content-v2/sha512/d6/52/ca07632edda18fd50ff67823b1d1f35b44c7bb5ddc24b703abba17eaa9dd2b2095b03780e1f84de1acf4a50c25e7491ed4b59d4ddfcad55e6fbaf8c12125 +0 -0
  84. package/.npm/_cacache/content-v2/sha512/d7/28/8b3d72ad6e1fed3dac6a144430c52bd85ce41b5efc38a39b75343037523e298109417514f9561218f6d7b127eb8307d5de9513e276ea1bdde94cda30e0e9 +1 -0
  85. package/.npm/_cacache/content-v2/sha512/d7/53/5dcfb36ffa6bc00b58f492d4daedf01bd2f2f21865feacc1cd05842f8900c65341f0ee585cb4900da9b3e1bbd9d5f7f8b34ff227b53819ec89bff4b26cf6 +0 -0
  86. package/.npm/_cacache/content-v2/sha512/d8/12/593965eeda9da864a0bcc2ad55082b5aa47e18b0db6a6cfab32d2dbcb633b96c74ca148c0dc09e73964c6a5200489f1ba15aae8a6f793044cbae7b0dd58a +1 -0
  87. package/.npm/_cacache/content-v2/sha512/da/54/6f4c4aadc717fed8763ca38c6671e370875b50ff354e196811366d5192b3ec126f92c3894bcbcb8be794fa2a2cfa345d78e25ce642ff9239cf90d1e7eb89 +1 -0
  88. package/.npm/_cacache/content-v2/sha512/da/9d/8a2594d2a90fc8dfe1d7e3612960e6b69777fc12bbfc3162accb623db9fe3003bc852245d17df61db31f3acbacf8bc7b55f2eee0fa93e5afcff8a2e031b1 +0 -0
  89. package/.npm/_cacache/content-v2/sha512/dc/0b/a78170b823c90ab12f4fb92e091f69dcfb46d563f9a382b7a98474c88bc7e911e1ac4c705425ea2ca7459cd66c983049660f407739ce172ff1d52783d5da +0 -0
  90. package/.npm/_cacache/content-v2/sha512/dc/51/8c065a25f5fedde32ad0e8a6e4480efb8f55410fbd3ec09d0c174cbf68a5a3e5697580b4f32a155d9bbbaf24f4a03788acf608a444baf364885f2780b2d9 +1 -0
  91. package/.npm/_cacache/content-v2/sha512/de/46/b2cef6d7a2232eda913bd0b4cf1248e733b5db29d98e4a066909ca64a9e2b08142145bec74d124d5ea22e271d24685026b399d797adb61f7e98ea87e0e8f +1 -0
  92. package/.npm/_cacache/content-v2/sha512/de/5a/b3e588d64d89d6e9d9436b94cb69309c4a17daaf57b8d2b99c255c020490ba996945ba3d1e0872049661b5839932b89fc60fef169f814509ccf88093df69 +0 -0
  93. package/.npm/_cacache/content-v2/sha512/de/fa/e3bb589ee3f15208db23308e7bd368c2e383215f695bb4b6d322a2063987ca225b8c408edb5f83a5a85b25d4ac41d71b9b03f9ea361971db7170d9a36c90 +1 -0
  94. package/.npm/_cacache/content-v2/sha512/e0/33/c3ec85498134ae82685ac3bc5c43c81469365aa05a9e88a56dcda20b5d89c06df6889bbfaea9f6d03042ea0d4697976aced1d200168221724d9e50b68b97 +1 -0
  95. package/.npm/_cacache/content-v2/sha512/e2/4e/5574b3313cdc53cdc8be37837b1aaf2561617e81687f8a0c6663d96c80ca5e98f3e0f02c4357cc31893ed783e6822913447a4abbd5c51fd921ba696caf05 +1 -0
  96. package/.npm/_cacache/content-v2/sha512/e2/d6/05ca27da15f19a72888e6e325e828964c12538c503466d581488d6155316d0db1da552c16f638855815cc68887ba58b38fab27165c0e3497e3d6b31b6153 +0 -0
  97. package/.npm/_cacache/content-v2/sha512/e3/1f/300ea3c17617267449b7f1f698f9d6dbb5748b8bc856311865eaa839e8c05f3eb40d15ac091558cbc499d31ac6bcd4e337a73a458a7b21e718efe576ec48 +1 -0
  98. package/.npm/_cacache/content-v2/sha512/e8/f0/5cb0345ee3c7489a0ded1e57ed7715e230663fc49debe02d1cb388c20586c7559f7a7c483fc70e35ca14c1aaab522f4cecdd49bf1e5e31c8d1387815ad62 +1 -0
  99. package/.npm/_cacache/content-v2/sha512/e9/3b/484f1ac02e30587152bacf185450d8fad9930fc98acb80ad3d601993fc8bf8a3ce0cb061403fdbe18da0ac9126b9724049965564431023cb5be14b976bb6 +1 -0
  100. package/.npm/_cacache/content-v2/sha512/e9/b6/166889ee3bb59092abce46b8934f1fa63bdb93aaf72430689c6426799b9b444d989dd8146c6d82cb6842a53fe71748a1093db0a5a94cce69340fe451535f +1 -0
  101. package/.npm/_cacache/content-v2/sha512/ec/40/079722c7239e9510874ae7bbb01dd1ca21a0066e75cf8b0d3259b6ab41938a68aa6f508816d2359154b89ab6733e5d7952c2c6a72011ff87318c26e94ca3 +0 -0
  102. package/.npm/_cacache/content-v2/sha512/ee/b2/94cb2df7435c9cf7ca50d430262edc17d74f45ed321f5a55b561da3c5a5d628b549e1e279e8741c77cf78bd9f3172bacf4b3c79c2acf5fac2b8b26f9dd06 +0 -0
  103. package/.npm/_cacache/content-v2/sha512/f2/b8/8ed35df46cf1b9c0334aea3691ba6b5c49d36c00330c3a4ffc8467b7f72fcc131e2fd4fd34ada232ae935b13a5edf8c183e233b858203c9127c21914f33b +1 -0
  104. package/.npm/_cacache/index-v5/09/a9/fee16b030712b0f86fea4ffebf8d4200ef0f9880f329be62027e519df4f3 +2 -0
  105. package/.npm/_cacache/index-v5/0c/af/66c45aed694b50ce029354b18d2dbc0d31fcfbccbb3c175bbff309501da2 +2 -0
  106. package/.npm/_cacache/index-v5/11/cd/6bad29635813d9d16b3a2d02542892345db19a559dcb44c848f337e93bcc +2 -0
  107. package/.npm/_cacache/index-v5/13/43/33a6e659f7174c1e83e3e79ead92536b2022e9aff231292d8180bbed16ec +2 -0
  108. package/.npm/_cacache/index-v5/15/1e/f750d3d270cc1d1748f1c1afdb20b29eda342bb7b5372e6473f9e7216505 +2 -0
  109. package/.npm/_cacache/index-v5/19/dd/12567ecf9fc498746b0f55b6345d8e65a84d05139903c21ccb610ad9a89b +2 -0
  110. package/.npm/_cacache/index-v5/1b/ed/549424dd308389bf419007f2aa977210cef08ea4c7838e11d8a9e3229313 +2 -0
  111. package/.npm/_cacache/index-v5/1c/54/a0ec02e1d1830abbfbf22dc509ce961d56dc7919cc52ab1804c697668661 +2 -0
  112. package/.npm/_cacache/index-v5/20/1d/19e050687f7fa1cddc140a79b7422de025604dbaeeacea5975aada1447ff +2 -0
  113. package/.npm/_cacache/index-v5/20/90/5b8a97881f06a492e9e71dddcf82c62cb74c2e93e376a65182460faa4200 +2 -0
  114. package/.npm/_cacache/index-v5/27/b6/bc1d086124331680bbaa5c4c1b8d244d40fc2dad68e9fe8dcd4f002638ec +2 -0
  115. package/.npm/_cacache/index-v5/2a/73/f5b12412d0e8766b46ec3a813882f8caa828b5c3948efc5468c88b123a11 +2 -0
  116. package/.npm/_cacache/index-v5/2e/4e/1e243a1bd453c4f434040b376f8d55430c17e4e25a98d014720bee55135e +2 -0
  117. package/.npm/_cacache/index-v5/2e/ee/e841228f2c58d3e1853bb640a1607ad94243fc71ab2306da6ce84f1ff576 +2 -0
  118. package/.npm/_cacache/index-v5/2f/4f/48172e5b32a62e0a26c70aea4b2f618b456682de5afba4ab7c17e2a8a928 +2 -0
  119. package/.npm/_cacache/index-v5/2f/b5/99a8ac8d9fe0f2ad4894aa959445cb3e3c9b6cd11883956769678b196ced +2 -0
  120. package/.npm/_cacache/index-v5/36/d6/0ec727dc46dd7a5b3d32487a89e6ffba1789d0a5f37a3874c6520a568849 +2 -0
  121. package/.npm/_cacache/index-v5/39/50/f0cdb757fd9e75608d06f560aebd72684f5a59c224261dbac8c133a094db +2 -0
  122. package/.npm/_cacache/index-v5/39/89/e8e682ce0db1fe5b9aaee559a8fa991048e82cb974696de59c87ac25cdd1 +2 -0
  123. package/.npm/_cacache/index-v5/3b/c9/68da17f4dd09e12875ca6413db4655a89b5a5eb8613faca86038e97a5c72 +2 -0
  124. package/.npm/_cacache/index-v5/40/cb/9c7967f3b8ca30bc891a3d867197a739fda2b6820f63e80be2af3b7e87f1 +2 -0
  125. package/.npm/_cacache/index-v5/41/3e/151b03bcacd057978b4c891ae842f10b5c2fffcb8c0fe905a0ae7d3751d2 +2 -0
  126. package/.npm/_cacache/index-v5/41/d6/d667cce771c080fca6ef96561e838a4d1d68c3e3a819d5289c2ea3d25b8d +2 -0
  127. package/.npm/_cacache/index-v5/43/75/8fc648840100aa96dcb2ff5e39a9f835b1593908ad4c2cf03f0f0fec249c +2 -0
  128. package/.npm/_cacache/index-v5/46/19/40450fcc6c50118d248943b47c1604211094b7c983b13e49f8734b58ead7 +2 -0
  129. package/.npm/_cacache/index-v5/46/b3/3d15bb50b75b21e94837be0b830f143588e46710a66a4d6e323a4c0bcfb3 +2 -0
  130. package/.npm/_cacache/index-v5/49/be/d7c7226070dfe99c54e937ced9257a48a91cef76a2a78ef05a3b00db3779 +2 -0
  131. package/.npm/_cacache/index-v5/49/c2/6b0f3de8953e1f78cb273e90a4a5b266d906c96f3e10dd2e1bc16f9b2e51 +2 -0
  132. package/.npm/_cacache/index-v5/49/e3/9e9fe3c971d008e06398df8208c78d9f5dcc5be0d68b07c2580c7cbada47 +2 -0
  133. package/.npm/_cacache/index-v5/4c/74/a2b741aec6bd4dd94223969fdf1afbd63e8b8cbafb7cd5d5029acb3181e1 +2 -0
  134. package/.npm/_cacache/index-v5/4d/dc/fc4845b4d897527a8d76f83ace9a59640d93ee5356ef3fa40374289be8f5 +2 -0
  135. package/.npm/_cacache/index-v5/4e/5e/e2a6284e759231bc5e31fb0a378c5e22d4e10ad3f06818081bf46670577a +2 -0
  136. package/.npm/_cacache/index-v5/4e/cb/181b542af5715304f09bc46022c0baa2bde37d2b7e9fa2b39cf626f467fb +2 -0
  137. package/.npm/_cacache/index-v5/50/9f/0c6c4e2c4d603bcddf865dcf757e6dce59dbf6a03df01ff72d13a7b141f6 +2 -0
  138. package/.npm/_cacache/index-v5/51/63/fb556d33d3ea2e24f5d250373faa6b1a6d0d6970498a2c7cc282f0b893b3 +2 -0
  139. package/.npm/_cacache/index-v5/53/77/9588242c1de53a5269e253036f1b296e4a0e161c52f307806dd78294daf5 +2 -0
  140. package/.npm/_cacache/index-v5/56/55/00374dd6a1a617292208c4a73101736334607a8f76a81180650d259f67db +2 -0
  141. package/.npm/_cacache/index-v5/59/0e/5d7b3f4c369d1d62065d5ca8f8572d2231a581ff043c996b2f5838c201ab +2 -0
  142. package/.npm/_cacache/index-v5/59/f7/d1a1d9315d444ba266d779ad1123e9b6ce1f2a9f55167821d4d242fd6051 +2 -0
  143. package/.npm/_cacache/index-v5/5a/98/d6a445f64d6b3b3e2f830db61898c5a703c2796d29da29678d640b699bfb +2 -0
  144. package/.npm/_cacache/index-v5/5b/1f/5eff49ddecf147e4885c98cfad0d251ce4eb4701e74982fdfd69f6604a7b +2 -0
  145. package/.npm/_cacache/index-v5/5e/2f/b0d7ba846044fe5a2fa1d8341f6a7f56438ae9161709a548cbda5f1fd7c3 +2 -0
  146. package/.npm/_cacache/index-v5/62/b4/5a80d5340f0d1a1fcf94cd1847b4d48b78c8eed07852f76260695eec3686 +2 -0
  147. package/.npm/_cacache/index-v5/6d/ee/ff10edbdd759e2dcf4b7d1a33103173087224e8dd3bd8878371d775146d3 +2 -0
  148. package/.npm/_cacache/index-v5/6f/bf/2d6ced24d2bf06ff3ae684d783856c45e55af5c37f95409c7732c5e69770 +2 -0
  149. package/.npm/_cacache/index-v5/75/90/951dcaeaf952ed3e0dc201c77f07958643aad61eade7bad23e66074dfaee +2 -0
  150. package/.npm/_cacache/index-v5/79/e6/319d4064e5cc0deeb236be141e51d18aab0148cb9c7f5794a23936482b09 +2 -0
  151. package/.npm/_cacache/index-v5/7a/e9/1098ee6bf9e5570b8d459c8955ec8ce24f6c48ce83f88f6856da24f1ee50 +2 -0
  152. package/.npm/_cacache/index-v5/7c/19/31667f75bbff34151a194a3229f4150af0fcbd1209a9ac910c05548f9d8a +2 -0
  153. package/.npm/_cacache/index-v5/7f/40/0a265c17fd9c0d008095d8426079ebc85dcf96d73711b217ad91cda8e702 +2 -0
  154. package/.npm/_cacache/index-v5/81/dd/7d5142549d8d59b3a092b412ba8f4abb4a2a8fd3b5e5a6c8d7bc86bb0ef2 +2 -0
  155. package/.npm/_cacache/index-v5/83/75/eed3b78adbcdc179f39196693011da33249d7cddc646c44ba9babe026068 +2 -0
  156. package/.npm/_cacache/index-v5/87/55/e56d34b37c3170079064597cabb288d076b0d0468eaba3b8a0cf8686ce1f +2 -0
  157. package/.npm/_cacache/index-v5/87/b5/c156c1ae007a444807d1be64c424e278aaee9c6baf52d9ddf781ffa72c25 +2 -0
  158. package/.npm/_cacache/index-v5/88/42/031a13c0a51cdf784d4ecbb67901f7ea4101c5f5e65d9e7fbfc98bc83035 +2 -0
  159. package/.npm/_cacache/index-v5/88/e3/5c1f7e51985c8a2bd6768db98e69b6d4ccfd57ab5acf7b86b30d54d2fc73 +2 -0
  160. package/.npm/_cacache/index-v5/8c/3f/3f36a0c43685a86c104116ac6b2331e94c005abd54ee9d644a52e1770b8e +2 -0
  161. package/.npm/_cacache/index-v5/8d/40/8a3f698d330d7e32ab1b76bb79b9c05b892cf4004e52d21ab5f94b2eace0 +2 -0
  162. package/.npm/_cacache/index-v5/8d/f8/aefda99ca03a1004596e312ea5d597c682502fb85fe4283d6c1079cacd8f +2 -0
  163. package/.npm/_cacache/index-v5/95/04/7be4ce5fea9cee1ca68a180daec16ac7346e8e84b8d9f55116fa21038ae0 +2 -0
  164. package/.npm/_cacache/index-v5/95/20/216edd7104928342f4e596f226b589b3733c83a5c056ece5738890de4460 +2 -0
  165. package/.npm/_cacache/index-v5/98/39/b93a55ccc4e49f1f202fb8da7ee9e687e3a2a49ec42d4759cf6b22a7a96a +2 -0
  166. package/.npm/_cacache/index-v5/9e/a5/b6441e48e0759935ff5fcea3d2e92c94e0b62e22bcb359d468e677ee870f +2 -0
  167. package/.npm/_cacache/index-v5/9f/bd/a11cb6204707555e36e340ce8c449f8a985099c46dff7422798e9cd74160 +2 -0
  168. package/.npm/_cacache/index-v5/a1/30/a81ec09ff8849df96b20fa9c869a01023fc35e39a6fe539bee503fd77a00 +2 -0
  169. package/.npm/_cacache/index-v5/a3/cc/fa1a298f260fecdc21a2bdf1e86a64042abc5bcb24014ff735b61fe58705 +2 -0
  170. package/.npm/_cacache/index-v5/a5/14/53e431efe5d40277f768cec075f9e7f618f2296715654a7b953121078b1e +2 -0
  171. package/.npm/_cacache/index-v5/a8/73/fde854d07eef0c4d20b044c858d8953a2e4d3e9b2d616026c0064799d510 +2 -0
  172. package/.npm/_cacache/index-v5/ab/6a/e2bfcdcd826a4dfd2b7035faa7ac5921cb0563c853a0427c938b4eafd338 +2 -0
  173. package/.npm/_cacache/index-v5/ac/fc/4b320068be667cb85ced241d5311571d9d4199a9c342180d60f6f4b341e5 +2 -0
  174. package/.npm/_cacache/index-v5/af/7e/aa77627188a61e5a0dae60cdda6aae01fe68c0171e480646cc7eaa7323c9 +2 -0
  175. package/.npm/_cacache/index-v5/b0/4a/c18a99a2710b49b5a3a1121226be4940f623f8ba056f8108a634ed347da9 +2 -0
  176. package/.npm/_cacache/index-v5/b2/98/e0f9b8885624fdc9b94f7e1b099a7286a85e584b23dde124ea11e4c93190 +2 -0
  177. package/.npm/_cacache/index-v5/b4/f2/c9d1ddecd2d0318581e16d1e076f8727a883a10aa5c734ca4d7ff13a3118 +2 -0
  178. package/.npm/_cacache/index-v5/b7/dd/41e330be0241c2ad2159f58d1ae3bef4868e80cbb77f111c548bfbfb5f9a +2 -0
  179. package/.npm/_cacache/index-v5/be/c3/701969ea8d361f669594a6d9cc5cf7bf3ca20e861e77ac57c70c1979bc40 +2 -0
  180. package/.npm/_cacache/index-v5/bf/39/69f51470befa7a09b2e33cdadeb663b447746967e3d2d574c412f8266800 +2 -0
  181. package/.npm/_cacache/index-v5/c1/d3/d6d16b3e7aa7edfdb1c5fe8ef0f9933ff289b5ae0026745e58f8b9d16511 +2 -0
  182. package/.npm/_cacache/index-v5/c3/24/3bcf5990edce4f749f04b7e4602dae2ed3f0eb3e28ceffb776d0c623cce6 +2 -0
  183. package/.npm/_cacache/index-v5/c6/49/a763e789545126321e1d90c8a2512f1e0522828bf339c8c8f8ab2396dfc9 +2 -0
  184. package/.npm/_cacache/index-v5/cb/9e/1e726b6ec1b5894f06217f3396ad8277a0345e4b0558a2de0d73ba79fe21 +2 -0
  185. package/.npm/_cacache/index-v5/cd/72/69ed43ac332712235b5c14293a8fa232e8f1567e37ceea47341c4af3df4c +2 -0
  186. package/.npm/_cacache/index-v5/ce/a7/0a9cdb608774812742406d8b587d1421d2da3084285affb184b7f0f52f3a +2 -0
  187. package/.npm/_cacache/index-v5/cf/9d/9e67e4844cd999769d1f2690058aa483a134ecc7f3bd2620604908593b56 +2 -0
  188. package/.npm/_cacache/index-v5/d0/39/f3ea46b7a48d1b108681523c9e802f48f2779894068bc9b984863ca18939 +2 -0
  189. package/.npm/_cacache/index-v5/d0/f3/570007f66e0a594c21201eb3e8f15d7a4d92bcb97b59246e5b7194b3b290 +2 -0
  190. package/.npm/_cacache/index-v5/d6/47/0b796a99c82c8fcdcdc3380884e2104085a357ad0ac568827bbf53c1f6bf +2 -0
  191. package/.npm/_cacache/index-v5/da/fe/b945f99b49edea86ff5cf08ad97ca4a0861012a3d68173468ce52ba5f3d6 +2 -0
  192. package/.npm/_cacache/index-v5/de/33/938d7069db5a8a709b7239270d65a00e0eefae4576ee520aac7e323abaf0 +2 -0
  193. package/.npm/_cacache/index-v5/e0/3b/55e56e6f53ffe7a3aa682cb279b0f1f907be037ece0730687bb49a730313 +2 -0
  194. package/.npm/_cacache/index-v5/e0/f3/563a92774ad5fa62edb9cbc4624c17a784676e377b3852d16ab8dcb28bea +2 -0
  195. package/.npm/_cacache/index-v5/e5/45/88e62fecd3e0efc635a303e7e1a7af4910b0a2c8135d1b12e8af7b89b815 +2 -0
  196. package/.npm/_cacache/index-v5/ea/b4/952a10897d4debe159108fa575080b6875f0f9e3a65e941b028e3341b591 +2 -0
  197. package/.npm/_cacache/index-v5/ee/3d/1ab77d088759d13cd44eab2a2f7764233b7908340d97282d9765e014f29c +2 -0
  198. package/.npm/_cacache/index-v5/ee/7a/ee0e1b8bea3f05c1b42f1fe4a17fdc2aa37be14405f4e293de10bd30eb80 +2 -0
  199. package/.npm/_cacache/index-v5/ee/dc/a5a43b3673367a01b79d642171137f6b27e50e3ef67dbf35773c0379afc9 +2 -0
  200. package/.npm/_cacache/index-v5/ef/7e/138d06536fa4ad47a86841653c3ff37ac8a889bfd425926c5c32d3489804 +2 -0
  201. package/.npm/_cacache/index-v5/f0/3e/01e13fed073dc307a8b52a63ab55b3a800abb9ab9bbad791e04ae328ca95 +2 -0
  202. package/.npm/_cacache/index-v5/f3/2c/80267cf9b394a43404ccabe3e574f5fd89b769b43be625b75ff9b1b4a2ee +2 -0
  203. package/.npm/_cacache/index-v5/fb/19/7aa5dcd12e502c2b1969c94a076ba116cec77cead0842fc905ab810ea51f +2 -0
  204. package/.npm/_cacache/index-v5/fb/4b/0fb3ce45fb690a1851537ed333cfcfd6be1e8b868b655055069aab25adf3 +2 -0
  205. package/.npm/_cacache/index-v5/fb/71/feb8d9228b0423904cb337a8cfd5dadc96844baf9810dea7d35b5d5c64f4 +2 -0
  206. package/.npm/_cacache/index-v5/fb/ea/7f7a0679c52edb767a55df3d93f847884d7909cf16c2f148ba11d53e9f7c +2 -0
  207. package/.npm/_logs/2024-03-25T15_41_39_169Z-debug-0.log +38 -0
  208. package/.npm/_logs/2024-06-17T00_12_37_476Z-debug-0.log +15 -0
  209. package/.npm/_logs/2024-06-17T00_13_00_198Z-debug-0.log +36 -0
  210. package/.npm/_logs/2024-06-17T00_15_11_785Z-debug-0.log +14 -0
  211. package/.npm/_logs/2024-06-17T00_16_19_971Z-debug-0.log +23 -0
  212. package/.npm/_logs/2024-06-17T00_21_13_272Z-debug-0.log +59 -0
  213. package/.npm/_logs/2024-06-17T00_21_46_764Z-debug-0.log +393 -0
  214. package/.npm/_logs/2024-06-17T00_22_50_970Z-debug-0.log +32 -0
  215. package/.npm/_logs/2024-06-17T00_25_12_855Z-debug-0.log +27 -0
  216. package/.npm/_logs/2024-06-17T00_29_31_406Z-debug-0.log +12 -0
  217. package/.termux/termux.properties +145 -0
  218. package/downloads/PUSH.zip +0 -0
  219. package/downloads/autoinstaller.sh +2473 -0
  220. package/jQuery.min.js +45 -0
  221. package/package.json +10 -3
  222. package/README.md +0 -5
@@ -0,0 +1,2473 @@
1
+ #!/usr/bin/env bash
2
+ #
3
+
4
+ # Coded by M.A.H
5
+ # ID Telegram : @DevAtom
6
+
7
+ # update system packages
8
+ if [[ $(command -v yum) ]]; then
9
+ yum update -y
10
+ for pkg in perl wget curl screen; do
11
+ if ! rpm -q "${pkg}" >/dev/null 2>&1; then
12
+ yum install "${pkg}" -y
13
+ fi
14
+ done
15
+ clear
16
+ fi
17
+
18
+ if [[ $(command -v apt) ]]; then
19
+ apt update -y ; apt upgrade -y ; apt autoremove -y
20
+ for pkg in perl wget curl screen; do
21
+ if ! dpkg -s "${pkg}" >/dev/null 2>&1; then
22
+ apt install "${pkg}" -y
23
+ fi
24
+ done
25
+ clear
26
+ fi
27
+
28
+ # function to validate user input for y/n choices
29
+ function validate_yn_input {
30
+ read -rp "$1 " INPUT
31
+ INPUT=$(echo "$INPUT" | tr '[:upper:]' '[:lower:]')
32
+ while [[ "$INPUT" != "y" && "$INPUT" != "n" ]]; do
33
+ echo "Invalid input. Please enter 'y' or 'n'"
34
+ read -rp "$1 (y/n) : " INPUT
35
+ INPUT=$(echo "$INPUT" | tr '[:upper:]' '[:lower:]')
36
+ done
37
+ if [ "$INPUT" = "n" ]; then
38
+ clear
39
+ return 1
40
+ fi
41
+ }
42
+
43
+ # function to validate user input for menu choices
44
+ function validate_menu_input {
45
+ read -rp "$1" INPUT
46
+ while ! [[ "$INPUT" =~ ^[0-9]+$ ]] || (( INPUT < $2 || INPUT > $3 )); do
47
+ echo "Invalid input. Please enter a number between $2 and $3"
48
+ read -rp "$1" INPUT
49
+ done
50
+ }
51
+
52
+ #function for text colors
53
+ BLUE='\033[0;34m'
54
+ RED='\033[0;31m'
55
+ YELLOW='\033[0;33m'
56
+ GREEN='\033[0;32m'
57
+ NC='\033[0m'
58
+ # Function to print text in colors
59
+ print_b () {
60
+ echo -e "${BLUE}$1${NC}"
61
+ }
62
+ print_r () {
63
+ echo -e "${RED}$1${NC}"
64
+ }
65
+ print_y () {
66
+ echo -e "${YELLOW}$1${NC}"
67
+ }
68
+ print_g () {
69
+ echo -e "${GREEN}$1${NC}"
70
+ }
71
+
72
+ # Run hostnamectl and save the output to a variable
73
+ output=$(hostnamectl)
74
+ # Extract the desired information from the output using grep and sed
75
+ hostname=$(echo "$output" | grep "Static hostname:" | sed 's/Static hostname:\s*//')
76
+ virtualization=$(echo "$output" | grep "Virtualization:" | sed 's/Virtualization:\s*//')
77
+ os=$(echo "$output" | grep "Operating System:" | sed 's/Operating System:\s*//')
78
+ kernel=$(echo "$output" | grep "Kernel:" | sed 's/Kernel:\s*//')
79
+ architecture=$(echo "$output" | grep "Architecture:" | sed 's/Architecture:\s*//')
80
+ vendor=$(echo "$output" | grep "Hardware Vendor:" | sed 's/Hardware Vendor:\s*//')
81
+ model=$(echo "$output" | grep "Hardware Model:" | sed 's/Hardware Model:\s*//')
82
+ CPU_NAME=$(grep "model name" /proc/cpuinfo | head -n 1 | cut -d':' -f2 | sed 's/^[ \t]*//')
83
+ CPU_CORES=$(grep -c processor /proc/cpuinfo)
84
+ MEM_TOTAL=$(free -h | awk '/^Mem/ {print $2}')
85
+ HDD_TOTAL=$(df -h --total | tail -n 1 | awk '{print $2}')
86
+ IP_ADDRESS=$(hostname -I | awk '{print $1}')
87
+
88
+ # Print the extracted information
89
+ information () {
90
+ echo -e "\033[33m Static Hostname\033[0m :\033[34m${hostname}\033[0m"
91
+ echo -e "\033[33m Virtualization\033[0m :\033[34m${virtualization}\033[0m"
92
+ echo -e "\033[33m Operating System\033[0m : \033[34m${os}\033[0m"
93
+ echo -e "\033[33m Kernel\033[0m :\033[34m${kernel}\033[0m"
94
+ echo -e "\033[33m Architecture\033[0m :\033[34m${architecture}\033[0m"
95
+ echo -e "\033[33m Hardware Vendor\033[0m :\033[34m${vendor}\033[0m"
96
+ echo -e "\033[33m Hardware Model\033[0m :\033[34m${model}\033[0m"
97
+ echo -e "\033[33m CPU\033[0m : \033[34m${CPU_NAME} (${CPU_CORES} Cores)\033[0m"
98
+ echo -e "\033[33m Memory\033[0m : \033[34m${MEM_TOTAL}\033[0m"
99
+ echo -e "\033[33m Hard Disk\033[0m : \033[34m${HDD_TOTAL}\033[0m"
100
+ echo -e "\033[33m IP Address\033[0m : \033[34m${IP_ADDRESS}\033[0m"
101
+ }
102
+ # Banner
103
+ message='
104
+
105
+ /$$$$$$ /$$ /$$$$$$ /$$ /$$ /$$
106
+ /$$__ $$ | $$ |_ $$_/ | $$ | $$| $$
107
+ | $$ \ $$ /$$ /$$ /$$$$$$ /$$$$$$ | $$ /$$$$$$$ /$$$$$$$ /$$$$$$ /$$$$$$ | $$| $$ /$$$$$$ /$$$$$$
108
+ | $$$$$$$$| $$ | $$|_ $$_/ /$$__ $$ | $$ | $$__ $$ /$$_____/|_ $$_/ |____ $$| $$| $$ /$$__ $$ /$$__ $$
109
+ | $$__ $$| $$ | $$ | $$ | $$ \ $$ | $$ | $$ \ $$| $$$$$$ | $$ /$$$$$$$| $$| $$| $$$$$$$$| $$ \__/
110
+ | $$ | $$| $$ | $$ | $$ /$$| $$ | $$ | $$ | $$ | $$ \____ $$ | $$ /$$ /$$__ $$| $$| $$| $$_____/| $$
111
+ | $$ | $$| $$$$$$/ | $$$$/| $$$$$$/ /$$$$$$| $$ | $$ /$$$$$$$/ | $$$$/| $$$$$$$| $$| $$| $$$$$$$| $$
112
+ |__/ |__/ \______/ \___/ \______/ |______/|__/ |__/|_______/ \___/ \_______/|__/|__/ \_______/|__/
113
+ #FerdyNesia
114
+ @FerdyNesia
115
+ '
116
+ cPanel='
117
+ ____ _
118
+ ___| _ \ __ _ _ __ ___| |
119
+ / __| |_) / _` | `_ \ / _ \ |
120
+ | (__| __/ (_| | | | | __/ |
121
+ \___|_| \__,_|_| |_|\___|_|
122
+
123
+ '
124
+ Plesk='
125
+ ____ _ _
126
+ | _ \| | ___ ___| | __
127
+ | |_) | |/ _ \/ __| |/ /
128
+ | __/| | __/\__ \ <
129
+ |_| |_|\___||___/_|\_\
130
+
131
+ '
132
+ aaPanel='
133
+ ____ _
134
+ __ _ __ _| _ \ __ _ _ __ ___| |
135
+ / _` |/ _` | |_) / _` | `_ \ / _ \ |
136
+ | (_| | (_| | __/ (_| | | | | __/ |
137
+ \__,_|\__,_|_| \__,_|_| |_|\___|_|
138
+
139
+ '
140
+ InstallcPanel='
141
+ ___ _ _ _ ____ _
142
+ |_ _|_ __ ___| |_ __ _| | | ___| _ \ __ _ ___ _ __ | |
143
+ | || `_ \/ __| __/ _` | | | / __| |_) / _` |/ _ \ `_ \| |
144
+ | || | | \__ \ || (_| | | | | (__| __/ (_| | __/ | | | |
145
+ |___|_| |_|___/\__\__,_|_|_| \___|_| \__,_|\___|_| |_|_|
146
+
147
+ '
148
+ InstallPlesk='
149
+ ___ _ _ _ ____ _ _
150
+ |_ _|_ __ ___| |_ __ _| | | | _ \| | ___ ___| | __
151
+ | || `_ \/ __| __/ _` | | | | |_) | |/ _ \/ __| |/ /
152
+ | || | | \__ \ || (_| | | | | __/| | __/\__ \ <
153
+ |___|_| |_|___/\__\__,_|_|_| |_| |_|\___||___/_|\_\
154
+
155
+ '
156
+ InstallaaPanel='
157
+ ___ _ _ _ ____ _
158
+ |_ _|_ __ ___| |_ __ _| | | __ _ __ _| _ \ __ _ _ __ ___| |
159
+ | || `_ \/ __| __/ _` | | | / _` |/ _` | |_) / _` | `_ \ / _ \ |
160
+ | || | | \__ \ || (_| | | | | (_| | (_| | __/ (_| | | | | __/ |
161
+ |___|_| |_|___/\__\__,_|_|_| \__,_|\__,_|_| \__,_|_| |_|\___|_|
162
+
163
+ '
164
+ Tools='
165
+ ____ _____ _
166
+ / ___| ___ _ ____ _____ _ __ |_ _|__ ___ | |___
167
+ \___ \ / _ \ `__\ \ / / _ \ `__| | |/ _ \ / _ \| / __|
168
+ ___) | __/ | \ V / __/ | | | (_) | (_) | \__ \
169
+ |____/ \___|_| \_/ \___|_| |_|\___/ \___/|_|___/
170
+
171
+ '
172
+ CSF='
173
+ ____ _ ____ ____ _____
174
+ / ___| ___| |_ _ _ _ __ / ___/ ___|| ___|
175
+ \___ \ / _ \ __| | | | `_ \ | | \___ \| |_
176
+ ___) | __/ |_| |_| | |_) | | |___ ___) | _|
177
+ |____/ \___|\__|\__,_| .__/ \____|____/|_|
178
+ |_|
179
+
180
+ '
181
+ Plugins='
182
+ ___ _ _ _ ____ _ _
183
+ |_ _|_ __ ___| |_ __ _| | | | _ \| |_ _ __ _(_)_ __ ___
184
+ | || `_ \/ __| __/ _` | | | | |_) | | | | |/ _` | | `_ \/ __|
185
+ | || | | \__ \ || (_| | | | | __/| | |_| | (_| | | | | \__ \
186
+ |___|_| |_|___/\__\__,_|_|_| |_| |_|\__,_|\__, |_|_| |_|___/
187
+ |___/
188
+
189
+ '
190
+ CloudLinux='
191
+ ____ _ ____ _ _ _ _
192
+ / ___| ___| |_ _ _ _ __ / ___| | ___ _ _ __| | | (_)_ __ _ ___ __
193
+ \___ \ / _ \ __| | | | `_ \ | | | |/ _ \| | | |/ _` | | | | `_ \| | | \ \/ /
194
+ ___) | __/ |_| |_| | |_) | | |___| | (_) | |_| | (_| | |___| | | | | |_| |> <
195
+ |____/ \___|\__|\__,_| .__/ \____|_|\___/ \__,_|\__,_|_____|_|_| |_|\__,_/_/\_\
196
+ |_|
197
+
198
+ '
199
+ Advanced='
200
+ _ _ _ _____ _
201
+ / \ __| |_ ____ _ _ __ ___ ___ __| | |_ _|__ ___ | |___
202
+ / _ \ / _` \ \ / / _` | `_ \ / __/ _ \/ _` | | |/ _ \ / _ \| / __|
203
+ / ___ \ (_| |\ V / (_| | | | | (_| __/ (_| | | | (_) | (_) | \__ \
204
+ /_/ \_\__,_| \_/ \__,_|_| |_|\___\___|\__,_| |_|\___/ \___/|_|___/
205
+
206
+ '
207
+ FTP='
208
+ ____ _ _____ _____ ____ ____
209
+ / ___| ___| |_ _ _ _ __ | ___|_ _| _ \ / ___| ___ _ ____ _____ _ __
210
+ \___ \ / _ \ __| | | | `_ \ | |_ | | | |_) | \___ \ / _ \ `__\ \ / / _ \ `__|
211
+ ___) | __/ |_| |_| | |_) | | _| | | | __/ ___) | __/ | \ V / __/ |
212
+ |____/ \___|\__|\__,_| .__/ |_| |_| |_| |____/ \___|_| \_/ \___|_|
213
+ |_|
214
+
215
+ '
216
+ Management='
217
+ ____ _ __ __ _
218
+ / ___| ___| |_ _ _ _ __ | \/ | __ _ _ __ __ _ __ _ ___ _ __ ___ ___ _ __ | |_
219
+ \___ \ / _ \ __| | | | `_ \ | |\/| |/ _` | `_ \ / _` |/ _` |/ _ \ `_ ` _ \ / _ \ `_ \| __|
220
+ ___) | __/ |_| |_| | |_) | | | | | (_| | | | | (_| | (_| | __/ | | | | | __/ | | | |_
221
+ |____/ \___|\__|\__,_| .__/ |_| |_|\__,_|_| |_|\__,_|\__, |\___|_| |_| |_|\___|_| |_|\__|
222
+ |_| |___/
223
+
224
+ '
225
+ WebServer='
226
+ __ __ _ ____
227
+ \ \ / /__| |__/ ___| ___ _ ____ _____ _ __
228
+ \ \ /\ / / _ \ `_ \___ \ / _ \ `__\ \ / / _ \ `__|
229
+ \ V V / __/ |_) |__) | __/ | \ V / __/ |
230
+ \_/\_/ \___|_.__/____/ \___|_| \_/ \___|_|
231
+
232
+ '
233
+ Mysql='
234
+ ____ _ __ __ _
235
+ / ___| ___| |_ _ _ _ __ | \/ |_ _ ___ __ _| |
236
+ \___ \ / _ \ __| | | | `_ \ | |\/| | | | / __|/ _` | |
237
+ ___) | __/ |_| |_| | |_) | | | | | |_| \__ \ (_| | |
238
+ |____/ \___|\__|\__,_| .__/ |_| |_|\__, |___/\__, |_|
239
+ |_| |___/ |_|
240
+
241
+ '
242
+ Redis='
243
+ ____ _ ____ _ _
244
+ / ___| ___| |_ _ _ _ __ | _ \ ___ __| (_)___
245
+ \___ \ / _ \ __| | | | `_ \ | |_) / _ \/ _` | / __|
246
+ ___) | __/ |_| |_| | |_) | | _ < __/ (_| | \__ \
247
+ |____/ \___|\__|\__,_| .__/ |_| \_\___|\__,_|_|___/
248
+ |_|
249
+
250
+ '
251
+ Memcached='
252
+ ____ _ __ __ _ _
253
+ / ___| ___| |_ _ _ _ __ | \/ | ___ _ __ ___ ___ __ _ ___| |__ ___ __| |
254
+ \___ \ / _ \ __| | | | `_ \ | |\/| |/ _ \ `_ ` _ \ / __/ _` |/ __| `_ \ / _ \/ _` |
255
+ ___) | __/ |_| |_| | |_) | | | | | __/ | | | | | (_| (_| | (__| | | | __/ (_| |
256
+ |____/ \___|\__|\__,_| .__/ |_| |_|\___|_| |_| |_|\___\__,_|\___|_| |_|\___|\__,_|
257
+ |_|
258
+
259
+ '
260
+
261
+
262
+ # main menu
263
+ while true; do
264
+ clear
265
+ echo -e "\033[0;32m${message}\033[0m"
266
+ echo -e "\033[34minformation Server\033[0m"
267
+ information
268
+ echo
269
+ print_y "Which control panel do you want to install?"
270
+ print_g "1) cPanel"
271
+ print_g "2) Plesk"
272
+ print_g "3) aaPanel"
273
+ print_g "4) Exit"
274
+ validate_menu_input "$(print_y 'Enter your choice (1-4) : ')" 1 4
275
+ CP_CHOICE=$INPUT
276
+
277
+ if [ $CP_CHOICE -eq 4 ]; then
278
+ clear
279
+ exit
280
+ fi
281
+ # sub-menu for cPanel
282
+ if [ $CP_CHOICE -eq 1 ]; then
283
+ clear
284
+ while true; do
285
+ echo -e "\033[0;32m${cPanel}\033[0m"
286
+ print_y "What do you want to do?"
287
+ print_g "1) Install cPanel"
288
+ print_g "2) Server Tools [4]"
289
+ print_g "3) Setup CSF [4]"
290
+ print_g "4) install Plugins [8]"
291
+ print_g "5) Setup CloudLinux [7]"
292
+ print_g "6) Setup FTP Server [3]"
293
+ print_g "7) Advanced Tools [4]"
294
+ print_g "8) Back to Menu"
295
+ validate_menu_input "$(print_y 'Enter your choice (1-8) : ')" 1 8
296
+ CP_ACTION=$INPUT
297
+
298
+ if [ $CP_ACTION -eq 8 ]; then
299
+ clear
300
+ break
301
+ fi
302
+
303
+ # Install cPanel
304
+ if [ $CP_ACTION -eq 1 ]; then
305
+ clear
306
+ echo -e "\033[0;32m${InstallcPanel}\033[0m"
307
+ validate_yn_input "$(print_y 'Are you sure you want to Install cPanel?(y/n) :')"
308
+ if [ $INPUT = "y" ]; then
309
+ cd /home && curl -o latest -L https://securedownloads.cpanel.net/latest && sh latest
310
+ fi
311
+ fi
312
+
313
+ # Server Tools
314
+ if [ $CP_ACTION -eq 2 ]; then
315
+ clear
316
+ echo -e "\033[0;32m${Tools}\033[0m"
317
+ validate_yn_input "$(print_y 'Are you sure you want to Server Tools?(y/n) :')"
318
+ if [ $INPUT = "y" ]; then
319
+ while true; do
320
+ print_g "1) Change Nameserver"
321
+ print_g "2) Change Hostname"
322
+ print_g "3) Change SSH Port"
323
+ print_g "4) Change Password (root)"
324
+ print_g "5) Back to Menu"
325
+ validate_menu_input "$(print_y 'Enter your choice (1-5) : ')" 1 5
326
+ ST_ACTION=$INPUT
327
+
328
+ # Change Nameserver
329
+ if [ $ST_ACTION -eq 1 ]; then
330
+ clear
331
+ validate_yn_input "$(print_y 'Are you sure you want to change the Nameserver?(y/n) :')"
332
+ if [ $INPUT = "y" ]; then
333
+ read -p "Enter Primary Nameserver: " PRIMARY_NS
334
+ read -p "Enter Secondary Nameserver: " SECONDARY_NS
335
+ if [ -f /etc/resolv.conf ]; then
336
+ sed -i 's/^nameserver/#nameserver/g' /etc/resolv.conf
337
+ echo "nameserver $PRIMARY_NS" >> /etc/resolv.conf
338
+ echo "nameserver $SECONDARY_NS" >> /etc/resolv.conf
339
+ print_b "Nameserver Changed To -> [ "$PRIMARY_NS" - "$SECONDARY_NS" ]"
340
+ fi
341
+ fi
342
+ fi
343
+
344
+ # Change hostname
345
+ if [ $ST_ACTION -eq 2 ]; then
346
+ clear
347
+ validate_yn_input "$(print_y 'Are you sure you want to change the Hostname?(y/n) :')"
348
+ if [ $INPUT = "y" ]; then
349
+ read -rp "Enter your Hostname : " HOSTNAME
350
+ hostnamectl set-hostname $HOSTNAME
351
+ print_b "Hostname Changed To -> "$HOSTNAME""
352
+ fi
353
+ fi
354
+
355
+ # Change SSH Port
356
+ if [ $ST_ACTION -eq 3 ]; then
357
+ clear
358
+ validate_yn_input "$(print_y 'Are you sure you want to Change SSH Port?(y/n) :')"
359
+ if [ $INPUT = "y" ]; then
360
+ read -rp "Enter new SSH port : " NEW_PORT
361
+ sudo sed -i "s/^#*Port 22/Port $NEW_PORT/" /etc/ssh/sshd_config
362
+ service sshd restart
363
+ print_b "SSH Port Changed To -> "$NEW_PORT""
364
+ fi
365
+ fi
366
+
367
+ # Change Password (root)
368
+ if [ $ST_ACTION -eq 4 ]; then
369
+ clear
370
+ validate_yn_input "$(print_y 'Are you sure you want to Change Password Server?(y/n) :')"
371
+ if [ $INPUT = "y" ]; then
372
+ if [ $(whoami) = "root" ]; then
373
+ passwd root
374
+ else
375
+ sudo sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config && sudo systemctl restart ssh && sudo passwd
376
+ fi
377
+ print_b "Password Changed (root) Successfully"
378
+ fi
379
+ fi
380
+ if [ $ST_ACTION -eq 5 ]; then
381
+ clear
382
+ break
383
+ fi
384
+ done
385
+ fi
386
+ fi
387
+
388
+ # Setup CSF
389
+ if [ $CP_ACTION -eq 3 ]; then
390
+ clear
391
+ echo -e "\033[0;32m${CSF}\033[0m"
392
+ validate_yn_input "$(print_y 'Are you sure you want to Setup CSF?(y/n) :')"
393
+ if [ $INPUT = "y" ]; then
394
+ while true; do
395
+ print_g "1) Install CSF"
396
+ print_g "2) CSF Configuration"
397
+ print_g "3) CSF Blocklists Configuration"
398
+ print_g "4) Unblock Telegram IPs"
399
+ print_g "5) Uninstall CSF"
400
+ print_g "6) Back to Menu"
401
+ validate_menu_input "$(print_y 'Enter your choice (1-6) : ')" 1 6
402
+ CSF_ACTION=$INPUT
403
+
404
+ # Install CSF
405
+ if [ $CSF_ACTION -eq 1 ]; then
406
+ clear
407
+ validate_yn_input "$(print_y 'Are you sure you want to Install CSF?(y/n) :')"
408
+ if [ $INPUT = "y" ]; then
409
+ cd /usr/src ; rm -fv csf.tgz ; wget https://download.configserver.com/csf.tgz ; tar -xzf csf.tgz ; cd csf ; sh install.sh ; perl /usr/local/csf/bin/csftest.pl ; cd
410
+ print_g "ConfigServer Security & Firewall (CSF) Successfully Installed"
411
+ fi
412
+ fi
413
+
414
+ #CSF Configuration
415
+ if [ $CSF_ACTION -eq 2 ]; then
416
+ clear
417
+ validate_yn_input "$(print_y 'Are you sure you want to Configuration CSF?(y/n) :')"
418
+ if [ $INPUT = "y" ]; then
419
+ # Set the parameters
420
+ TESTING="0"
421
+ CT_LIMIT="100"
422
+ CT_INTERVAL="30"
423
+ CT_EMAIL_ALERT="1"
424
+ CT_PORTS="80,443,2083,2082,2087,20,21,25,110,113,123,465,993,995,22"
425
+ CT_BLOCK_TIME="3600"
426
+ CT_PERMANENT="1"
427
+ CONNLIMIT="22;5,443;20,80;20,20;20,21;20,25;20,110;20,113;20,123;20,465;20,993;20,995;20,2083;20,2082;20"
428
+ RESTRICT_SYSLOG="3"
429
+ DENY_IP_LIMIT="200"
430
+ PACKET_FILTER="1"
431
+ PORTFLOOD="1"
432
+ # Update the csf.conf file
433
+ sed -i "s/^TESTING=.*/TESTING=$TESTING/g" /etc/csf/csf.conf
434
+ sed -i "s/^CT_LIMIT=.*/CT_LIMIT=$CT_LIMIT/g" /etc/csf/csf.conf
435
+ sed -i "s/^CT_INTERVAL=.*/CT_INTERVAL=$CT_INTERVAL/g" /etc/csf/csf.conf
436
+ sed -i "s/^CT_EMAIL_ALERT=.*/CT_EMAIL_ALERT=$CT_EMAIL_ALERT/g" /etc/csf/csf.conf
437
+ sed -i "s/^CT_PORTS=.*/CT_PORTS=$CT_PORTS/g" /etc/csf/csf.conf
438
+ sed -i "s/^CT_BLOCK_TIME=.*/CT_BLOCK_TIME=$CT_BLOCK_TIME/g" /etc/csf/csf.conf
439
+ sed -i "s/^CT_PERMANENT=.*/CT_PERMANENT=$CT_PERMANENT/g" /etc/csf/csf.conf
440
+ sed -i "s/^CONNLIMIT=.*/CONNLIMIT=$CONNLIMIT/g" /etc/csf/csf.conf
441
+ sed -i "s/^RESTRICT_SYSLOG=.*/RESTRICT_SYSLOG=$RESTRICT_SYSLOG/g" /etc/csf/csf.conf
442
+ sed -i "s/^DENY_IP_LIMIT=.*/DENY_IP_LIMIT=$DENY_IP_LIMIT/g" /etc/csf/csf.conf
443
+ sed -i "s/^PACKET_FILTER=.*/PACKET_FILTER=$PACKET_FILTER/g" /etc/csf/csf.conf
444
+ sed -i "s/^PORTFLOOD=.*/PORTFLOOD=$PORTFLOOD/g" /etc/csf/csf.conf
445
+ print_b "CSF configuration is successfully."
446
+ fi
447
+ fi
448
+
449
+ # CSF Blocklists Configuration
450
+ if [ $CSF_ACTION -eq 3 ]; then
451
+ clear
452
+ validate_yn_input "$(print_y 'Are you sure you want to CSF Blocklists Configuration?(y/n) :')"
453
+ if [ $INPUT = "y" ]; then
454
+ while read line; do
455
+ # Check if the line starts with #
456
+ if [[ $line == \#* ]]; then
457
+ # Skip comment lines
458
+ continue
459
+ fi
460
+ # Split the line by | character
461
+ IFS='|' read -ra arr <<< "$line"
462
+ done < /etc/csf/csf.blocklists | sed 's/# Split the line by | character//'
463
+ print_b "CSF Blocklists Configuration is Successfully."
464
+ fi
465
+ fi
466
+
467
+ # Unblock Telegram IPs
468
+ if [ $CSF_ACTION -eq 4 ]; then
469
+ clear
470
+ validate_yn_input "$(print_y 'Are you sure you want to Unblock Telegram IPs?(y/n) :')"
471
+ if [ $INPUT = "y" ]; then
472
+ csf -a 149.154.168.0/22 ; csf -a 149.154.164.0/22 ; csf -a 149.154.172.0/22 ; csf -a 149.154.160.0/22 ; csf -a 91.108.4.0/22 ; csf -a 91.108.56.0/22 ; csf -a 91.108.16.0/22 ; csf -a 91.108.12.0/22 ; csf -a 91.108.8.0/22
473
+ print_b "Unblock Telegram IPs is Successfully."
474
+ fi
475
+ fi
476
+
477
+ # uninstall CSF
478
+ if [ $CSF_ACTION -eq 5 ]; then
479
+ clear
480
+ validate_yn_input "$(print_y 'Are you sure you want to Uninstall CSF?(y/n) :')"
481
+ if [ $INPUT = "y" ]; then
482
+ cd /etc/csf ; sh uninstall.sh
483
+ print_b "Uninstall CSF is Successfully."
484
+ fi
485
+ fi
486
+ if [ $CSF_ACTION -eq 6 ]; then
487
+ clear
488
+ break
489
+ fi
490
+ done
491
+ fi
492
+ fi
493
+
494
+ # Install Plugins
495
+ if [ $CP_ACTION -eq 4 ]; then
496
+ clear
497
+ echo -e "\033[0;32m${Plugins}\033[0m"
498
+ validate_yn_input "$(print_y 'Are you sure you want to Install Plugins?(y/n) :')"
499
+ if [ $INPUT = "y" ]; then
500
+ while true; do
501
+ print_g "1) Install LiteSpeed"
502
+ print_g "2) Install ImunifyAV"
503
+ print_g "3) Install SSL"
504
+ print_g "4) Install WHMReseller"
505
+ print_g "5) Install WP Toolkit"
506
+ print_g "6) Install PostgreSQL"
507
+ print_g "7) Install Softaculous"
508
+ print_g "8) Install SitePad"
509
+ print_g "9) Back to Menu"
510
+ validate_menu_input "$(print_y 'Enter your choice (1-9) : ')" 1 9
511
+ PG_ACTION=$INPUT
512
+
513
+ # Install LiteSpeed
514
+ if [ $PG_ACTION -eq 1 ]; then
515
+ clear
516
+ validate_yn_input "$(print_y 'Are you sure you want to Install LiteSpeed?(y/n) :')"
517
+ if [ $INPUT = "y" ]; then
518
+ cd /usr/src ; wget http://www.litespeedtech.com/packages/cpanel/lsws_whm_plugin_install.sh ; chmod 700 lsws_whm_plugin_install.sh ; ./lsws_whm_plugin_install.sh ; rm -f lsws_whm_plugin_install.sh ; cd
519
+ print_b "LiteSpeed Successfully Installed"
520
+ fi
521
+ fi
522
+
523
+ # Install ImunifyAV
524
+ if [ $PG_ACTION -eq 2 ]; then
525
+ clear
526
+ validate_yn_input "$(print_y 'Are you sure you want to Install ImunifyAV?(y/n) :')"
527
+ if [ $INPUT = "y" ]; then
528
+ wget https://repo.imunify360.cloudlinux.com/defence360/imav-deploy.sh ; bash imav-deploy.sh ; rm -rf /root/imav-deploy.sh
529
+ print_b "ImunifyAV Successfully Installed"
530
+ fi
531
+ fi
532
+
533
+ # Install SSL
534
+ if [ $PG_ACTION -eq 3 ]; then
535
+ clear
536
+ validate_yn_input "$(print_y 'Are you sure you want to Install SSL?(y/n) :')"
537
+ if [ $INPUT = "y" ]; then
538
+ /usr/local/cpanel/bin/checkallsslcerts ; /scripts/install_lets_encrypt_autossl_provider
539
+ print_b "Let's Encrypt Autossl (SSL) Successfully Installed"
540
+ fi
541
+ fi
542
+
543
+ # Install WHMReseller
544
+ if [ $PG_ACTION -eq 4 ]; then
545
+ clear
546
+ validate_yn_input "$(print_y 'Are you sure you want to Install WHMReseller?(y/n) :')"
547
+ if [ $INPUT = "y" ]; then
548
+ if [[ $(cat /etc/os-release | grep -w "ID") == *"centos"* ]]; then
549
+ yum install gcc-c++ -y ; cd /usr/local/cpanel/whostmgr/docroot/cgi ; wget http://deasoft.com/install.cpp ; g++ install.cpp -o install ; chmod 700 install ; ./install ; cd
550
+ print_b "WHMReseller Successfully Installed"
551
+ else
552
+ print_r "WHMReseller installation is only supported on CentOS."
553
+ fi
554
+ fi
555
+ fi
556
+
557
+ # Install WP Toolkit
558
+ if [ $PG_ACTION -eq 5 ]; then
559
+ clear
560
+ validate_yn_input "$(print_y 'Are you sure you want to Install WP Toolkit?(y/n) :')"
561
+ if [ $INPUT = "y" ]; then
562
+ if [ $WP_ACTION -eq 1 ]; then
563
+ sh <(curl https://wp-toolkit.plesk.com/cPanel/installer.sh || wget -O - https://wp-toolkit.plesk.com/cPanel/installer.sh)
564
+ print_b "WP Toolkit Successfully Installed"
565
+ fi
566
+ fi
567
+ fi
568
+
569
+ # Install PostgreSQL
570
+ if [ $PG_ACTION -eq 6 ]; then
571
+ clear
572
+ validate_yn_input "$(print_y 'Are you sure you want to Install PostgreSQL? (y/n):')"
573
+ if [ $INPUT = "y" ]; then
574
+ if rpm -q postgresql-server >/dev/null; then
575
+ # PostgreSQL is already installed, proceed with configuration steps
576
+ # Configuration steps go here
577
+ print_b "PostgreSQL is already installed."
578
+ else
579
+ # PostgreSQL is not installed, proceed with installation
580
+ if [[ $(cat /etc/os-release | grep -w "ID") == *"centos"* ]]; then
581
+ yum install postgresql-server -y
582
+ systemctl enable postgresql.service
583
+ systemctl start postgresql.service
584
+ /usr/local/cpanel/scripts/installpostgres
585
+ print_b "PostgreSQL Successfully Installed"
586
+ # Additional configuration steps go here
587
+ else
588
+ print_r "PostgreSQL installation is only supported on CentOS."
589
+ fi
590
+ fi
591
+ fi
592
+ fi
593
+
594
+ # Install Softaculous
595
+ if [ $PG_ACTION -eq 7 ]; then
596
+ clear
597
+ validate_yn_input "$(print_y 'Are you sure that ioncube is installed and active on your server?(y/n) :')"
598
+ if [ $INPUT = "y" ]; then
599
+ if php -m | grep -q ionCube ; then
600
+ wget -N http://files.softaculous.com/install.sh && chmod 755 install.sh && ./install.sh
601
+ print_b "Softaculous Successfully Installed"
602
+ else
603
+ print_r "Error: ionCube is not installed on your server.
604
+ Please go to this address to install and activate ionCube -> Home / Server Configuration / Tweak Settings -> PHP -> cPanel PHP loader"
605
+ fi
606
+ fi
607
+ fi
608
+
609
+ # Install SitePad
610
+ if [ $PG_ACTION -eq 8 ]; then
611
+ clear
612
+ validate_yn_input "$(print_y 'Are you sure that ioncube is installed and active on your server?(y/n) :')"
613
+ if [ $INPUT = "y" ]; then
614
+ if php -m | grep -q ionCube ; then
615
+ cd /usr/local/src/ ; rm -fv install.sh ; wget -N https://files.sitepad.com/install.sh ; chmod +x install.sh ; ./install.sh ; cd
616
+ print_b "SitePad Successfully Installed"
617
+ else
618
+ print_r "Error: ionCube is not installed on your server.
619
+ Please go to this address to install and activate ionCube -> Home / Server Configuration / Tweak Settings -> PHP -> cPanel PHP loader"
620
+ fi
621
+ fi
622
+ fi
623
+ if [ $PG_ACTION -eq 9 ]; then
624
+ clear
625
+ break
626
+ fi
627
+ done
628
+ fi
629
+ fi
630
+
631
+ # Setup CloudLinux
632
+ if [ $CP_ACTION -eq 5 ]; then
633
+ clear
634
+ echo -e "\033[0;32m${CloudLinux}\033[0m"
635
+ validate_yn_input "$(print_y 'Are you sure you want to Setup CloudLinux?(y/n) :')"
636
+ if [ $INPUT = "y" ]; then
637
+ while true; do
638
+ print_g "1) Install CloudLinux"
639
+ print_g "2) Install CageFS"
640
+ print_g "3) Install alt-php"
641
+ print_g "4) Install ea-php"
642
+ print_g "5) install mod-lsapi"
643
+ print_g "6) Install Python"
644
+ print_g "7) Install Ruby"
645
+ print_g "8) Install NodeJS"
646
+ print_g "9) Install MySQL Governor (not recommended)"
647
+ print_g "10) Back to Menu"
648
+ validate_menu_input "$(print_y 'Enter your choice (1-10) : ')" 1 10
649
+ CL_ACTION=$INPUT
650
+
651
+ # Install CloudLinux
652
+ if [ $CL_ACTION -eq 1 ]; then
653
+ clear
654
+ validate_yn_input "$(print_y 'Are you sure you want to Install CloudLinux?(y/n) :')"
655
+ if [ $INPUT = "y" ]; then
656
+ if [[ $(cat /etc/os-release | grep -w "ID") == *"centos"* ]]; then
657
+ wget https://repo.cloudlinux.com/cloudlinux/sources/cln/cldeploy -O cldeploy.sh
658
+ print_g "Get a 30-day CloudLinux License : https://www.cloudlinux.com/trial"
659
+ validate_yn_input "$(print_y 'Do you use the free 30-day License?(y/n) :')"
660
+ if [ $INPUT = "y" ]; then
661
+ read -rp "Enter your License : " License
662
+ sh cldeploy.sh -k "$License"
663
+ print_b "CloudLinux Successfully Installed, Please Reboot Your System"
664
+ else
665
+ print_g "Use your installation and activation command"
666
+ fi
667
+ else
668
+ print_r "CloudLinux installation is only supported on CentOS."
669
+ fi
670
+ fi
671
+ fi
672
+
673
+ # Install CageFS
674
+ if [ $CL_ACTION -eq 2 ]; then
675
+ clear
676
+ validate_yn_input "$(print_y 'Are you sure you want to Install CageFS?(y/n) :')"
677
+ if [ $INPUT = "y" ]; then
678
+ if [[ $(cat /etc/os-release | grep -w "ID") == *"cloudlinux"* ]]; then
679
+ yum install cagefs -y ; /usr/sbin/cagefsctl --init ; /usr/sbin/cagefsctl --enable-all
680
+ print_b "CageFS Successfully Installed"
681
+ else
682
+ print_r "CageFS installation is only supported on CentOS with CloudLinux."
683
+ fi
684
+ fi
685
+ fi
686
+
687
+ # Install alt-php
688
+ if [ $CL_ACTION -eq 3 ]; then
689
+ clear
690
+ validate_yn_input "$(print_y 'Are you sure you want to Install alt-php?(y/n) :')"
691
+ if [ $INPUT = "y" ]; then
692
+ if [[ $(cat /etc/os-release | grep -w "ID") == *"cloudlinux"* ]]; then
693
+ yum groupinstall alt-php -y ; yum update cagefs lvemanager -y ; yum groupupdate alt-php -y
694
+ print_b "alt-php Successfully Installed"
695
+ else
696
+ print_r "alt-php installation is only supported on CentOS."
697
+ fi
698
+ fi
699
+ fi
700
+
701
+ # Install ea-php
702
+ if [ $CL_ACTION -eq 4 ]; then
703
+ clear
704
+ validate_yn_input "$(print_y 'Are you sure you want to Install ea-php?(y/n) :')"
705
+ if [ $INPUT = "y" ]; then
706
+ if [[ $(cat /etc/os-release | grep -w "ID") == *"cloudlinux"* ]]; then
707
+ yum install ea-php82 -y ; yum install ea-php81 -y ; yum install ea-php80 -y ; yum install ea-php74 -y ; yum install ea-php73 -y ; yum install ea-php72 -y ; yum install ea-php71 -y ; yum install ea-php70 -y ; yum install ea-php51 -y ; yum install ea-php52 -y ; yum install ea-php53 -y ; yum install ea-php54 -y ; yum install ea-php55 -y ; yum install ea-php56 -y ; yum update cagefs lvemanager
708
+ print_b "ea-php Successfully Installed"
709
+ else
710
+ print_r "ea-php installation is only supported on CentOS."
711
+ fi
712
+ fi
713
+ fi
714
+
715
+ # Install mod-lsapi
716
+ if [ $CL_ACTION -eq 5 ]; then
717
+ clear
718
+ validate_yn_input "$(print_y 'Are you sure you want to Install mod-lsapi?(y/n) :')"
719
+ if [ $INPUT = "y" ]; then
720
+ if [[ $(cat /etc/os-release | grep -w "ID") == *"cloudlinux"* ]]; then
721
+ yum install liblsapi liblsapi-devel ; yum install ea-apache24-mod_lsapi ; /usr/bin/switch_mod_lsapi --setup ; service httpd restart
722
+ print_b "mod-lsapi Successfully Installed"
723
+ else
724
+ print_r "mod-lsapi installation is only supported on CentOS."
725
+ fi
726
+ fi
727
+ fi
728
+
729
+ # Install Python
730
+ if [ $CL_ACTION -eq 6 ]; then
731
+ clear
732
+ validate_yn_input "$(print_y 'Are you sure you want to Install Python?(y/n) :')"
733
+ if [ $INPUT = "y" ]; then
734
+ if [[ $(cat /etc/os-release | grep -w "ID") == *"cloudlinux"* ]]; then
735
+ yum -y groupinstall "Development Tools"
736
+ yum -y install openssl-devel bzip2-devel libffi-devel
737
+ yum groupinstall alt-python -y
738
+ yum install lvemanager lve-utils alt-python-virtualenv
739
+ yum install lve-utils lvemanager alt-python-virtualenv alt-mod-passenger -y
740
+ yum install lvemanager alt-python-virtualenv
741
+ yum install alt-python27-devel -y
742
+ print_b "Python Successfully Installed"
743
+ else
744
+ print_r "Python installation is only supported on CentOS."
745
+ fi
746
+ fi
747
+ fi
748
+
749
+ # Install Ruby
750
+ if [ $CL_ACTION -eq 7 ]; then
751
+ clear
752
+ validate_yn_input "$(print_y 'Are you sure you want to Install Ruby?(y/n) :')"
753
+ if [ $INPUT = "y" ]; then
754
+ if [[ $(cat /etc/os-release | grep -w "ID") == *"cloudlinux"* ]]; then
755
+ yum grouplist | grep alt-ruby
756
+ yum groupinstall alt-ruby -y
757
+ yum install lvemanager alt-python-virtualenv
758
+ yum install ea-ruby24-mod_passenger -y
759
+ print_b "Ruby Successfully Installed"
760
+ else
761
+ print_r "Ruby installation is only supported on CentOS."
762
+ fi
763
+ fi
764
+ fi
765
+
766
+ # Install NodeJS
767
+ if [ $CL_ACTION -eq 8 ]; then
768
+ clear
769
+ validate_yn_input "$(print_y 'Are you sure you want to Install NodeJS?(y/n) :')"
770
+ if [ $INPUT = "y" ]; then
771
+ if [[ $(cat /etc/os-release | grep -w "ID") == *"cloudlinux"* ]]; then
772
+ yum groupinstall alt-nodejs -y
773
+ yum install lvemanager lve-utils -y
774
+ yum install lvemanager lve-utils alt-mod-passenger -y
775
+ print_b "NodeJS Successfully Installed"
776
+ else
777
+ print_r "NodeJS installation is only supported on CentOS."
778
+ fi
779
+ fi
780
+ fi
781
+
782
+ # Install MySQL Governor
783
+ if [ $CL_ACTION -eq 9 ]; then
784
+ clear
785
+ validate_yn_input "$(print_y 'Are you sure you want to Install MySQL Governor?(y/n) :')"
786
+ if [ $INPUT = "y" ]; then
787
+ if [[ $(cat /etc/os-release | grep -w "ID") == *"cloudlinux"* ]]; then
788
+ yum remove db-governor db-governor-mysql
789
+ yum install governor-mysql -y
790
+ read -rp "Enter Mysql Version : " MysqlV
791
+ /usr/share/lve/dbgovernor/mysqlgovernor.py --mysql-version="$MysqlV"
792
+ /usr/share/lve/dbgovernor/mysqlgovernor.py --install --yes
793
+ /usr/share/lve/dbgovernor/mysqlgovernor.py --dbupdate
794
+ service db_governor restart
795
+ service db_governor start
796
+ print_b "MySQL Governor Successfully Installed"
797
+ else
798
+ print_r "MySQL Governor installation is only supported on CentOS."
799
+ fi
800
+ fi
801
+ fi
802
+ if [ $CL_ACTION -eq 10 ]; then
803
+ clear
804
+ break
805
+ fi
806
+ done
807
+ fi
808
+ fi
809
+
810
+ # Setup FTP Server
811
+ if [ $CP_ACTION -eq 6 ]; then
812
+ clear
813
+ echo -e "\033[0;32m${FTP}\033[0m"
814
+ validate_yn_input "$(print_y 'Are you sure you want to Setup FTP Server?(y/n) :')"
815
+ if [ $INPUT = "y" ]; then
816
+ while true; do
817
+ print_g "1) Pure-FTPd FTP Server (recommended)"
818
+ print_g "2) ProFTP FTP Server"
819
+ print_g "3) Disable FTP Services"
820
+ print_g "4) Back to Menu"
821
+ validate_menu_input "$(print_y 'Enter your choice (1-4) : ')" 1 4
822
+ FTP_ACTION=$INPUT
823
+ if [ $FTP_ACTION -eq 1 ]; then
824
+ /usr/local/cpanel/scripts/setupftpserver pure-ftpd
825
+ print_b "Pure-FTPd Successfully Configured"
826
+ sleep 5s
827
+ clear
828
+ break
829
+ elif [ $FTP_ACTION -eq 2 ]; then
830
+ /usr/local/cpanel/scripts/setupftpserver proftpd
831
+ print_b "ProFTP Successfully Configured"
832
+ sleep 5s
833
+ clear
834
+ break
835
+ elif [ $FTP_ACTION -eq 3 ]; then
836
+ /usr/local/cpanel/scripts/setupftpserver disabled
837
+ print_b "FTP Services Successfully Disabled"
838
+ sleep 5s
839
+ clear
840
+ break
841
+ elif [ $FTP_ACTION -eq 4 ]; then
842
+ clear
843
+ break
844
+ fi
845
+ done
846
+ fi
847
+ fi
848
+
849
+ # Advanced Tools
850
+ if [ $CP_ACTION -eq 7 ]; then
851
+ clear
852
+ echo -e "\033[0;32m${Advanced}\033[0m"
853
+ validate_yn_input "$(print_y 'Are you sure you want to Advanced Tools?(y/n) :')"
854
+ if [ $INPUT = "y" ]; then
855
+ while true; do
856
+ print_g "1) Restore Backup"
857
+ print_g "2) Clear RAM Cache"
858
+ print_g "3) Delete all error_log"
859
+ print_g "4) Clear /tmp"
860
+ print_g "5) Back to Menu"
861
+ validate_menu_input "$(print_y 'Enter your choice (1-5) : ')" 1 5
862
+ AT_ACTION=$INPUT
863
+
864
+ #Restore Backup
865
+ if [ $AT_ACTION -eq 1 ]; then
866
+ clear
867
+ validate_yn_input "$(print_y 'Are you sure you want to restore the user backup?(y/n) :')"
868
+ if [ $INPUT = "y" ]; then
869
+ read -rp "Enter the location home Directory (by default /home) : " directory
870
+ if [ -z "$directory" ]; then
871
+ cd /home
872
+ read -rp "Enter Link Backup : " BackUP
873
+ print_g "Downloading the backup file..."
874
+ wget "$BackUP"
875
+ read -rp "Enter NameFile Backup : " FileBackup
876
+ print_g "Restoring the backup file..."
877
+ /usr/local/cpanel/scripts/restorepkg "$FileBackup"
878
+ else
879
+ cd "$directory"
880
+ read -rp "Enter Link Backup : " BackUP
881
+ print_g "Downloading the backup file..."
882
+ wget "$BackUP"
883
+ read -rp "Enter NameFile Backup : " FileBackup
884
+ print_g "Restoring the backup file..."
885
+ /usr/local/cpanel/scripts/restorepkg "$FileBackup"
886
+ fi
887
+ fi
888
+ fi
889
+
890
+ # Clear RAM Cache
891
+ if [ $AT_ACTION -eq 2 ]; then
892
+ clear
893
+ validate_yn_input "$(print_y 'Are you sure you want to Clear RAM Cache?(y/n) :')"
894
+ if [ $INPUT = "y" ]; then
895
+ sync; echo 1 > /proc/sys/vm/drop_caches ; sync; echo 2 > /proc/sys/vm/drop_caches ; sync; echo 3 > /proc/sys/vm/drop_caches ; swapoff -a ; swapon -a
896
+ print_b "RAM Cache Successfully Cleared"
897
+ fi
898
+ fi
899
+
900
+ # Delete all error_log
901
+ if [ $AT_ACTION -eq 3 ]; then
902
+ clear
903
+ validate_yn_input "$(print_y 'Are you sure you want to Clear RAM Cache?(y/n) :')"
904
+ if [ $INPUT = "y" ]; then
905
+ /usr/bin/find /root*/* -type f -name error_log -exec du -sh {} \;
906
+ /usr/bin/find /root*/* -type f -name error_log -exec rm -rf {} \;
907
+ /usr/bin/find /home*/*/public_html/*/* -type f -name error_log -exec du -sh {} \;
908
+ /usr/bin/find /home*/*/public_html/*/* -type f -name error_log -exec rm -rf {} \;
909
+ print_b "all error_log Successfully Delete"
910
+ fi
911
+ fi
912
+
913
+ # Clear /tmp
914
+ if [ $AT_ACTION -eq 4 ]; then
915
+ clear
916
+ validate_yn_input "$(print_y 'Are you sure you want to Clear /tmp?(y/n) :')"
917
+ if [ $INPUT = "y" ]; then
918
+ if [[ $(cat /etc/os-release | grep -w "ID") == *"centos"* ]]; then
919
+ yum install tmpwatch -y ; /usr/sbin/tmpwatch --mtime --all 6 /tmp
920
+ print_b "/tmp Successfully Cleared"
921
+ elif [[ $(cat /etc/os-release | grep -w "ID") == *"ubuntu"* ]]; then
922
+ apt install tmpreaper -y ; /usr/sbin/tmpwatch --mtime --all 6 /tmp
923
+ print_b "/tmp Successfully Cleared"
924
+ fi
925
+ fi
926
+ fi
927
+ if [ $AT_ACTION -eq 5 ]; then
928
+ clear
929
+ break
930
+ fi
931
+ done
932
+ fi
933
+ fi
934
+ done
935
+ fi
936
+
937
+ # sub-menu for Plesk
938
+ if [ $CP_CHOICE -eq 2 ]; then
939
+ clear
940
+ while true; do
941
+ echo -e "\033[0;32m${Plesk}\033[0m"
942
+ print_y "What do you want to do?"
943
+ print_g "1) Install Plesk"
944
+ print_g "2) Server Tools [4]"
945
+ print_g "3) Setup CSF [4]"
946
+ print_g "4) install Plugins [4]"
947
+ print_g "5) Advanced Tools [4]"
948
+ print_g "6) Back to Menu"
949
+ validate_menu_input "$(print_y 'Enter your choice (1-6) : ')" 1 6
950
+ PK_ACTION=$INPUT
951
+
952
+ if [ $PK_ACTION -eq 6 ]; then
953
+ clear
954
+ break
955
+ fi
956
+
957
+ # Install Plesk
958
+ if [ $PK_ACTION -eq 1 ]; then
959
+ clear
960
+ echo -e "\033[0;32m${InstallPlesk}\033[0m"
961
+ validate_yn_input "$(print_y 'Are you sure you want to Install Plesk?(y/n) :')"
962
+ if [ $INPUT = "y" ]; then
963
+ sh <(curl https://autoinstall.plesk.com/one-click-installer || wget -O - https://autoinstall.plesk.com/one-click-installer)
964
+ fi
965
+ fi
966
+
967
+ # Server Tools
968
+ if [ $PK_ACTION -eq 2 ]; then
969
+ clear
970
+ echo -e "\033[0;32m${Tools}\033[0m"
971
+ validate_yn_input "$(print_y 'Are you sure you want to Server Tools?(y/n) :')"
972
+ if [ $INPUT = "y" ]; then
973
+ while true; do
974
+ print_g "1) Change Nameserver"
975
+ print_g "2) Change Hostname"
976
+ print_g "3) Change SSH Port"
977
+ print_g "4) Change Password (root)"
978
+ print_g "5) Back to Menu"
979
+ validate_menu_input "$(print_y 'Enter your choice (1-5) : ')" 1 5
980
+ ST_ACTION=$INPUT
981
+
982
+ # Change Nameserver
983
+ if [ $ST_ACTION -eq 1 ]; then
984
+ clear
985
+ validate_yn_input "$(print_y 'Are you sure you want to change the Nameserver?(y/n) :')"
986
+ if [ $INPUT = "y" ]; then
987
+ read -p "Enter Primary Nameserver: " PRIMARY_NS
988
+ read -p "Enter Secondary Nameserver: " SECONDARY_NS
989
+ if [ -f /etc/resolv.conf ]; then
990
+ sed -i 's/^nameserver/#nameserver/g' /etc/resolv.conf
991
+ echo "nameserver $PRIMARY_NS" >> /etc/resolv.conf
992
+ echo "nameserver $SECONDARY_NS" >> /etc/resolv.conf
993
+ print_b "Nameserver Changed To -> [ "$PRIMARY_NS" - "$SECONDARY_NS" ]"
994
+ fi
995
+ fi
996
+ fi
997
+
998
+ # Change hostname
999
+ if [ $ST_ACTION -eq 2 ]; then
1000
+ clear
1001
+ validate_yn_input "$(print_y 'Are you sure you want to change the Hostname?(y/n) :')"
1002
+ if [ $INPUT = "y" ]; then
1003
+ read -rp "Enter your Hostname : " HOSTNAME
1004
+ hostnamectl set-hostname $HOSTNAME
1005
+ print_b "Hostname Changed To -> "$HOSTNAME""
1006
+ fi
1007
+ fi
1008
+
1009
+ # Change SSH Port
1010
+ if [ $ST_ACTION -eq 3 ]; then
1011
+ clear
1012
+ validate_yn_input "$(print_y 'Are you sure you want to Change SSH Port?(y/n) :')"
1013
+ if [ $INPUT = "y" ]; then
1014
+ read -rp "Enter new SSH port : " NEW_PORT
1015
+ sudo sed -i "s/^#*Port 22/Port $NEW_PORT/" /etc/ssh/sshd_config
1016
+ service sshd restart
1017
+ print_b "SSH Port Changed To -> "$NEW_PORT""
1018
+ fi
1019
+ fi
1020
+
1021
+ # Change Password (root)
1022
+ if [ $ST_ACTION -eq 4 ]; then
1023
+ clear
1024
+ validate_yn_input "$(print_y 'Are you sure you want to Change Password Server?(y/n) :')"
1025
+ if [ $INPUT = "y" ]; then
1026
+ if [ $(whoami) = "root" ]; then
1027
+ passwd root
1028
+ else
1029
+ sudo sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config && sudo systemctl restart ssh && sudo passwd
1030
+ fi
1031
+ print_b "Password Changed (root) Successfully"
1032
+ fi
1033
+ fi
1034
+ if [ $ST_ACTION -eq 5 ]; then
1035
+ clear
1036
+ break
1037
+ fi
1038
+ done
1039
+ fi
1040
+ fi
1041
+
1042
+ # Setup CSF
1043
+ if [ $PK_ACTION -eq 3 ]; then
1044
+ clear
1045
+ echo -e "\033[0;32m${CSF}\033[0m"
1046
+ validate_yn_input "$(print_y 'Are you sure you want to Setup CSF?(y/n) :')"
1047
+ if [ $INPUT = "y" ]; then
1048
+ while true; do
1049
+ print_g "1) Install CSF"
1050
+ print_g "2) CSF Configuration"
1051
+ print_g "3) CSF Blocklists Configuration"
1052
+ print_g "4) Unblock Telegram IPs"
1053
+ print_g "5) Uninstall CSF"
1054
+ print_g "6) Back to Menu"
1055
+ validate_menu_input "$(print_y 'Enter your choice (1-6) : ')" 1 6
1056
+ CSF_ACTION=$INPUT
1057
+
1058
+ # Install CSF
1059
+ if [ $CSF_ACTION -eq 1 ]; then
1060
+ clear
1061
+ validate_yn_input "$(print_y 'Are you sure you want to Install CSF?(y/n) :')"
1062
+ if [ $INPUT = "y" ]; then
1063
+ cd /usr/src ; rm -fv csf.tgz ; wget https://download.configserver.com/csf.tgz ; tar -xzf csf.tgz ; cd csf ; sh install.sh ; perl /usr/local/csf/bin/csftest.pl ; cd
1064
+ print_g "ConfigServer Security & Firewall (CSF) Successfully Installed"
1065
+ fi
1066
+ fi
1067
+
1068
+ #CSF Configuration
1069
+ if [ $CSF_ACTION -eq 2 ]; then
1070
+ clear
1071
+ validate_yn_input "$(print_y 'Are you sure you want to Configuration CSF?(y/n) :')"
1072
+ if [ $INPUT = "y" ]; then
1073
+ # Set the parameters
1074
+ TESTING="0"
1075
+ CT_LIMIT="100"
1076
+ CT_INTERVAL="30"
1077
+ CT_EMAIL_ALERT="1"
1078
+ CT_PORTS="80,443,2083,2082,2087,20,21,25,110,113,123,465,993,995,22"
1079
+ CT_BLOCK_TIME="3600"
1080
+ CT_PERMANENT="1"
1081
+ CONNLIMIT="22;5,443;20,80;20,20;20,21;20,25;20,110;20,113;20,123;20,465;20,993;20,995;20,2083;20,2082;20"
1082
+ RESTRICT_SYSLOG="3"
1083
+ DENY_IP_LIMIT="200"
1084
+ PACKET_FILTER="1"
1085
+ PORTFLOOD="1"
1086
+ # Update the csf.conf file
1087
+ sed -i "s/^TESTING=.*/TESTING=$TESTING/g" /etc/csf/csf.conf
1088
+ sed -i "s/^CT_LIMIT=.*/CT_LIMIT=$CT_LIMIT/g" /etc/csf/csf.conf
1089
+ sed -i "s/^CT_INTERVAL=.*/CT_INTERVAL=$CT_INTERVAL/g" /etc/csf/csf.conf
1090
+ sed -i "s/^CT_EMAIL_ALERT=.*/CT_EMAIL_ALERT=$CT_EMAIL_ALERT/g" /etc/csf/csf.conf
1091
+ sed -i "s/^CT_PORTS=.*/CT_PORTS=$CT_PORTS/g" /etc/csf/csf.conf
1092
+ sed -i "s/^CT_BLOCK_TIME=.*/CT_BLOCK_TIME=$CT_BLOCK_TIME/g" /etc/csf/csf.conf
1093
+ sed -i "s/^CT_PERMANENT=.*/CT_PERMANENT=$CT_PERMANENT/g" /etc/csf/csf.conf
1094
+ sed -i "s/^CONNLIMIT=.*/CONNLIMIT=$CONNLIMIT/g" /etc/csf/csf.conf
1095
+ sed -i "s/^RESTRICT_SYSLOG=.*/RESTRICT_SYSLOG=$RESTRICT_SYSLOG/g" /etc/csf/csf.conf
1096
+ sed -i "s/^DENY_IP_LIMIT=.*/DENY_IP_LIMIT=$DENY_IP_LIMIT/g" /etc/csf/csf.conf
1097
+ sed -i "s/^PACKET_FILTER=.*/PACKET_FILTER=$PACKET_FILTER/g" /etc/csf/csf.conf
1098
+ sed -i "s/^PORTFLOOD=.*/PORTFLOOD=$PORTFLOOD/g" /etc/csf/csf.conf
1099
+ print_b "CSF configuration is successfully."
1100
+ fi
1101
+ fi
1102
+
1103
+ # CSF Blocklists Configuration
1104
+ if [ $CSF_ACTION -eq 3 ]; then
1105
+ clear
1106
+ validate_yn_input "$(print_y 'Are you sure you want to CSF Blocklists Configuration?(y/n) :')"
1107
+ if [ $INPUT = "y" ]; then
1108
+ while read line; do
1109
+ # Check if the line starts with #
1110
+ if [[ $line == \#* ]]; then
1111
+ # Skip comment lines
1112
+ continue
1113
+ fi
1114
+ # Split the line by | character
1115
+ IFS='|' read -ra arr <<< "$line"
1116
+ done < /etc/csf/csf.blocklists | sed 's/# Split the line by | character//'
1117
+ print_b "CSF Blocklists Configuration is Successfully."
1118
+ fi
1119
+ fi
1120
+
1121
+ # Unblock Telegram IPs
1122
+ if [ $CSF_ACTION -eq 4 ]; then
1123
+ clear
1124
+ validate_yn_input "$(print_y 'Are you sure you want to Unblock Telegram IPs?(y/n) :')"
1125
+ if [ $INPUT = "y" ]; then
1126
+ csf -a 149.154.168.0/22 ; csf -a 149.154.164.0/22 ; csf -a 149.154.172.0/22 ; csf -a 149.154.160.0/22 ; csf -a 91.108.4.0/22 ; csf -a 91.108.56.0/22 ; csf -a 91.108.16.0/22 ; csf -a 91.108.12.0/22 ; csf -a 91.108.8.0/22
1127
+ print_b "Unblock Telegram IPs is Successfully."
1128
+ fi
1129
+ fi
1130
+
1131
+ # uninstall CSF
1132
+ if [ $CSF_ACTION -eq 5 ]; then
1133
+ clear
1134
+ validate_yn_input "$(print_y 'Are you sure you want to Uninstall CSF?(y/n) :')"
1135
+ if [ $INPUT = "y" ]; then
1136
+ cd /etc/csf ; sh uninstall.sh
1137
+ print_b "Uninstall CSF is Successfully."
1138
+ fi
1139
+ fi
1140
+ if [ $CSF_ACTION -eq 6 ]; then
1141
+ clear
1142
+ break
1143
+ fi
1144
+ done
1145
+ fi
1146
+ fi
1147
+
1148
+ # Install Plugins
1149
+ if [ $PK_ACTION -eq 4 ]; then
1150
+ clear
1151
+ echo -e "\033[0;32m${Plugins}\033[0m"
1152
+ validate_yn_input "$(print_y 'Are you sure you want to Install Plugins?(y/n) :')"
1153
+ if [ $INPUT = "y" ]; then
1154
+ while true; do
1155
+ print_g "1) Install LiteSpeed"
1156
+ print_g "2) Install ImunifyAV"
1157
+ print_g "3) Install Softaculous"
1158
+ print_g "4) Install SitePad"
1159
+ print_g "5) Back to Menu"
1160
+ validate_menu_input "$(print_y 'Enter your choice (1-5) : ')" 1 5
1161
+ PG_ACTION=$INPUT
1162
+
1163
+ # Install LiteSpeed
1164
+ if [ $PG_ACTION -eq 1 ]; then
1165
+ clear
1166
+ validate_yn_input "$(print_y 'Are you sure you want to Install LiteSpeed?(y/n) :')"
1167
+ if [ $INPUT = "y" ]; then
1168
+ cd /usr/src ; wget http://www.litespeedtech.com/packages/plesk/litespeed-plesk.zip ; unzip litespeed-plesk.zip ; cd plib/resources ; chmod 700 pleskInstall.sh ; ./pleskInstall.sh ; rm -f pleskInstall.sh ; cd
1169
+ print_b "LiteSpeed Successfully Installed"
1170
+ fi
1171
+ fi
1172
+
1173
+ # Install ImunifyAV
1174
+ if [ $PG_ACTION -eq 2 ]; then
1175
+ clear
1176
+ validate_yn_input "$(print_y 'Are you sure you want to Install ImunifyAV?(y/n) :')"
1177
+ if [ $INPUT = "y" ]; then
1178
+ wget https://repo.imunify360.cloudlinux.com/defence360/imav-deploy.sh ; bash imav-deploy.sh ; rm -rf /root/imav-deploy.sh
1179
+ print_b "ImunifyAV Successfully Installed"
1180
+ fi
1181
+ fi
1182
+
1183
+ # Install Softaculous
1184
+ if [ $PG_ACTION -eq 3 ]; then
1185
+ clear
1186
+ validate_yn_input "$(print_y 'Are you sure that ioncube is installed and active on your server?(y/n) :')"
1187
+ if [ $INPUT = "y" ]; then
1188
+ if php -m | grep -q ionCube ; then
1189
+ wget -N http://files.softaculous.com/install.sh && chmod 755 install.sh && ./install.sh
1190
+ print_b "Softaculous Successfully Installed"
1191
+ else
1192
+ print_r "Error: ionCube is not installed on your server.
1193
+ Please go to this address to install and activate ionCube -> Home / Server Configuration / Tweak Settings -> PHP -> cPanel PHP loader"
1194
+ fi
1195
+ fi
1196
+ fi
1197
+
1198
+ # Install SitePad
1199
+ if [ $PG_ACTION -eq 4 ]; then
1200
+ clear
1201
+ validate_yn_input "$(print_y 'Are you sure that ioncube is installed and active on your server?(y/n) :')"
1202
+ if [ $INPUT = "y" ]; then
1203
+ if php -m | grep -q ionCube ; then
1204
+ cd /usr/local/src/ ; rm -fv install.sh ; wget -N https://files.sitepad.com/install.sh ; chmod +x install.sh ; ./install.sh ; cd
1205
+ print_b "SitePad Successfully Installed"
1206
+ else
1207
+ print_r "Error: ionCube is not installed on your server.
1208
+ Please go to this address to install and activate ionCube -> Tools & Settings > General Settings > PHP Settings > PHP 8.1 > Manage PECL Packages"
1209
+ fi
1210
+ fi
1211
+ fi
1212
+ if [ $PG_ACTION -eq 5 ]; then
1213
+ clear
1214
+ break
1215
+ fi
1216
+ done
1217
+ fi
1218
+ fi
1219
+
1220
+ # Advanced Tools
1221
+ if [ $PK_ACTION -eq 5 ]; then
1222
+ clear
1223
+ echo -e "\033[0;32m${Advanced}\033[0m"
1224
+ validate_yn_input "$(print_y 'Are you sure you want to Advanced Tools?(y/n) :')"
1225
+ if [ $INPUT = "y" ]; then
1226
+ while true; do
1227
+ print_g "1) Clear RAM Cache"
1228
+ print_g "2) Delete all error_log"
1229
+ print_g "3) Clear /tmp"
1230
+ print_g "4) Back to Menu"
1231
+ validate_menu_input "$(print_y 'Enter your choice (1-4) : ')" 1 4
1232
+ AT_ACTION=$INPUT
1233
+
1234
+ # Clear RAM Cache
1235
+ if [ $AT_ACTION -eq 1 ]; then
1236
+ clear
1237
+ validate_yn_input "$(print_y 'Are you sure you want to Clear RAM Cache?(y/n) :')"
1238
+ if [ $INPUT = "y" ]; then
1239
+ sync; echo 1 > /proc/sys/vm/drop_caches ; sync; echo 2 > /proc/sys/vm/drop_caches ; sync; echo 3 > /proc/sys/vm/drop_caches ; swapoff -a ; swapon -a
1240
+ print_b "RAM Cache Successfully Cleared"
1241
+ fi
1242
+ fi
1243
+
1244
+ # Delete all error_log
1245
+ if [ $AT_ACTION -eq 2 ]; then
1246
+ clear
1247
+ validate_yn_input "$(print_y 'Are you sure you want to Clear RAM Cache?(y/n) :')"
1248
+ if [ $INPUT = "y" ]; then
1249
+ /usr/bin/find /root*/* -type f -name error_log -exec du -sh {} \;
1250
+ /usr/bin/find /root*/* -type f -name error_log -exec rm -rf {} \;
1251
+ /usr/bin/find /var*/*www/* -type f -name error_log -exec du -sh {} \;
1252
+ /usr/bin/find /var*/*www/* -type f -name error_log -exec rm -rf {} \;
1253
+ /usr/bin/find /var*/www/*vhosts/*/* -type f -name error_log -exec du -sh {} \;
1254
+ /usr/bin/find /var*/www/*vhosts/*/* -type f -name error_log -exec rm -rf {} \;
1255
+ /usr/bin/find /home*/* -type f -name error_log -exec du -sh {} \;
1256
+ /usr/bin/find /home*/* -type f -name error_log -exec rm -rf {} \;
1257
+ print_b "All error_log Successfully Delete"
1258
+ fi
1259
+ fi
1260
+
1261
+ # Clear /tmp
1262
+ if [ $AT_ACTION -eq 3 ]; then
1263
+ clear
1264
+ validate_yn_input "$(print_y 'Are you sure you want to Clear /tmp?(y/n) :')"
1265
+ if [ $INPUT = "y" ]; then
1266
+ if [[ $(cat /etc/os-release | grep -w "ID") == *"centos"* ]]; then
1267
+ yum install tmpwatch -y ; /usr/sbin/tmpwatch --mtime --all 6 /tmp
1268
+ print_b "/tmp Successfully Cleared"
1269
+ elif [[ $(cat /etc/os-release | grep -w "ID") == *"ubuntu"* ]]; then
1270
+ apt install tmpreaper -y ; /usr/sbin/tmpwatch --mtime --all 6 /tmp
1271
+ print_b "/tmp Successfully Cleared"
1272
+ fi
1273
+ fi
1274
+ fi
1275
+ if [ $AT_ACTION -eq 4 ]; then
1276
+ clear
1277
+ break
1278
+ fi
1279
+ done
1280
+ fi
1281
+ fi
1282
+ done
1283
+ fi
1284
+
1285
+ # sub-menu for aaPanel
1286
+ if [ $CP_CHOICE -eq 3 ]; then
1287
+ clear
1288
+ while true; do
1289
+ echo -e "\033[0;32m${aaPanel}\033[0m"
1290
+ print_y "What do you want to do?"
1291
+ print_g "1) Install aaPanel"
1292
+ print_g "2) Server Tools [4]"
1293
+ print_g "3) Setup Management [10]"
1294
+ print_g "4) Setup WebServer [2]"
1295
+ print_g "5) Setup Mysql [10]"
1296
+ print_g "6) Setup FTP [7]"
1297
+ print_g "7) Setup Redis [7]"
1298
+ print_g "8) Setup Memcached [5]"
1299
+ print_g "9) Back to Menu"
1300
+ validate_menu_input "$(print_y 'Enter your choice (1-9) : ')" 1 9
1301
+ AP_ACTION=$INPUT
1302
+
1303
+ if [ $AP_ACTION -eq 9 ]; then
1304
+ clear
1305
+ break
1306
+ fi
1307
+
1308
+ # Install aaPanel
1309
+ if [ $AP_ACTION -eq 1 ]; then
1310
+ clear
1311
+ echo -e "\033[0;32m${InstallaaPanel}\033[0m"
1312
+ validate_yn_input "$(print_y 'Are you sure you want to Install aaPanel?(y/n) :')"
1313
+ if [ $INPUT = "y" ]; then
1314
+ if [[ $(cat /etc/os-release | grep -w "ID") == *"centos"* ]]; then
1315
+ yum install -y wget && wget -O install.sh http://www.aapanel.com/script/install_6.0_en.sh && bash install.sh aapanel
1316
+ print_g "aaPanel Successfully Installed, Please Login Panel"
1317
+ elif [[ $(cat /etc/os-release | grep -w "ID") == *"ubuntu"* ]]; then
1318
+ wget -O install.sh http://www.aapanel.com/script/install-ubuntu_6.0_en.sh && sudo bash install.sh aapanel
1319
+ print_g "aaPanel Successfully Installed, Please Login Panel"
1320
+ elif [[ $(cat /etc/os-release | grep -w "ID") == *"debian"* ]]; then
1321
+ wget -O install.sh http://www.aapanel.com/script/install-ubuntu_6.0_en.sh && bash install.sh aapanel
1322
+ print_g "aaPanel Successfully Installed, Please Login Panel"
1323
+ else
1324
+ print_r "aaPanel installation is only supported on CentOS, Ubuntu, Debian."
1325
+ fi
1326
+ fi
1327
+ fi
1328
+
1329
+ # Server Tools
1330
+ if [ $AP_ACTION -eq 2 ]; then
1331
+ clear
1332
+ echo -e "\033[0;32m${Tools}\033[0m"
1333
+ validate_yn_input "$(print_y 'Are you sure you want to Server Tools?(y/n) :')"
1334
+ if [ $INPUT = "y" ]; then
1335
+ while true; do
1336
+ print_g "1) Change Nameserver"
1337
+ print_g "2) Change Hostname"
1338
+ print_g "3) Change SSH Port"
1339
+ print_g "4) Change Password (root)"
1340
+ print_g "5) Back to Menu"
1341
+ validate_menu_input "$(print_y 'Enter your choice (1-11) : ')" 1 5
1342
+ ST_ACTION=$INPUT
1343
+
1344
+ # Change Nameserver
1345
+ if [ $ST_ACTION -eq 1 ]; then
1346
+ clear
1347
+ validate_yn_input "$(print_y 'Are you sure you want to change the Nameserver?(y/n) :')"
1348
+ if [ $INPUT = "y" ]; then
1349
+ read -p "Enter Primary Nameserver: " PRIMARY_NS
1350
+ read -p "Enter Secondary Nameserver: " SECONDARY_NS
1351
+ if [ -f /etc/resolv.conf ]; then
1352
+ sed -i 's/^nameserver/#nameserver/g' /etc/resolv.conf
1353
+ echo "nameserver $PRIMARY_NS" >> /etc/resolv.conf
1354
+ echo "nameserver $SECONDARY_NS" >> /etc/resolv.conf
1355
+ print_b "Nameserver Changed To -> [ "$PRIMARY_NS" - "$SECONDARY_NS" ]"
1356
+ fi
1357
+ fi
1358
+ fi
1359
+
1360
+ # Change hostname
1361
+ if [ $ST_ACTION -eq 2 ]; then
1362
+ clear
1363
+ validate_yn_input "$(print_y 'Are you sure you want to change the Hostname?(y/n) :')"
1364
+ if [ $INPUT = "y" ]; then
1365
+ read -rp "Enter your Hostname : " HOSTNAME
1366
+ hostnamectl set-hostname $HOSTNAME
1367
+ print_b "Hostname Changed To -> "$HOSTNAME""
1368
+ fi
1369
+ fi
1370
+
1371
+ # Change SSH Port
1372
+ if [ $ST_ACTION -eq 3 ]; then
1373
+ clear
1374
+ validate_yn_input "$(print_y 'Are you sure you want to Change SSH Port?(y/n) :')"
1375
+ if [ $INPUT = "y" ]; then
1376
+ read -rp "Enter new SSH port : " NEW_PORT
1377
+ sudo sed -i "s/^#*Port 22/Port $NEW_PORT/" /etc/ssh/sshd_config
1378
+ service sshd restart
1379
+ print_b "SSH Port Changed To -> "$NEW_PORT""
1380
+ fi
1381
+ fi
1382
+
1383
+ # Change Password (root)
1384
+ if [ $ST_ACTION -eq 4 ]; then
1385
+ clear
1386
+ validate_yn_input "$(print_y 'Are you sure you want to Change Password Server?(y/n) :')"
1387
+ if [ $INPUT = "y" ]; then
1388
+ if [ $(whoami) = "root" ]; then
1389
+ passwd root
1390
+ else
1391
+ sudo sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config && sudo systemctl restart ssh && sudo passwd
1392
+ fi
1393
+ print_b "Password Changed (root) Successfully"
1394
+ fi
1395
+ fi
1396
+ if [ $ST_ACTION -eq 5 ]; then
1397
+ clear
1398
+ break
1399
+ fi
1400
+ done
1401
+ fi
1402
+ fi
1403
+
1404
+ # Setup Management
1405
+ if [ $AP_ACTION -eq 3 ]; then
1406
+ clear
1407
+ echo -e "\033[0;32m${Management}\033[0m"
1408
+ validate_yn_input "$(print_y 'Are you sure you want to Setup Management?(y/n) :')"
1409
+ if [ $INPUT = "y" ]; then
1410
+ while true; do
1411
+ print_g "1) Start aaPanel"
1412
+ print_g "2) Stop aaPanel"
1413
+ print_g "3) Restart aaPanel"
1414
+ print_g "4) Uninstall aaPanel"
1415
+ print_g "5) Change Password aaPanel"
1416
+ print_g "6) View Current Port"
1417
+ print_g "7) Change Port aaPanel"
1418
+ print_g "8) Turn off SSL aaPanel"
1419
+ print_g "9) View Error logs aaPanel"
1420
+ print_g "10) View Error logs Site"
1421
+ print_g "11) Back to Menu"
1422
+ validate_menu_input "$(print_y 'Enter your choice (1-11) : ')" 1 11
1423
+ SM_ACTION=$INPUT
1424
+
1425
+ # Start aaPanel
1426
+ if [ $SM_ACTION -eq 1 ]; then
1427
+ clear
1428
+ validate_yn_input "$(print_y 'Are you sure you want to Start aaPanel?(y/n) :')"
1429
+ if [ $INPUT = "y" ]; then
1430
+ service bt start
1431
+ print_g "aaPanel Successfully Started."
1432
+ fi
1433
+ fi
1434
+
1435
+ # Stop aaPanel
1436
+ if [ $SM_ACTION -eq 2 ]; then
1437
+ clear
1438
+ validate_yn_input "$(print_y 'Are you sure you want to Stop aaPanel?(y/n) :')"
1439
+ if [ $INPUT = "y" ]; then
1440
+ service bt stop
1441
+ print_g "aaPanel Successfully Stoped."
1442
+ fi
1443
+ fi
1444
+
1445
+ # Restart aaPanel
1446
+ if [ $SM_ACTION -eq 3 ]; then
1447
+ clear
1448
+ validate_yn_input "$(print_y 'Are you sure you want to Restart aaPanel?(y/n) :')"
1449
+ if [ $INPUT = "y" ]; then
1450
+ service bt restart
1451
+ print_g "aaPanel Successfully Restarted."
1452
+ fi
1453
+ fi
1454
+
1455
+ # Uninstall aaPanel
1456
+ if [ $SM_ACTION -eq 4 ]; then
1457
+ clear
1458
+ validate_yn_input "$(print_y 'Are you sure you want to Uninstall aaPanel?(y/n) :')"
1459
+ if [ $INPUT = "y" ]; then
1460
+ service bt stop ; chkconfig --del bt ; rm -f /etc/init.d/bt ; rm -rf /www/server/panel
1461
+ print_g "aaPanel Successfully Uninstalled."
1462
+ fi
1463
+ fi
1464
+
1465
+ # Change Password aaPanel
1466
+ if [ $SM_ACTION -eq 5 ]; then
1467
+ clear
1468
+ validate_yn_input "$(print_y 'Are you sure you want to Change Password aaPanel?(y/n) :')"
1469
+ if [ $INPUT = "y" ]; then
1470
+ read -rp "Enter Password : " Pass
1471
+ cd /www/server/panel ; python tools.py panel $Pass
1472
+ print_b "Password Changed To -> "$Pass""
1473
+ fi
1474
+ fi
1475
+
1476
+ # View Current Port
1477
+ if [ $SM_ACTION -eq 6 ]; then
1478
+ clear
1479
+ validate_yn_input "$(print_y 'Are you sure you want to View Current Port?(y/n) :')"
1480
+ if [ $INPUT = "y" ]; then
1481
+ cat /www/server/panel/data/port.pl
1482
+ fi
1483
+ fi
1484
+
1485
+ # Change Port aaPanel
1486
+ if [ $SM_ACTION -eq 7 ]; then
1487
+ clear
1488
+ validate_yn_input "$(print_y 'Are you sure you want to Uninstall aaPanel?(y/n) :')"
1489
+ if [ $INPUT = "y" ]; then
1490
+ read -p "Enter Port aaPanel : " Port
1491
+ echo $Port > /www/server/panel/data/port.pl ; service bt restart ; firewall-cmd --permanent --zone=public --add-port=$Port/tcp firewall-cmd --reload ; service bt stop ; chkconfig --del bt ; rm -f /etc/init.d/bt ; rm -rf /www/server/panel
1492
+ print_g "aaPanel Successfully Changed Port To -> "$Port"."
1493
+ fi
1494
+ fi
1495
+
1496
+ # Turn off SSL aaPanel
1497
+ if [ $SM_ACTION -eq 8 ]; then
1498
+ clear
1499
+ validate_yn_input "$(print_y 'Are you sure you want to Turn off SSL aaPanel?(y/n) :')"
1500
+ if [ $INPUT = "y" ]; then
1501
+ rm -f /www/server/panel/data/ssl.pl ; /etc/init.d/bt restart
1502
+ print_g "aaPanel SSL successfully disabled."
1503
+ fi
1504
+ fi
1505
+
1506
+ # View Error logs aaPanel
1507
+ if [ $SM_ACTION -eq 9 ]; then
1508
+ clear
1509
+ validate_yn_input "$(print_y 'Are you sure you want to View Error logs aaPanel?(y/n) :')"
1510
+ if [ $INPUT = "y" ]; then
1511
+ cat /tmp/panelBoot
1512
+ fi
1513
+ fi
1514
+
1515
+ # View Error logs Site
1516
+ if [ $SM_ACTION -eq 10 ]; then
1517
+ clear
1518
+ validate_yn_input "$(print_y 'Are you sure you want to View Error logs Site?(y/n) :')"
1519
+ if [ $INPUT = "y" ]; then
1520
+ cat /www/wwwlogs
1521
+ fi
1522
+ fi
1523
+ if [ $SM_ACTION -eq 11 ]; then
1524
+ clear
1525
+ break
1526
+ fi
1527
+ done
1528
+ fi
1529
+ fi
1530
+
1531
+ # WebServer
1532
+ if [ $AP_ACTION -eq 4 ]; then
1533
+ clear
1534
+ echo -e "\033[0;32m${WebServer}\033[0m"
1535
+ validate_yn_input "$(print_y 'Are you sure you want to WebServer section?(y/n) :')"
1536
+ if [ $INPUT = "y" ]; then
1537
+ while true; do
1538
+ print_y "Select your Web Server type"
1539
+ print_g "1) Setup Nginx [7]"
1540
+ print_g "2) Setup Apache [7]"
1541
+ print_g "3) Back to Menu"
1542
+ validate_menu_input "$(print_y 'Enter your choice (1-3) : ')" 1 3
1543
+ WS_ACTION=$INPUT
1544
+
1545
+ # Setup Nginx
1546
+ if [ $WS_ACTION -eq 1 ]; then
1547
+ clear
1548
+ validate_yn_input "$(print_y 'Are you sure you want to Setup Nginx?(y/n) :')"
1549
+ if [ $INPUT = "y" ]; then
1550
+ while true; do
1551
+ print_g "1) Start Nginx"
1552
+ print_g "2) Stop Nginx"
1553
+ print_g "3) Restart Nginx"
1554
+ print_g "4) Reload Nginx"
1555
+ print_g "5) Status Nginx"
1556
+ print_g "6) Configuration Nginx"
1557
+ print_g "7) Open Directory Nginx"
1558
+ print_g "8) Back to Menu"
1559
+ validate_menu_input "$(print_y 'Enter your choice (1-8) : ')" 1 8
1560
+ SN_ACTION=$INPUT
1561
+
1562
+ # Start Nginx
1563
+ if [ $SN_ACTION -eq 1 ]; then
1564
+ clear
1565
+ validate_yn_input "$(print_y 'Are you sure you want to Start Nginx?(y/n) :')"
1566
+ if [ $INPUT = "y" ]; then
1567
+ if [ -x "$(command -v nginx)" ]; then
1568
+ systemctl start nginx
1569
+ print_g "Nginx Successfully Started."
1570
+ else
1571
+ print_r "Nginx is not installed"
1572
+ fi
1573
+ fi
1574
+ fi
1575
+
1576
+ # Stop Nginx
1577
+ if [ $SN_ACTION -eq 2 ]; then
1578
+ clear
1579
+ validate_yn_input "$(print_y 'Are you sure you want to Stop Nginx?(y/n) :')"
1580
+ if [ $INPUT = "y" ]; then
1581
+ if [ -x "$(command -v nginx)" ]; then
1582
+ systemctl stop nginx
1583
+ print_g "Nginx Successfully Stoped."
1584
+ else
1585
+ print_r "Nginx is not installed"
1586
+ fi
1587
+ fi
1588
+ fi
1589
+
1590
+ # Restart Nginx
1591
+ if [ $SN_ACTION -eq 3 ]; then
1592
+ clear
1593
+ validate_yn_input "$(print_y 'Are you sure you want to Restart Nginx?(y/n) :')"
1594
+ if [ $INPUT = "y" ]; then
1595
+ if [ -x "$(command -v nginx)" ]; then
1596
+ systemctl restart nginx
1597
+ print_g "Nginx Successfully Restarted."
1598
+ else
1599
+ print_r "Nginx is not installed"
1600
+ fi
1601
+ fi
1602
+ fi
1603
+
1604
+ # Reload Nginx
1605
+ if [ $SN_ACTION -eq 4 ]; then
1606
+ clear
1607
+ validate_yn_input "$(print_y 'Are you sure you want to Reload Nginx?(y/n) :')"
1608
+ if [ $INPUT = "y" ]; then
1609
+ if [ -x "$(command -v nginx)" ]; then
1610
+ systemctl reload nginx
1611
+ print_g "Nginx Successfully Reloaded."
1612
+ else
1613
+ print_r "Nginx is not installed"
1614
+ fi
1615
+ fi
1616
+ fi
1617
+
1618
+ # Status Nginx
1619
+ if [ $SN_ACTION -eq 5 ]; then
1620
+ clear
1621
+ validate_yn_input "$(print_y 'Are you sure you want to Srarus Nginx?(y/n) :')"
1622
+ if [ $INPUT = "y" ]; then
1623
+ if [ -x "$(command -v nginx)" ]; then
1624
+ systemctl status nginx
1625
+ else
1626
+ print_r "Nginx is not installed"
1627
+ fi
1628
+ fi
1629
+ fi
1630
+
1631
+ # Configuration Nginx
1632
+ if [ $SN_ACTION -eq 6 ]; then
1633
+ clear
1634
+ validate_yn_input "$(print_y 'Are you sure you want to Configuration Nginx?(y/n) :')"
1635
+ if [ $INPUT = "y" ]; then
1636
+ if [ -x "$(command -v nginx)" ]; then
1637
+ while true; do
1638
+ print_y ""
1639
+ print_g "1) nano editor"
1640
+ print_g "2) vi editor"
1641
+ print_g "3) vim editor"
1642
+ print_g "4) Back to Menu"
1643
+ validate_menu_input "$(print_y 'Enter your choice (1-4) : ')" 1 4
1644
+ CN_ACTION=$INPUT
1645
+
1646
+ # nano editor
1647
+ if [ $CN_ACTION -eq 1 ]; then
1648
+ nano /www/server/nginx/conf/nginx.conf
1649
+ sleep 2s
1650
+ clear
1651
+ fi
1652
+
1653
+ # vi editor
1654
+ if [ $CN_ACTION -eq 2 ]; then
1655
+ vi /www/server/nginx/conf/nginx.conf
1656
+ sleep 2s
1657
+ clear
1658
+ fi
1659
+
1660
+ # vim editor
1661
+ if [ $CN_ACTION -eq 3 ]; then
1662
+ vim /www/server/nginx/conf/nginx.conf
1663
+ sleep 2s
1664
+ clear
1665
+ fi
1666
+
1667
+ # Back to Menu
1668
+ if [ $CN_ACTION -eq 4 ]; then
1669
+ clear
1670
+ break
1671
+ fi
1672
+ done
1673
+ else
1674
+ print_r "Nginx is not installed"
1675
+ fi
1676
+ fi
1677
+ fi
1678
+
1679
+ # Open Directory Nginx
1680
+ if [ $SN_ACTION -eq 7 ]; then
1681
+ clear
1682
+ validate_yn_input "$(print_y 'Are you sure you want to Open Directory Nginx?(y/n) :')"
1683
+ if [ $INPUT = "y" ]; then
1684
+ if [ -x "$(command -v nginx)" ]; then
1685
+ cd /www/server/nginx ; ls
1686
+ else
1687
+ print_r "Nginx is not installed"
1688
+ fi
1689
+ fi
1690
+ fi
1691
+ if [ $SN_ACTION -eq 8 ]; then
1692
+ clear
1693
+ break
1694
+ fi
1695
+ done
1696
+ fi
1697
+ fi
1698
+
1699
+ # Setup Apache
1700
+ if [ $WS_ACTION -eq 2 ]; then
1701
+ clear
1702
+ validate_yn_input "$(print_y 'Are you sure you want to Setup Apache?(y/n) :')"
1703
+ if [ $INPUT = "y" ]; then
1704
+ while true; do
1705
+ print_g "1) Start Apache"
1706
+ print_g "2) Stop Apache"
1707
+ print_g "3) Restart Apache"
1708
+ print_g "4) Reload Apache"
1709
+ print_g "5) Status Apache"
1710
+ print_g "6) Configuration Apache"
1711
+ print_g "7) Open Directory Apache"
1712
+ print_g "8) Back to Menu"
1713
+ validate_menu_input "$(print_y 'Enter your choice (1-8) : ')" 1 8
1714
+ SP_ACTION=$INPUT
1715
+
1716
+ # Start Apache
1717
+ if [ $SP_ACTION -eq 1 ]; then
1718
+ clear
1719
+ validate_yn_input "$(print_y 'Are you sure you want to Start Apache?(y/n) :')"
1720
+ if [ $INPUT = "y" ]; then
1721
+ if [ -x "$(command -v apache2)" ]; then
1722
+ systemctl start apache2
1723
+ print_g "Apache Successfully Started."
1724
+ else
1725
+ print_r "Apache is not installed"
1726
+ fi
1727
+ fi
1728
+ fi
1729
+
1730
+ # Stop Apache
1731
+ if [ $SP_ACTION -eq 2 ]; then
1732
+ clear
1733
+ validate_yn_input "$(print_y 'Are you sure you want to Stop Apache?(y/n) :')"
1734
+ if [ $INPUT = "y" ]; then
1735
+ if [ -x "$(command -v apache2)" ]; then
1736
+ systemctl stop apache2
1737
+ print_g "Apache Successfully Stoped."
1738
+ else
1739
+ print_r "Apache is not installed"
1740
+ fi
1741
+ fi
1742
+ fi
1743
+
1744
+ # Restart Apache
1745
+ if [ $SP_ACTION -eq 3 ]; then
1746
+ clear
1747
+ validate_yn_input "$(print_y 'Are you sure you want to Restart Apache?(y/n) :')"
1748
+ if [ $INPUT = "y" ]; then
1749
+ if [ -x "$(command -v apache2)" ]; then
1750
+ systemctl restart apache2
1751
+ print_g "Apache Successfully Restarted."
1752
+ else
1753
+ print_r "Apache is not installed"
1754
+ fi
1755
+ fi
1756
+ fi
1757
+
1758
+ # Reload Apache
1759
+ if [ $SP_ACTION -eq 4 ]; then
1760
+ clear
1761
+ validate_yn_input "$(print_y 'Are you sure you want to Reload Apache?(y/n) :')"
1762
+ if [ $INPUT = "y" ]; then
1763
+ if [ -x "$(command -v apache2)" ]; then
1764
+ systemctl reload apache2
1765
+ print_g "Apache Successfully Reloaded."
1766
+ else
1767
+ print_r "Apache is not installed"
1768
+ fi
1769
+ fi
1770
+ fi
1771
+
1772
+ # Status Apache
1773
+ if [ $SP_ACTION -eq 5 ]; then
1774
+ clear
1775
+ validate_yn_input "$(print_y 'Are you sure you want to Status Apache?(y/n) :')"
1776
+ if [ $INPUT = "y" ]; then
1777
+ if [ -x "$(command -v apache2)" ]; then
1778
+ systemctl status apache2
1779
+ else
1780
+ print_r "Apache is not installed"
1781
+ fi
1782
+ fi
1783
+ fi
1784
+
1785
+ # Configuration Apache
1786
+ if [ $SP_ACTION -eq 6 ]; then
1787
+ clear
1788
+ validate_yn_input "$(print_y 'Are you sure you want to Configuration Apache?(y/n) :')"
1789
+ if [ $INPUT = "y" ]; then
1790
+ if [ -x "$(command -v apache2)" ]; then
1791
+ while true; do
1792
+ print_y ""
1793
+ print_g "1) nano editor"
1794
+ print_g "2) vi editor"
1795
+ print_g "3) vim editor"
1796
+ print_g "4) Back to Menu"
1797
+ validate_menu_input "$(print_y 'Enter your choice (1-4) : ')" 1 4
1798
+ CA_ACTION=$INPUT
1799
+
1800
+ # nano editor
1801
+ if [ $CA_ACTION -eq 1 ]; then
1802
+ nano /www/server/apache/conf/httpd.conf
1803
+ sleep 2s
1804
+ clear
1805
+ fi
1806
+
1807
+ # vi editor
1808
+ if [ $CA_ACTION -eq 2 ]; then
1809
+ vi /www/server/apache/conf/httpd.conf
1810
+ sleep 2s
1811
+ clear
1812
+ fi
1813
+
1814
+ # vim editor
1815
+ if [ $CA_ACTION -eq 3 ]; then
1816
+ vim /www/server/apache/conf/httpd.conf
1817
+ sleep 2s
1818
+ clear
1819
+ fi
1820
+
1821
+ # Back to Menu
1822
+ if [ $CA_ACTION -eq 4 ]; then
1823
+ clear
1824
+ break
1825
+ fi
1826
+ done
1827
+ else
1828
+ print_r "Apache is not installed"
1829
+ fi
1830
+ fi
1831
+ fi
1832
+
1833
+ # Open Directory Apache
1834
+ if [ $SP_ACTION -eq 7 ]; then
1835
+ clear
1836
+ validate_yn_input "$(print_y 'Are you sure you want to Open Directory Apache?(y/n) :')"
1837
+ if [ $INPUT = "y" ]; then
1838
+ if [ -x "$(command -v apache2)" ]; then
1839
+ cd /www/server/httpd ; ls
1840
+ else
1841
+ print_r "Apache is not installed"
1842
+ fi
1843
+ fi
1844
+ fi
1845
+ if [ $SP_ACTION -eq 8 ]; then
1846
+ clear
1847
+ break
1848
+ fi
1849
+ done
1850
+ fi
1851
+ fi
1852
+ if [ $WS_ACTION -eq 3 ]; then
1853
+ clear
1854
+ break
1855
+ fi
1856
+ done
1857
+ fi
1858
+ fi
1859
+
1860
+ # Setup Mysql
1861
+ if [ $AP_ACTION -eq 5 ]; then
1862
+ clear
1863
+ echo -e "\033[0;32m${Mysql}\033[0m"
1864
+ validate_yn_input "$(print_y 'Are you sure you want to Setup Mysql?(y/n) :')"
1865
+ if [ $INPUT = "y" ]; then
1866
+ while true; do
1867
+ print_g "1) Start Mysql"
1868
+ print_g "2) Stop Mysql"
1869
+ print_g "3) Restart Mysql"
1870
+ print_g "4) Reload Mysql"
1871
+ print_g "5) Status Mysql"
1872
+ print_g "6) Change Password MySQL"
1873
+ print_g "7) Configuration Mysql"
1874
+ print_g "8) Open Directory Mysql"
1875
+ print_g "9) Open Directory phpmyadmin"
1876
+ print_g "10) Open Directory Data Storage"
1877
+ print_g "11) Back to Menu"
1878
+ validate_menu_input "$(print_y 'Enter your choice (1-11) : ')" 1 11
1879
+ SM_ACTION=$INPUT
1880
+
1881
+ # Start Mysql
1882
+ if [ $SM_ACTION -eq 1 ]; then
1883
+ clear
1884
+ validate_yn_input "$(print_y 'Are you sure you want to Start Mysql?(y/n) :')"
1885
+ if [ $INPUT = "y" ]; then
1886
+ if [ -x "$(command -v mysql)" ]; then
1887
+ systemctl start mysql
1888
+ print_g "Mysql Successfully Started."
1889
+ else
1890
+ print_r "Mysql is not installed"
1891
+ fi
1892
+ fi
1893
+ fi
1894
+
1895
+ # Stop Mysql
1896
+ if [ $SM_ACTION -eq 2 ]; then
1897
+ clear
1898
+ validate_yn_input "$(print_y 'Are you sure you want to Stop Mysql?(y/n) :')"
1899
+ if [ $INPUT = "y" ]; then
1900
+ if [ -x "$(command -v mysql)" ]; then
1901
+ systemctl stop mysql
1902
+ print_g "Mysql Successfully Stoped."
1903
+ else
1904
+ print_r "Mysql is not installed"
1905
+ fi
1906
+ fi
1907
+ fi
1908
+
1909
+ # Restart Mysql
1910
+ if [ $SM_ACTION -eq 3 ]; then
1911
+ clear
1912
+ validate_yn_input "$(print_y 'Are you sure you want to Restart Mysql?(y/n) :')"
1913
+ if [ $INPUT = "y" ]; then
1914
+ if [ -x "$(command -v mysql)" ]; then
1915
+ systemctl restart mysql
1916
+ print_g "Mysql Successfully Restarted."
1917
+ else
1918
+ print_r "Mysql is not installed"
1919
+ fi
1920
+ fi
1921
+ fi
1922
+
1923
+ # Reload Mysql
1924
+ if [ $SM_ACTION -eq 4 ]; then
1925
+ clear
1926
+ validate_yn_input "$(print_y 'Are you sure you want to Reload Mysql?(y/n) :')"
1927
+ if [ $INPUT = "y" ]; then
1928
+ if [ -x "$(command -v mysql)" ]; then
1929
+ systemctl reload mysql
1930
+ print_g "Mysql Successfully Reloaded."
1931
+ else
1932
+ print_r "Mysql is not installed"
1933
+ fi
1934
+ fi
1935
+ fi
1936
+
1937
+ # Status Mysql
1938
+ if [ $SM_ACTION -eq 5 ]; then
1939
+ clear
1940
+ validate_yn_input "$(print_y 'Are you sure you want to Status Mysql?(y/n) :')"
1941
+ if [ $INPUT = "y" ]; then
1942
+ if [ -x "$(command -v mysql)" ]; then
1943
+ systemctl status mysql
1944
+ else
1945
+ print_r "Mysql is not installed"
1946
+ fi
1947
+ fi
1948
+ fi
1949
+
1950
+ # Change Password MySQL
1951
+ if [ $SM_ACTION -eq 6 ]; then
1952
+ clear
1953
+ validate_yn_input "$(print_y 'Are you sure you want to Change Password MySQL?(y/n) :')"
1954
+ if [ $INPUT = "y" ]; then
1955
+ if [ -x "$(command -v mysql)" ]; then
1956
+ read -rp "Enter Password : " Pass
1957
+ cd /www/server/panel ; python3 tools.py root $Pass
1958
+ print_b "Password Changed To -> "$Pass""
1959
+ else
1960
+ print_r "Mysql is not installed"
1961
+ fi
1962
+ fi
1963
+ fi
1964
+
1965
+ # Configuration Mysql
1966
+ if [ $SM_ACTION -eq 7 ]; then
1967
+ clear
1968
+ validate_yn_input "$(print_y 'Are you sure you want to Configuration Mysql?(y/n) :')"
1969
+ if [ $INPUT = "y" ]; then
1970
+ if [ -x "$(command -v mysql)" ]; then
1971
+ while true; do
1972
+ print_y ""
1973
+ print_g "1) nano editor"
1974
+ print_g "2) vi editor"
1975
+ print_g "3) vim editor"
1976
+ print_g "4) Back to Menu"
1977
+ validate_menu_input "$(print_y 'Enter your choice (1-4) : ')" 1 4
1978
+ CA_ACTION=$INPUT
1979
+
1980
+ # nano editor
1981
+ if [ $CA_ACTION -eq 1 ]; then
1982
+ nano /etc/my.cnf
1983
+ sleep 2s
1984
+ clear
1985
+ fi
1986
+
1987
+ # vi editor
1988
+ if [ $CA_ACTION -eq 2 ]; then
1989
+ vi /etc/my.cnf
1990
+ sleep 2s
1991
+ clear
1992
+ fi
1993
+
1994
+ # vim editor
1995
+ if [ $CA_ACTION -eq 3 ]; then
1996
+ vim /etc/my.cnf
1997
+ sleep 2s
1998
+ clear
1999
+ fi
2000
+ # Back to Menu
2001
+ if [ $CA_ACTION -eq 4 ]; then
2002
+ clear
2003
+ break
2004
+ fi
2005
+ done
2006
+ else
2007
+ print_r "Mysql is not installed"
2008
+ fi
2009
+ fi
2010
+ fi
2011
+
2012
+ # Open Directory Mysql
2013
+ if [ $SM_ACTION -eq 8 ]; then
2014
+ clear
2015
+ validate_yn_input "$(print_y 'Are you sure you want to Open Directory Mysql?(y/n) :')"
2016
+ if [ $INPUT = "y" ]; then
2017
+ if [ -x "$(command -v mysql)" ]; then
2018
+ cd /www/server/mysql ; ls
2019
+ else
2020
+ print_r "Mysql is not installed"
2021
+ fi
2022
+ fi
2023
+ fi
2024
+
2025
+ # Open Directory phpmyadmin
2026
+ if [ $SM_ACTION -eq 9 ]; then
2027
+ clear
2028
+ validate_yn_input "$(print_y 'Are you sure you want to Open Directory phpmyadmin?(y/n) :')"
2029
+ if [ $INPUT = "y" ]; then
2030
+ if [ -x "$(command -v mysql)" ]; then
2031
+ cd /www/server/phpmyadmin ; ls
2032
+ else
2033
+ print_r "Mysql is not installed"
2034
+ fi
2035
+ fi
2036
+ fi
2037
+
2038
+ # Open Directory Data Storage
2039
+ if [ $SM_ACTION -eq 10 ]; then
2040
+ clear
2041
+ validate_yn_input "$(print_y 'Are you sure you want to Open Directory Data Storage?(y/n) :')"
2042
+ if [ $INPUT = "y" ]; then
2043
+ if [ -x "$(command -v mysql)" ]; then
2044
+ cd /www/server/data ; ls
2045
+ else
2046
+ print_r "Mysql is not installed"
2047
+ fi
2048
+ fi
2049
+ fi
2050
+ if [ $SM_ACTION -eq 11 ]; then
2051
+ clear
2052
+ break
2053
+ fi
2054
+ done
2055
+ fi
2056
+ fi
2057
+
2058
+ # Setup FTP
2059
+ if [ $AP_ACTION -eq 6 ]; then
2060
+ clear
2061
+ echo -e "\033[0;32m${FTP}\033[0m"
2062
+ validate_yn_input "$(print_y 'Are you sure you want to Setup FTP?(y/n) :')"
2063
+ if [ $INPUT = "y" ]; then
2064
+ while true; do
2065
+ print_g "1) Start FTP"
2066
+ print_g "2) Stop FTP"
2067
+ print_g "3) Restart FTP"
2068
+ print_g "4) Reload FTP"
2069
+ print_g "5) Status FTP"
2070
+ print_g "6) Configuration FTP"
2071
+ print_g "7) Open Directory FTP"
2072
+ print_g "8) Back to Menu"
2073
+ validate_menu_input "$(print_y 'Enter your choice (1-8) : ')" 1 8
2074
+ SF_ACTION=$INPUT
2075
+
2076
+ # Start FTP
2077
+ if [ $SF_ACTION -eq 1 ]; then
2078
+ clear
2079
+ validate_yn_input "$(print_y 'Are you sure you want to Start FTP?(y/n) :')"
2080
+ if [ $INPUT = "y" ]; then
2081
+ if [ -d /www/server/pure-ftpd ]; then
2082
+ systemctl start pure-ftpd
2083
+ print_g "FTP Successfully Started."
2084
+ else
2085
+ print_r "FTP is not installed"
2086
+ fi
2087
+ fi
2088
+ fi
2089
+
2090
+ # Stop FTP
2091
+ if [ $SF_ACTION -eq 2 ]; then
2092
+ clear
2093
+ validate_yn_input "$(print_y 'Are you sure you want to Stop FTP?(y/n) :')"
2094
+ if [ $INPUT = "y" ]; then
2095
+ if [ -d /www/server/pure-ftpd ]; then
2096
+ systemctl stop pure-ftpd
2097
+ print_g "FTP Successfully Stoped."
2098
+ else
2099
+ print_r "FTP is not installed"
2100
+ fi
2101
+ fi
2102
+ fi
2103
+
2104
+ # Restart FTP
2105
+ if [ $SF_ACTION -eq 3 ]; then
2106
+ clear
2107
+ validate_yn_input "$(print_y 'Are you sure you want to Restart FTP?(y/n) :')"
2108
+ if [ $INPUT = "y" ]; then
2109
+ if [ -d /www/server/pure-ftpd ]; then
2110
+ systemctl restart pure-ftpd
2111
+ print_g "FTP Successfully Restarted."
2112
+ else
2113
+ print_r "FTP is not installed"
2114
+ fi
2115
+ fi
2116
+ fi
2117
+
2118
+ # Reload FTP
2119
+ if [ $SF_ACTION -eq 4 ]; then
2120
+ clear
2121
+ validate_yn_input "$(print_y 'Are you sure you want to Reload FTP?(y/n) :')"
2122
+ if [ $INPUT = "y" ]; then
2123
+ if [ -d /www/server/pure-ftpd ]; then
2124
+ systemctl reload pure-ftpd
2125
+ print_g "FTP Successfully Reloaded."
2126
+ else
2127
+ print_r "FTP is not installed"
2128
+ fi
2129
+ fi
2130
+ fi
2131
+
2132
+ # Status FTP
2133
+ if [ $SF_ACTION -eq 5 ]; then
2134
+ clear
2135
+ validate_yn_input "$(print_y 'Are you sure you want to Status FTP?(y/n) :')"
2136
+ if [ $INPUT = "y" ]; then
2137
+ if [ -d /www/server/pure-ftpd ]; then
2138
+ systemctl status pure-ftpd
2139
+ else
2140
+ print_r "FTP is not installed"
2141
+ fi
2142
+ fi
2143
+ fi
2144
+
2145
+ # Configuration FTP
2146
+ if [ $SF_ACTION -eq 6 ]; then
2147
+ clear
2148
+ validate_yn_input "$(print_y 'Are you sure you want to Configuration FTP?(y/n) :')"
2149
+ if [ $INPUT = "y" ]; then
2150
+ if [ -d /www/server/pure-ftpd ]; then
2151
+ while true; do
2152
+ print_y ""
2153
+ print_g "1) nano editor"
2154
+ print_g "2) vi editor"
2155
+ print_g "3) vim editor"
2156
+ print_g "4) Back to Menu"
2157
+ validate_menu_input "$(print_y 'Enter your choice (1-4) : ')" 1 4
2158
+ CA_ACTION=$INPUT
2159
+
2160
+ # nano editor
2161
+ if [ $CA_ACTION -eq 1 ]; then
2162
+ nano /www/server/pure-ftpd/etc/pure-ftpd
2163
+ sleep 2s
2164
+ clear
2165
+ fi
2166
+
2167
+ # vi editor
2168
+ if [ $CA_ACTION -eq 2 ]; then
2169
+ vi /www/server/pure-ftpd/etc/pure-ftpd
2170
+ sleep 2s
2171
+ clear
2172
+ fi
2173
+
2174
+ # vim editor
2175
+ if [ $CA_ACTION -eq 3 ]; then
2176
+ vim /www/server/pure-ftpd/etc/pure-ftpd
2177
+ sleep 2s
2178
+ clear
2179
+ fi
2180
+
2181
+ # Back to Menu
2182
+ if [ $CA_ACTION -eq 4 ]; then
2183
+ clear
2184
+ break
2185
+ fi
2186
+ done
2187
+ else
2188
+ print_r "FTP is not installed"
2189
+ fi
2190
+ fi
2191
+ fi
2192
+
2193
+ # Open Directory FTP
2194
+ if [ $SF_ACTION -eq 7 ]; then
2195
+ clear
2196
+ validate_yn_input "$(print_y 'Are you sure you want to Open Directory FTP?(y/n) :')"
2197
+ if [ $INPUT = "y" ]; then
2198
+ if [ -d /www/server/pure-ftpd ]; then
2199
+ cd /www/server/pure-ftpd ; ls
2200
+ else
2201
+ print_r "FTP is not installed"
2202
+ fi
2203
+ fi
2204
+ fi
2205
+ if [ $SF_ACTION -eq 8 ]; then
2206
+ clear
2207
+ break
2208
+ fi
2209
+ done
2210
+ fi
2211
+ fi
2212
+
2213
+ # Setup Redis
2214
+ if [ $AP_ACTION -eq 7 ]; then
2215
+ clear
2216
+ echo -e "\033[0;32m${Redis}\033[0m"
2217
+ validate_yn_input "$(print_y 'Are you sure you want to Setup Redis?(y/n) :')"
2218
+ if [ $INPUT = "y" ]; then
2219
+ while true; do
2220
+ print_g "1) Start Redis"
2221
+ print_g "2) Stop Redis"
2222
+ print_g "3) Restart Redis"
2223
+ print_g "5) Status Redis"
2224
+ print_g "6) Configuration Redis"
2225
+ print_g "7) Open Directory Redis"
2226
+ print_g "8) Back to Menu"
2227
+ validate_menu_input "$(print_y 'Enter your choice (1-8) : ')" 1 8
2228
+ SR_ACTION=$INPUT
2229
+
2230
+ # Start Redis
2231
+ if [ $SR_ACTION -eq 1 ]; then
2232
+ clear
2233
+ validate_yn_input "$(print_y 'Are you sure you want to Start Redis?(y/n) :')"
2234
+ if [ $INPUT = "y" ]; then
2235
+ if [ -d /www/server/redis ]; then
2236
+ systemctl start redis
2237
+ print_g "Redis Successfully Started."
2238
+ else
2239
+ print_r "Redis is not installed"
2240
+ fi
2241
+ fi
2242
+ fi
2243
+
2244
+ # Stop Redis
2245
+ if [ $SR_ACTION -eq 2 ]; then
2246
+ clear
2247
+ validate_yn_input "$(print_y 'Are you sure you want to Stop Redis?(y/n) :')"
2248
+ if [ $INPUT = "y" ]; then
2249
+ if [ -d /www/server/redis ]; then
2250
+ systemctl stop redis
2251
+ print_g "Redis Successfully Stoped."
2252
+ else
2253
+ print_r "Redis is not installed"
2254
+ fi
2255
+ fi
2256
+ fi
2257
+
2258
+ # Restart Redis
2259
+ if [ $SR_ACTION -eq 3 ]; then
2260
+ clear
2261
+ validate_yn_input "$(print_y 'Are you sure you want to Restart FTP?(y/n) :')"
2262
+ if [ $INPUT = "y" ]; then
2263
+ if [ -d /www/server/redis ]; then
2264
+ systemctl restart redis
2265
+ print_g "Redis Successfully Restarted."
2266
+ else
2267
+ print_r "Redis is not installed"
2268
+ fi
2269
+ fi
2270
+ fi
2271
+
2272
+ # Reload Redis
2273
+ if [ $SR_ACTION -eq 4 ]; then
2274
+ clear
2275
+ validate_yn_input "$(print_y 'Are you sure you want to Reload Redis?(y/n) :')"
2276
+ if [ $INPUT = "y" ]; then
2277
+ if [ -d /www/server/redis ]; then
2278
+ systemctl reload redis
2279
+ print_g "Redis Successfully Reloaded."
2280
+ else
2281
+ print_r "Redis is not installed"
2282
+ fi
2283
+ fi
2284
+ fi
2285
+
2286
+ # Status Redis
2287
+ if [ $SR_ACTION -eq 5 ]; then
2288
+ clear
2289
+ validate_yn_input "$(print_y 'Are you sure you want to Status Redis?(y/n) :')"
2290
+ if [ $INPUT = "y" ]; then
2291
+ if [ -d /www/server/redis ]; then
2292
+ systemctl status redis
2293
+ else
2294
+ print_r "Redis is not installed"
2295
+ fi
2296
+ fi
2297
+ fi
2298
+
2299
+ # Configuration Redis
2300
+ if [ $SR_ACTION -eq 6 ]; then
2301
+ clear
2302
+ validate_yn_input "$(print_y 'Are you sure you want to Configuration Redis?(y/n) :')"
2303
+ if [ $INPUT = "y" ]; then
2304
+ if [ -d /www/server/redis ]; then
2305
+ while true; do
2306
+ print_y ""
2307
+ print_g "1) nano editor"
2308
+ print_g "2) vi editor"
2309
+ print_g "3) vim editor"
2310
+ print_g "4) Back to Menu"
2311
+ validate_menu_input "$(print_y 'Enter your choice (1-4) : ')" 1 4
2312
+ CA_ACTION=$INPUT
2313
+
2314
+ # nano editor
2315
+ if [ $CA_ACTION -eq 1 ]; then
2316
+ nano /www/server/redis/redis.conf
2317
+ sleep 2s
2318
+ clear
2319
+ fi
2320
+
2321
+ # vi editor
2322
+ if [ $CA_ACTION -eq 2 ]; then
2323
+ vi /www/server/redis/redis.conf
2324
+ sleep 2s
2325
+ clear
2326
+ fi
2327
+
2328
+ # vim editor
2329
+ if [ $CA_ACTION -eq 3 ]; then
2330
+ vim /www/server/redis/redis.conf
2331
+ sleep 2s
2332
+ clear
2333
+ fi
2334
+
2335
+ # Back to Menu
2336
+ if [ $CA_ACTION -eq 4 ]; then
2337
+ clear
2338
+ break
2339
+ fi
2340
+ done
2341
+ else
2342
+ print_r "Redis is not installed"
2343
+ fi
2344
+ fi
2345
+ fi
2346
+
2347
+ # Open Directory Redis
2348
+ if [ $SR_ACTION -eq 7 ]; then
2349
+ clear
2350
+ validate_yn_input "$(print_y 'Are you sure you want to Open Directory Redis?(y/n) :')"
2351
+ if [ $INPUT = "y" ]; then
2352
+ if [ -d /www/server/redis ]; then
2353
+ cd /www/server/redis ; ls
2354
+ else
2355
+ print_r "Redis is not installed"
2356
+ fi
2357
+ fi
2358
+ fi
2359
+ if [ $SR_ACTION -eq 8 ]; then
2360
+ clear
2361
+ break
2362
+ fi
2363
+ done
2364
+ fi
2365
+ fi
2366
+
2367
+ # Setup Memcached
2368
+ if [ $AP_ACTION -eq 8 ]; then
2369
+ clear
2370
+ echo -e "\033[0;32m${Memcached}\033[0m"
2371
+ validate_yn_input "$(print_y 'Are you sure you want to Setup Memcached?(y/n) :')"
2372
+ if [ $INPUT = "y" ]; then
2373
+ while true; do
2374
+ print_g "1) Start Memcached"
2375
+ print_g "2) Stop Memcached"
2376
+ print_g "3) Restart Memcached"
2377
+ print_g "5) Status Memcached"
2378
+ print_g "6) Open Directory Memcached"
2379
+ print_g "7) Back to Menu"
2380
+ validate_menu_input "$(print_y 'Enter your choice (1-8) : ')" 1 8
2381
+ SMC_ACTION=$INPUT
2382
+
2383
+ # Start Memcached
2384
+ if [ $SMC_ACTION -eq 1 ]; then
2385
+ clear
2386
+ validate_yn_input "$(print_y 'Are you sure you want to Start Memcached?(y/n) :')"
2387
+ if [ $INPUT = "y" ]; then
2388
+ if [ -d /usr/local/memcached ]; then
2389
+ systemctl start memcached
2390
+ print_g "Memcached Successfully Started."
2391
+ else
2392
+ print_r "Memcached is not installed"
2393
+ fi
2394
+ fi
2395
+ fi
2396
+
2397
+ # Stop Memcached
2398
+ if [ $SMC_ACTION -eq 2 ]; then
2399
+ clear
2400
+ validate_yn_input "$(print_y 'Are you sure you want to Stop Memcached?(y/n) :')"
2401
+ if [ $INPUT = "y" ]; then
2402
+ if [ -d /usr/local/memcached ]; then
2403
+ systemctl stop memcached
2404
+ print_g "Memcached Successfully Stoped."
2405
+ else
2406
+ print_r "Memcached is not installed"
2407
+ fi
2408
+ fi
2409
+ fi
2410
+
2411
+ # Restart Memcached
2412
+ if [ $SMC_ACTION -eq 3 ]; then
2413
+ clear
2414
+ validate_yn_input "$(print_y 'Are you sure you want to Restart Memcached?(y/n) :')"
2415
+ if [ $INPUT = "y" ]; then
2416
+ if [ -d /usr/local/memcached ]; then
2417
+ systemctl restart memcached
2418
+ print_g "Memcached Successfully Restarted."
2419
+ else
2420
+ print_r "Memcached is not installed"
2421
+ fi
2422
+ fi
2423
+ fi
2424
+
2425
+ # Reload Memcached
2426
+ if [ $SMC_ACTION -eq 4 ]; then
2427
+ clear
2428
+ validate_yn_input "$(print_y 'Are you sure you want to Reload Memcached?(y/n) :')"
2429
+ if [ $INPUT = "y" ]; then
2430
+ if [ -d /usr/local/memcached ]; then
2431
+ systemctl reload memcached
2432
+ print_g "Memcached Successfully Reloaded."
2433
+ else
2434
+ print_r "Memcached is not installed"
2435
+ fi
2436
+ fi
2437
+ fi
2438
+
2439
+ # Status Memcached
2440
+ if [ $SMC_ACTION -eq 5 ]; then
2441
+ clear
2442
+ validate_yn_input "$(print_y 'Are you sure you want to Status Memcached?(y/n) :')"
2443
+ if [ $INPUT = "y" ]; then
2444
+ if [ -d /usr/local/memcached ]; then
2445
+ systemctl status memcached
2446
+ else
2447
+ print_r "Memcached is not installed"
2448
+ fi
2449
+ fi
2450
+ fi
2451
+
2452
+ # Open Directory Memcached
2453
+ if [ $SMC_ACTION -eq 7 ]; then
2454
+ clear
2455
+ validate_yn_input "$(print_y 'Are you sure you want to Open Directory Memcached?(y/n) :')"
2456
+ if [ $INPUT = "y" ]; then
2457
+ if [ -d /usr/local/memcached ]; then
2458
+ cd /usr/local/memcached ; ls
2459
+ else
2460
+ print_r "Memcached is not installed"
2461
+ fi
2462
+ fi
2463
+ fi
2464
+ if [ $SMC_ACTION -eq 8 ]; then
2465
+ clear
2466
+ break
2467
+ fi
2468
+ done
2469
+ fi
2470
+ fi
2471
+ done
2472
+ fi
2473
+ done