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.
- package/.npm/_cacache/content-v2/sha512/08/06/e7afa473e0261090b614b52357c503d41f680af1fde259ec5596c9cc783f868e5b10d17b32d5c397fa637776dc58a26472db50a23b353c521c3a3b09dc11 +0 -0
- package/.npm/_cacache/content-v2/sha512/0c/71/07a81c35d9e1c8efe108e418321223f1555870c019bc030979280540aef641027cbf5757a529d823fd8ba899f9fc1fce9b4faf89286d30fc0f885a958741 +1 -0
- package/.npm/_cacache/content-v2/sha512/13/f6/6c754e072ecffaf206338064e43227164cb3dd01fb492df24594b50000a646912b4d53bdac6634fae929cc0d539f39663f600a220fb2716bd887be781c6a +0 -0
- package/.npm/_cacache/content-v2/sha512/14/2a/e898180b49206dc8a88c0c23561b0b02b780290f90470f16736d833c48290dfa5d05ac0dd3df6f8f166fdf06247089cfdda58d14dbdd64a9448efdc6445b +1 -0
- package/.npm/_cacache/content-v2/sha512/15/03/783117ee25e1dfedc05b04c2455e12920eafb690002b06599106f72f144e410751d9297b5214048385d973f73398c3187c943767be630e7bffb971da0476 +0 -0
- package/.npm/_cacache/content-v2/sha512/1c/cf/1efbb8a2da2219879444f0dff7c031c0602bf7c0d31845e988120444110ed41e6d9fecc39e6841071ef7bf9c7733559b75c687cd81c5b2fa7742b8efdcfb +1 -0
- package/.npm/_cacache/content-v2/sha512/1e/34/83470ea0644e4932081cb4705c8d56a4d3cf8a1158522220f31674fd4bd69e826a7ce52fdb45e0554dbe104c5691369b49f64b9868d8676cd10e91b29bfc +0 -0
- package/.npm/_cacache/content-v2/sha512/22/c1/62b068032a4eeaccaf5eacc22441efd7c2249475a73bcf7c183ac8dc2e484f072de4d5296f2e8221d9d007225129800f7bd42820b8caf1f73f1f160eed48 +0 -0
- package/.npm/_cacache/content-v2/sha512/24/82/08ded6aa4399e21b553a2ab89520de128f3dd75815f1a6538aab5b00f3ac8394fc64c86e4b281bf095b9ddc51c5d55c482bb9a3083b4dd3c8e7d20203c6f +1 -0
- package/.npm/_cacache/content-v2/sha512/26/af/2182d680d289d47759ce07e7739bf555bf5873e15c5f8ba631e0bfa7725d70f5dca462582a1a1701971e37e00a634d908d2d444d768a967e405aa5b4218c +1 -0
- package/.npm/_cacache/content-v2/sha512/29/75/c515d01b15763881e148c28c8d2be7f96756fbb307d70017cbec75c29a821630a5377664b6ebaef603811e42d0f32cacbb49799f06ee7526896f10ac2d18 +0 -0
- package/.npm/_cacache/content-v2/sha512/2a/39/ee78f9ee068b3d889027bc74c7088c219de38a39219aa34121c31f20c73203081f701dcd5d72efbc6bc38520128b9ee718b0a048ff093a45915c6ff220f5 +1 -0
- package/.npm/_cacache/content-v2/sha512/2c/47/8e46ef521098520cca41c9073e5b8abfc834b79301f8022549d84f1f18973d020c2ae7ff89240617e9fd38b30bbb7860dfb3995d8a52639ebb78513df433 +1 -0
- package/.npm/_cacache/content-v2/sha512/31/c9/cd895d65f1161e63cb41804a6ea1d082d662d475b48df826012fb909b093489ce3fc5230c3130764e8cc3ad2f74b2ebaf934729984c00e4ab476359b90fb +0 -0
- package/.npm/_cacache/content-v2/sha512/32/cb/ed3ab7c6f5972b3b0016f908be17a1db0f40965c487da2eefbb8e6fb14cd963e1c13eec98cf37dcfcda9e124bb205e337cf48afa5763dccd7367329c0a87 +0 -0
- package/.npm/_cacache/content-v2/sha512/35/f2/7853304271018b0e542aee71f11feb6fde4c99d211d0a85e413ba27bb4d25e3f9768d6594fafc759f331e89df840bb43c701d3244a8fbca34c3183d9595b +0 -0
- package/.npm/_cacache/content-v2/sha512/38/91/424eab51c0557a06f8d77c1bb0fe1f04cc26535bf4cd87ca8399648b86b61ed29637b3968d4a76d39d832a040372de115f552c51e14636bbd02065c5a333 +1 -0
- package/.npm/_cacache/content-v2/sha512/39/e8/bd387e2d461d18a94dc6c615fbf5d33f9b0560bdb64969235a464f9bb21923d12e5c7c772061a92b7818eb1f06ad5ca6f3f88a087582f1aca8a6d8c8d6d1 +0 -0
- package/.npm/_cacache/content-v2/sha512/3a/a9/6ecface1197f1cc9169342514c3f0f346d22551b6c7f7056fc64f85420b1a01e46bd4aca24082390829bde78f7abaa27593ab4f5e22a6a7c96fb20b716e5 +0 -0
- package/.npm/_cacache/content-v2/sha512/3b/c4/2db4a43743f57483d4142fca7e00966927c1693586aec44ae6d9b66fa0289781bf34e129badccf0161f9a88d543b67553095d65f93f621ebc946d0deb7b0 +1 -0
- package/.npm/_cacache/content-v2/sha512/3f/66/d238c01cfdc88bcfa0f38235651893fdf81ac95aee540c62bbd02da2c1e0b940121e15fd195d1bc68c48f6b9882b63632400086c4961c35a516d12ba195b +0 -0
- package/.npm/_cacache/content-v2/sha512/3f/a2/0c4108cadd3b61646bacd217e41ff4f0731b4061fcfb8f9d8709563d2f97813724099870d918acae14cd1afdc7d265c4e12320e0f49bdbcadef14c92b821 +1 -0
- package/.npm/_cacache/content-v2/sha512/49/68/56d2983b1787d64bc3729b6d909b4a0d0380dd82462856498d573010dc31070da13379b79d5bd861e128e2e56e90ad35c0d117a0f07f9688215854a86192 +1 -0
- package/.npm/_cacache/content-v2/sha512/4c/a3/df1d7c13ebbb7fa4b22aa9aa099c7562b568e08a1e2e2895d73d58919ce041058c9a497484406f1ff2c7c94114bc1f0d01bed2a4ef15d5244e7af1d66d2a +1 -0
- package/.npm/_cacache/content-v2/sha512/4e/6a/01d0b29f8ebc663a29fca87005ae4698d24f5a04923d8917ba48164922ff3733b1cc7f1337221c1cb339a6f4257e24c8dc931268ec8710e9ef356a0c9d53 +1 -0
- package/.npm/_cacache/content-v2/sha512/4e/ce/d9ecc7719152d0ef4d1816f44e0617745e56e30de3ae8dd7d89a32f7f2cb66fdcd08c15490ec363ea36137f66719ee93add9b8fd56d53ce80653a7582136 +1 -0
- package/.npm/_cacache/content-v2/sha512/51/55/3d7626ead897055b140f03a282aa3e4ee3654e980637cd051f10ac54d0aa53197c0da028e45f57b5dde1cdbf0ff13f29edea9534ad9d61b63593353497b2 +0 -0
- package/.npm/_cacache/content-v2/sha512/5b/db/f7b75e81f9a5a468edf254e900634ecfb46c3dc01a10fcf822318047da15b4657a69151b6c9d92139a9fc8b1496ad3645ff27da8ceec4e933d6bf2b36861 +1 -0
- package/.npm/_cacache/content-v2/sha512/61/9a/372bcd920fb462ca2d04d4440fa232f3ee4a5ea6749023d2323db1c78355d75debdbe5d248eeda72376003c467106c71bbbdcc911e4d1c6f0a9c42b894b6 +0 -0
- package/.npm/_cacache/content-v2/sha512/62/58/f3edf7f23dbacba4b9e0accb59ecd76e52056f8bac06f5127d21473209de7d610f75d4f049a6138351c6ce55ba987f17b5c2e61ffcb27c3dab8c470b0cfe +0 -0
- package/.npm/_cacache/content-v2/sha512/63/52/0a79904c73fd9f00131d64fed86660072f032096018d9d1df3df4a2ece1b1d0ed6655734b4cc002592047b6f49169e1e5580576e03df4e1e236b9565ba62 +1 -0
- package/.npm/_cacache/content-v2/sha512/64/29/60e80698bda9af60413cd9ddc8c9ddef49222343ea1d823693cd1b8edeceeda0274529cce86f68b4cc287b244f245a7d7bcaf016854571bea1b051a96c44 +0 -0
- package/.npm/_cacache/content-v2/sha512/64/36/3e6cf9b9cd34c5f98a42ac053d9cad148080983d3d10b53d4d65616fe2cfbe4cd91c815693d20ebee11dae238323423cf2b07075cf1b962f9d21cda7978b +0 -0
- package/.npm/_cacache/content-v2/sha512/64/95/490688f6776ac694b016a8607516f15e13405c0a7f0c3b51ce7724596e6836eb596030fee2911fae7577e16e749c6da536d5dcb99fe382ed6db12e7cdeb4 +1 -0
- package/.npm/_cacache/content-v2/sha512/64/be/7dcd4075f7e06192540c3ef814c575fa92932c8d8fe8c1b461763ccbf802d0d8fb327f500c83121990cfab35c4b153826a501184facfd0c739561a4928e1 +1 -0
- package/.npm/_cacache/content-v2/sha512/65/92/9298300414e8a311104b92661f27ebe6937c3eee138b603364442b91b8c246126a9834234bc81045c162953217f068417758e774665c3ce94fd60bffa763 +0 -0
- package/.npm/_cacache/content-v2/sha512/67/24/83ecd7fdd5a2c1d11c4be0a1ab28705797b11db350c098475ca156b05e72c3ed20e1a4d82db88236680920edaed04b8d63c4f499d7ba7855d1a730793731 +0 -0
- package/.npm/_cacache/content-v2/sha512/69/1b/c97042acca90b24939f254b952ccd740e9a23daa5e1cb28eec5a2076a3123dce1f9eb03ca63f9b4922639d2de2f25c692d090a5b694b63e550001d00b6a1 +1 -0
- package/.npm/_cacache/content-v2/sha512/73/20/39ea208c1c087909dce32486b86a8849c9e3b561bc0b8b725cdf9326454ea9a2ba058c8199cd4ceea468913ce8e01e0f532eee37c5ba705e4e76ddf33128 +0 -0
- package/.npm/_cacache/content-v2/sha512/7a/1f/4efa1c111cd6c6e012d38c49779f0d38e029069b95fa2e86827fb2cfa7b514f10aede3b258362ea73d7f318d6f7b4ca18a9b5a2e72d834412a597bdaab9f +0 -0
- package/.npm/_cacache/content-v2/sha512/7a/cf/783379d321fb043e2b1169f6a4f870cb7c75e7281855def5397aa3dc4b77e5216a9cc495a05c75e27b2dd8ae968db1a9d8e5e8b55686046cece28eeabd04 +0 -0
- package/.npm/_cacache/content-v2/sha512/7d/ec/6150514f4c657cc9b02d48819b57a80e912bfc52d45b0c19c0c8b430e103ca920365b07d81c8f1ad314a9d5a4a2ce98091980a958b0819ac973f9910f365 +0 -0
- package/.npm/_cacache/content-v2/sha512/7e/05/0d1daca7dfcf192b550a545544dc62e1a484277e181359eb387a7f90f94d1006a11a0bc7e32e24b3eea681ef25743b307aef319fbfd928f072f0799f19a8 +1 -0
- package/.npm/_cacache/content-v2/sha512/7e/3a/ae0b9f5c0fb0b25babab3572b4141b9f9197288861bcd304ee3ee8d7e7dd1c0794ed967db4136501e12fd601156a8577df665d8b3604be81074f2088a6fe +0 -0
- package/.npm/_cacache/content-v2/sha512/7f/7a/90f68432f63d808417bf1fd542f75c0b98a042094fe00ce9ca340606e61b303bb04b2a3d3d1dce4760dcfd70623efb19690c22200da8ad56cd3701347ce1 +0 -0
- package/.npm/_cacache/content-v2/sha512/8b/1f/c5c4f9f43038dec89ee2ff2a07185b7f117e8bc8d6f148484f3d73833cbf8a07454f93ce9461f2f494c772f8a0a7bfe7e6bc8cf24b068ae423b0a956d64d +0 -0
- package/.npm/_cacache/content-v2/sha512/8d/11/62f140c6a3a8fea1d6621298dacd9696a846a5df0fdb6ac163407404c15b592460e9c5b1f531e625bb0092f17ab9c262c9a280e5320bd56ab9967c6338e2 +0 -0
- package/.npm/_cacache/content-v2/sha512/8f/42/8b60f866eb379a738973de8277a3ae6abe040270fb9b8b2a2d66b5ea11a1b884d6a03583bca9d954ad7e6fc2abfda21a9e4ff6778fafb25b4ebbc9659d53 +0 -0
- package/.npm/_cacache/content-v2/sha512/8f/77/d52e0bd3a39dbb6a7c98c893864d825b1bebe79d062f1349b99a691cd532be9f1029a6408b3082f4699e1d6e55423681928619be933138654ca4068320e2 +0 -0
- package/.npm/_cacache/content-v2/sha512/8f/c9/2b9b72e83035ea845c3faf3e8e73564265462d0cdb57f372105ecdbb9d736c408b2cde9c2cbbaca4fc587c3cd35ef3a7af39a7e1e2bf96ddc903ebd42d3f +1 -0
- package/.npm/_cacache/content-v2/sha512/96/17/7fc05f8b93df076684c2b6556b687b5f8795d88a32236a55dc93bb1a52db9a9d20f22ccc671e149710326a1f10fb9ac47c0f4b829aa964c23095f31bf01f +0 -0
- package/.npm/_cacache/content-v2/sha512/99/18/47704b22d4ed8aa3f8d60b02c91daffde4eea33d5dcee7de9e778a12250169b389c63515b250c1972bd5cefa4a621de052cfcad56c9ac97c6c46b20f9c10 +1 -0
- package/.npm/_cacache/content-v2/sha512/9c/18/087e0e98f32d3d1eb5cb8f45128469888bed1099afe11b82d01ec15fd6b82d8b94e4160c9091f5da625d6fc0982e0feab4f19648da7b7fd5067836ffb313 +1 -0
- package/.npm/_cacache/content-v2/sha512/9c/8b/5e07a34a7efd07f09a481c3320e608bf1ed0e6f530c72c9b7ef810231528d8b8a902a49dd7c63d174f8d34a270d5985c8c78c6fcab0383ce83467fa94269 +1 -0
- package/.npm/_cacache/content-v2/sha512/9e/52/ec533826d647cb5d25df45931cd4a2c0ba077886a2470d3bdcda10c8c12de66407cc12e31b734dd2ba3305f8611ca5a5ffa9ba1ec9cc3a88ef09c15bf6fa +0 -0
- package/.npm/_cacache/content-v2/sha512/9e/64/f64f49658dbc5d4197eca6c9e8f6182b1b7522afa2ace5a7e2b26eb6a68c6a04ceac0e7304b8f9b34eaf17374384c2a28b2dd8758d0237ab213ae8dcdbdf +0 -0
- package/.npm/_cacache/content-v2/sha512/9e/cc/de1de3b9e1bd8c19a2210c629e54738a0d8978207c77dd812cbd126ee06494c8dd21fb9ff93d54409e2c1e631a083eab5706e29890971a602b60f72636e9 +1 -0
- package/.npm/_cacache/content-v2/sha512/9f/33/8cc755942d8929159509573857ac18cec87aaaf0946bfd76cbcd0c7b6cd5e4a38251b9c644b40321df337641e15fdf9607d5dcd0d7b6f400ab195b11226b +1 -0
- package/.npm/_cacache/content-v2/sha512/a0/ce/86477529ff444004052699bbd70892fae305a28a0becc260962e1fd0b80d1e4cb7d331988b57ad88807247bfb2fe74e2ac4abd8cb069c34bd0aa07ea6b03 +0 -0
- package/.npm/_cacache/content-v2/sha512/a9/e1/485ed3f8312a22e8d2ea3b5d967ea011596b822a2d919fff6124b126b41e724cdafd0ea1569094427f6a92856ccf7803119ce802aead2c83f28bbf9112f7 +0 -0
- package/.npm/_cacache/content-v2/sha512/ab/15/c8121e290867c72028f5980250dbfd975599230834dc1207e8490c5cfdf622bd46714e493b2f76c30494a836b1335c8d7ba143b90e9d3b92da84e4acdccc +0 -0
- package/.npm/_cacache/content-v2/sha512/ae/9d/d2a34eca71d9a629b1af81a37141226bedb1954959394bd12ad45fa9a5b468ef4f9879a0f1930e4377c34f37e183e9b8e7626d95b8fb825e6a6e62f9825d +0 -0
- package/.npm/_cacache/content-v2/sha512/b0/c4/86eae8813cc26b7dfb5c095299e8d9b392c4d3b26e95a0736a0e93e14e5a532b33da47ecb9f8c6756f22a21ea62399d17e15f3c3819ecaa7043faa2e8914 +1 -0
- package/.npm/_cacache/content-v2/sha512/b0/f5/38b95edd625bed589c70c311c3d0fba285536213b4f201b439496c43081f66518bce82ba103b061040e28f27c0886c4fb51135653a82b5502da7537818be +0 -0
- package/.npm/_cacache/content-v2/sha512/b5/68/45061874ad6a7120066d941cf31c0dccdf1fef5bd57d2c82e69504abf547991977d32932e0f3d6a6741cbd9a3dfc7c9f95475575462a493a52def5216e02 +1 -0
- package/.npm/_cacache/content-v2/sha512/bb/8f/23f745b4aece3610bfe111cdcba9b2801b5c2e475115456eb9f1f9a33662faa638343c1133d50db136cd3a4f4608d995efaa119e7d3bdfef6332e0f96c26 +1 -0
- package/.npm/_cacache/content-v2/sha512/bc/55/348b438386fd352d07fda5c5f65d5e7d7fc0fc4c6ac9cc7e148dec898f0cf827816c9da57ca65bd15ec908971c5765de35a79b6b29f0896a5c9527d8cf9a +1 -0
- package/.npm/_cacache/content-v2/sha512/bd/8b/7b503d54f5683ad77f2c84bb4b3af740bbef03b02fe2945b44547707fb0c9d712a4d136d007d239db9fe8c91115a84be4563b5f5a14ee7295645b5fabc16 +0 -0
- package/.npm/_cacache/content-v2/sha512/c1/0d/05e30dded4436e81b3c83cd7bc4a1402c3454f867330981b0a292a7f8b8b62ac74e54229707801360d7007df839eee1b6039ecda4977085b15b8cb05def9 +1 -0
- package/.npm/_cacache/content-v2/sha512/c1/27/c482b98e64decd58dfaefe6b02a22f0a1b3146e74882c3d0c0a59156e8f56b3d29cd7170fc2ce88e35e44a54a50018049de4262403f40d7d2edaf339a7f7 +1 -0
- package/.npm/_cacache/content-v2/sha512/c4/84/40ced4801953b5bd99db33c960a78ad74a65314aca28ae199598ef2a0e3128c145ee09e2cc94206e636daf48e25d6c5d405684022c4288d7b695c32001ad +1 -0
- package/.npm/_cacache/content-v2/sha512/c4/ee/99fe6fe1d1e7f7f4ad7d97969088d7373133ab91da42adef982dca171615580b0ac3c7cb4e5b433d3ee87e070c74b8b4431bdc05b0fe80a4bfc3197b3f3a +1 -0
- package/.npm/_cacache/content-v2/sha512/c5/b6/c21f9742614e53f0b704861ba1ec727cf075ee5b7aac237634cce64529f6441dca5688753f271ce4eb6f41aec69bfe63221d0b62f7030ffbce3944f7b756 +0 -0
- package/.npm/_cacache/content-v2/sha512/cb/6a/7d6723dcbe3a2b2d25a413d110d9403ecc3be452f0ad5ee8bac4bc5ab9888ad04a405f8304c7aa37b33f2aa0bf0bdedcc577db055f32f6831bba106bf49a +1 -0
- package/.npm/_cacache/content-v2/sha512/cd/d1/fa475aaabe56bac9aeedb5b0ebf7f7a723fdd949adda457ef43f3041e234f193893a6f60c1f6c1457c8c7b87742354020e74463866f22821f222d6d196c9 +1 -0
- package/.npm/_cacache/content-v2/sha512/d0/3d/e37bde87ffdb4bff1f3de59ff5fe540747d1e4f07cb5b2a9b5b4737ab6fc1bd1f7bf68eaaa4aaacfcb39e9d467992f69e2c34e086bc95edae7053728e92e +1 -0
- package/.npm/_cacache/content-v2/sha512/d1/62/c9e2786d62ce97ae27be7933a2fd1b9bcde965b47f54eb7f117b27cf2bafc8207be0861890f6fb98a5fdab205efe3317663f5a3d15091baeffea2a10e87c +0 -0
- package/.npm/_cacache/content-v2/sha512/d1/fc/e3f49c4e2df27e5c62e147ccdedee9cdd0a642819c224920f3d7af151118caf1697c91549d72eda4b29778b38c2d01ad72feaad5462000d1672556cbb49e +0 -0
- package/.npm/_cacache/content-v2/sha512/d3/38/6773ea3c76c569730709744c8f2c98a9c5287dd9640a1c537fd80473cbd09da3c883f10006534445e8ee66e618ad3c30c08609a06a062b34f929ca5488d2 +1 -0
- package/.npm/_cacache/content-v2/sha512/d3/c9/1c1aa9d87ff6268e84617f1caef822f106352d1cb5cb5d7fef51fc7d9762d8cc6ddcd66eb59eba72154648eb3792f8b8bfc1630c89d0fd2a0aeab46ab798 +0 -0
- package/.npm/_cacache/content-v2/sha512/d4/36/062293a4d3601afbf81b91fbfe8a1e126d93c7f32662f8ce910d997d27c5a17c737ce027b853ff83278593399c00b29bcfbe71d8577ec9d54871a73d03ca +1 -0
- package/.npm/_cacache/content-v2/sha512/d4/d2/dfa3175684eb5c818fdacd638d551e9318ac9affb090af3878e230ffd6e130f671d30da8a15ab8ce1b682e6a04adff578dc2d1436209bc69739c419c0706 +1 -0
- package/.npm/_cacache/content-v2/sha512/d6/52/ca07632edda18fd50ff67823b1d1f35b44c7bb5ddc24b703abba17eaa9dd2b2095b03780e1f84de1acf4a50c25e7491ed4b59d4ddfcad55e6fbaf8c12125 +0 -0
- package/.npm/_cacache/content-v2/sha512/d7/28/8b3d72ad6e1fed3dac6a144430c52bd85ce41b5efc38a39b75343037523e298109417514f9561218f6d7b127eb8307d5de9513e276ea1bdde94cda30e0e9 +1 -0
- package/.npm/_cacache/content-v2/sha512/d7/53/5dcfb36ffa6bc00b58f492d4daedf01bd2f2f21865feacc1cd05842f8900c65341f0ee585cb4900da9b3e1bbd9d5f7f8b34ff227b53819ec89bff4b26cf6 +0 -0
- package/.npm/_cacache/content-v2/sha512/d8/12/593965eeda9da864a0bcc2ad55082b5aa47e18b0db6a6cfab32d2dbcb633b96c74ca148c0dc09e73964c6a5200489f1ba15aae8a6f793044cbae7b0dd58a +1 -0
- package/.npm/_cacache/content-v2/sha512/da/54/6f4c4aadc717fed8763ca38c6671e370875b50ff354e196811366d5192b3ec126f92c3894bcbcb8be794fa2a2cfa345d78e25ce642ff9239cf90d1e7eb89 +1 -0
- package/.npm/_cacache/content-v2/sha512/da/9d/8a2594d2a90fc8dfe1d7e3612960e6b69777fc12bbfc3162accb623db9fe3003bc852245d17df61db31f3acbacf8bc7b55f2eee0fa93e5afcff8a2e031b1 +0 -0
- package/.npm/_cacache/content-v2/sha512/dc/0b/a78170b823c90ab12f4fb92e091f69dcfb46d563f9a382b7a98474c88bc7e911e1ac4c705425ea2ca7459cd66c983049660f407739ce172ff1d52783d5da +0 -0
- package/.npm/_cacache/content-v2/sha512/dc/51/8c065a25f5fedde32ad0e8a6e4480efb8f55410fbd3ec09d0c174cbf68a5a3e5697580b4f32a155d9bbbaf24f4a03788acf608a444baf364885f2780b2d9 +1 -0
- package/.npm/_cacache/content-v2/sha512/de/46/b2cef6d7a2232eda913bd0b4cf1248e733b5db29d98e4a066909ca64a9e2b08142145bec74d124d5ea22e271d24685026b399d797adb61f7e98ea87e0e8f +1 -0
- package/.npm/_cacache/content-v2/sha512/de/5a/b3e588d64d89d6e9d9436b94cb69309c4a17daaf57b8d2b99c255c020490ba996945ba3d1e0872049661b5839932b89fc60fef169f814509ccf88093df69 +0 -0
- package/.npm/_cacache/content-v2/sha512/de/fa/e3bb589ee3f15208db23308e7bd368c2e383215f695bb4b6d322a2063987ca225b8c408edb5f83a5a85b25d4ac41d71b9b03f9ea361971db7170d9a36c90 +1 -0
- package/.npm/_cacache/content-v2/sha512/e0/33/c3ec85498134ae82685ac3bc5c43c81469365aa05a9e88a56dcda20b5d89c06df6889bbfaea9f6d03042ea0d4697976aced1d200168221724d9e50b68b97 +1 -0
- package/.npm/_cacache/content-v2/sha512/e2/4e/5574b3313cdc53cdc8be37837b1aaf2561617e81687f8a0c6663d96c80ca5e98f3e0f02c4357cc31893ed783e6822913447a4abbd5c51fd921ba696caf05 +1 -0
- package/.npm/_cacache/content-v2/sha512/e2/d6/05ca27da15f19a72888e6e325e828964c12538c503466d581488d6155316d0db1da552c16f638855815cc68887ba58b38fab27165c0e3497e3d6b31b6153 +0 -0
- package/.npm/_cacache/content-v2/sha512/e3/1f/300ea3c17617267449b7f1f698f9d6dbb5748b8bc856311865eaa839e8c05f3eb40d15ac091558cbc499d31ac6bcd4e337a73a458a7b21e718efe576ec48 +1 -0
- package/.npm/_cacache/content-v2/sha512/e8/f0/5cb0345ee3c7489a0ded1e57ed7715e230663fc49debe02d1cb388c20586c7559f7a7c483fc70e35ca14c1aaab522f4cecdd49bf1e5e31c8d1387815ad62 +1 -0
- package/.npm/_cacache/content-v2/sha512/e9/3b/484f1ac02e30587152bacf185450d8fad9930fc98acb80ad3d601993fc8bf8a3ce0cb061403fdbe18da0ac9126b9724049965564431023cb5be14b976bb6 +1 -0
- package/.npm/_cacache/content-v2/sha512/e9/b6/166889ee3bb59092abce46b8934f1fa63bdb93aaf72430689c6426799b9b444d989dd8146c6d82cb6842a53fe71748a1093db0a5a94cce69340fe451535f +1 -0
- package/.npm/_cacache/content-v2/sha512/ec/40/079722c7239e9510874ae7bbb01dd1ca21a0066e75cf8b0d3259b6ab41938a68aa6f508816d2359154b89ab6733e5d7952c2c6a72011ff87318c26e94ca3 +0 -0
- package/.npm/_cacache/content-v2/sha512/ee/b2/94cb2df7435c9cf7ca50d430262edc17d74f45ed321f5a55b561da3c5a5d628b549e1e279e8741c77cf78bd9f3172bacf4b3c79c2acf5fac2b8b26f9dd06 +0 -0
- package/.npm/_cacache/content-v2/sha512/f2/b8/8ed35df46cf1b9c0334aea3691ba6b5c49d36c00330c3a4ffc8467b7f72fcc131e2fd4fd34ada232ae935b13a5edf8c183e233b858203c9127c21914f33b +1 -0
- package/.npm/_cacache/index-v5/09/a9/fee16b030712b0f86fea4ffebf8d4200ef0f9880f329be62027e519df4f3 +2 -0
- package/.npm/_cacache/index-v5/0c/af/66c45aed694b50ce029354b18d2dbc0d31fcfbccbb3c175bbff309501da2 +2 -0
- package/.npm/_cacache/index-v5/11/cd/6bad29635813d9d16b3a2d02542892345db19a559dcb44c848f337e93bcc +2 -0
- package/.npm/_cacache/index-v5/13/43/33a6e659f7174c1e83e3e79ead92536b2022e9aff231292d8180bbed16ec +2 -0
- package/.npm/_cacache/index-v5/15/1e/f750d3d270cc1d1748f1c1afdb20b29eda342bb7b5372e6473f9e7216505 +2 -0
- package/.npm/_cacache/index-v5/19/dd/12567ecf9fc498746b0f55b6345d8e65a84d05139903c21ccb610ad9a89b +2 -0
- package/.npm/_cacache/index-v5/1b/ed/549424dd308389bf419007f2aa977210cef08ea4c7838e11d8a9e3229313 +2 -0
- package/.npm/_cacache/index-v5/1c/54/a0ec02e1d1830abbfbf22dc509ce961d56dc7919cc52ab1804c697668661 +2 -0
- package/.npm/_cacache/index-v5/20/1d/19e050687f7fa1cddc140a79b7422de025604dbaeeacea5975aada1447ff +2 -0
- package/.npm/_cacache/index-v5/20/90/5b8a97881f06a492e9e71dddcf82c62cb74c2e93e376a65182460faa4200 +2 -0
- package/.npm/_cacache/index-v5/27/b6/bc1d086124331680bbaa5c4c1b8d244d40fc2dad68e9fe8dcd4f002638ec +2 -0
- package/.npm/_cacache/index-v5/2a/73/f5b12412d0e8766b46ec3a813882f8caa828b5c3948efc5468c88b123a11 +2 -0
- package/.npm/_cacache/index-v5/2e/4e/1e243a1bd453c4f434040b376f8d55430c17e4e25a98d014720bee55135e +2 -0
- package/.npm/_cacache/index-v5/2e/ee/e841228f2c58d3e1853bb640a1607ad94243fc71ab2306da6ce84f1ff576 +2 -0
- package/.npm/_cacache/index-v5/2f/4f/48172e5b32a62e0a26c70aea4b2f618b456682de5afba4ab7c17e2a8a928 +2 -0
- package/.npm/_cacache/index-v5/2f/b5/99a8ac8d9fe0f2ad4894aa959445cb3e3c9b6cd11883956769678b196ced +2 -0
- package/.npm/_cacache/index-v5/36/d6/0ec727dc46dd7a5b3d32487a89e6ffba1789d0a5f37a3874c6520a568849 +2 -0
- package/.npm/_cacache/index-v5/39/50/f0cdb757fd9e75608d06f560aebd72684f5a59c224261dbac8c133a094db +2 -0
- package/.npm/_cacache/index-v5/39/89/e8e682ce0db1fe5b9aaee559a8fa991048e82cb974696de59c87ac25cdd1 +2 -0
- package/.npm/_cacache/index-v5/3b/c9/68da17f4dd09e12875ca6413db4655a89b5a5eb8613faca86038e97a5c72 +2 -0
- package/.npm/_cacache/index-v5/40/cb/9c7967f3b8ca30bc891a3d867197a739fda2b6820f63e80be2af3b7e87f1 +2 -0
- package/.npm/_cacache/index-v5/41/3e/151b03bcacd057978b4c891ae842f10b5c2fffcb8c0fe905a0ae7d3751d2 +2 -0
- package/.npm/_cacache/index-v5/41/d6/d667cce771c080fca6ef96561e838a4d1d68c3e3a819d5289c2ea3d25b8d +2 -0
- package/.npm/_cacache/index-v5/43/75/8fc648840100aa96dcb2ff5e39a9f835b1593908ad4c2cf03f0f0fec249c +2 -0
- package/.npm/_cacache/index-v5/46/19/40450fcc6c50118d248943b47c1604211094b7c983b13e49f8734b58ead7 +2 -0
- package/.npm/_cacache/index-v5/46/b3/3d15bb50b75b21e94837be0b830f143588e46710a66a4d6e323a4c0bcfb3 +2 -0
- package/.npm/_cacache/index-v5/49/be/d7c7226070dfe99c54e937ced9257a48a91cef76a2a78ef05a3b00db3779 +2 -0
- package/.npm/_cacache/index-v5/49/c2/6b0f3de8953e1f78cb273e90a4a5b266d906c96f3e10dd2e1bc16f9b2e51 +2 -0
- package/.npm/_cacache/index-v5/49/e3/9e9fe3c971d008e06398df8208c78d9f5dcc5be0d68b07c2580c7cbada47 +2 -0
- package/.npm/_cacache/index-v5/4c/74/a2b741aec6bd4dd94223969fdf1afbd63e8b8cbafb7cd5d5029acb3181e1 +2 -0
- package/.npm/_cacache/index-v5/4d/dc/fc4845b4d897527a8d76f83ace9a59640d93ee5356ef3fa40374289be8f5 +2 -0
- package/.npm/_cacache/index-v5/4e/5e/e2a6284e759231bc5e31fb0a378c5e22d4e10ad3f06818081bf46670577a +2 -0
- package/.npm/_cacache/index-v5/4e/cb/181b542af5715304f09bc46022c0baa2bde37d2b7e9fa2b39cf626f467fb +2 -0
- package/.npm/_cacache/index-v5/50/9f/0c6c4e2c4d603bcddf865dcf757e6dce59dbf6a03df01ff72d13a7b141f6 +2 -0
- package/.npm/_cacache/index-v5/51/63/fb556d33d3ea2e24f5d250373faa6b1a6d0d6970498a2c7cc282f0b893b3 +2 -0
- package/.npm/_cacache/index-v5/53/77/9588242c1de53a5269e253036f1b296e4a0e161c52f307806dd78294daf5 +2 -0
- package/.npm/_cacache/index-v5/56/55/00374dd6a1a617292208c4a73101736334607a8f76a81180650d259f67db +2 -0
- package/.npm/_cacache/index-v5/59/0e/5d7b3f4c369d1d62065d5ca8f8572d2231a581ff043c996b2f5838c201ab +2 -0
- package/.npm/_cacache/index-v5/59/f7/d1a1d9315d444ba266d779ad1123e9b6ce1f2a9f55167821d4d242fd6051 +2 -0
- package/.npm/_cacache/index-v5/5a/98/d6a445f64d6b3b3e2f830db61898c5a703c2796d29da29678d640b699bfb +2 -0
- package/.npm/_cacache/index-v5/5b/1f/5eff49ddecf147e4885c98cfad0d251ce4eb4701e74982fdfd69f6604a7b +2 -0
- package/.npm/_cacache/index-v5/5e/2f/b0d7ba846044fe5a2fa1d8341f6a7f56438ae9161709a548cbda5f1fd7c3 +2 -0
- package/.npm/_cacache/index-v5/62/b4/5a80d5340f0d1a1fcf94cd1847b4d48b78c8eed07852f76260695eec3686 +2 -0
- package/.npm/_cacache/index-v5/6d/ee/ff10edbdd759e2dcf4b7d1a33103173087224e8dd3bd8878371d775146d3 +2 -0
- package/.npm/_cacache/index-v5/6f/bf/2d6ced24d2bf06ff3ae684d783856c45e55af5c37f95409c7732c5e69770 +2 -0
- package/.npm/_cacache/index-v5/75/90/951dcaeaf952ed3e0dc201c77f07958643aad61eade7bad23e66074dfaee +2 -0
- package/.npm/_cacache/index-v5/79/e6/319d4064e5cc0deeb236be141e51d18aab0148cb9c7f5794a23936482b09 +2 -0
- package/.npm/_cacache/index-v5/7a/e9/1098ee6bf9e5570b8d459c8955ec8ce24f6c48ce83f88f6856da24f1ee50 +2 -0
- package/.npm/_cacache/index-v5/7c/19/31667f75bbff34151a194a3229f4150af0fcbd1209a9ac910c05548f9d8a +2 -0
- package/.npm/_cacache/index-v5/7f/40/0a265c17fd9c0d008095d8426079ebc85dcf96d73711b217ad91cda8e702 +2 -0
- package/.npm/_cacache/index-v5/81/dd/7d5142549d8d59b3a092b412ba8f4abb4a2a8fd3b5e5a6c8d7bc86bb0ef2 +2 -0
- package/.npm/_cacache/index-v5/83/75/eed3b78adbcdc179f39196693011da33249d7cddc646c44ba9babe026068 +2 -0
- package/.npm/_cacache/index-v5/87/55/e56d34b37c3170079064597cabb288d076b0d0468eaba3b8a0cf8686ce1f +2 -0
- package/.npm/_cacache/index-v5/87/b5/c156c1ae007a444807d1be64c424e278aaee9c6baf52d9ddf781ffa72c25 +2 -0
- package/.npm/_cacache/index-v5/88/42/031a13c0a51cdf784d4ecbb67901f7ea4101c5f5e65d9e7fbfc98bc83035 +2 -0
- package/.npm/_cacache/index-v5/88/e3/5c1f7e51985c8a2bd6768db98e69b6d4ccfd57ab5acf7b86b30d54d2fc73 +2 -0
- package/.npm/_cacache/index-v5/8c/3f/3f36a0c43685a86c104116ac6b2331e94c005abd54ee9d644a52e1770b8e +2 -0
- package/.npm/_cacache/index-v5/8d/40/8a3f698d330d7e32ab1b76bb79b9c05b892cf4004e52d21ab5f94b2eace0 +2 -0
- package/.npm/_cacache/index-v5/8d/f8/aefda99ca03a1004596e312ea5d597c682502fb85fe4283d6c1079cacd8f +2 -0
- package/.npm/_cacache/index-v5/95/04/7be4ce5fea9cee1ca68a180daec16ac7346e8e84b8d9f55116fa21038ae0 +2 -0
- package/.npm/_cacache/index-v5/95/20/216edd7104928342f4e596f226b589b3733c83a5c056ece5738890de4460 +2 -0
- package/.npm/_cacache/index-v5/98/39/b93a55ccc4e49f1f202fb8da7ee9e687e3a2a49ec42d4759cf6b22a7a96a +2 -0
- package/.npm/_cacache/index-v5/9e/a5/b6441e48e0759935ff5fcea3d2e92c94e0b62e22bcb359d468e677ee870f +2 -0
- package/.npm/_cacache/index-v5/9f/bd/a11cb6204707555e36e340ce8c449f8a985099c46dff7422798e9cd74160 +2 -0
- package/.npm/_cacache/index-v5/a1/30/a81ec09ff8849df96b20fa9c869a01023fc35e39a6fe539bee503fd77a00 +2 -0
- package/.npm/_cacache/index-v5/a3/cc/fa1a298f260fecdc21a2bdf1e86a64042abc5bcb24014ff735b61fe58705 +2 -0
- package/.npm/_cacache/index-v5/a5/14/53e431efe5d40277f768cec075f9e7f618f2296715654a7b953121078b1e +2 -0
- package/.npm/_cacache/index-v5/a8/73/fde854d07eef0c4d20b044c858d8953a2e4d3e9b2d616026c0064799d510 +2 -0
- package/.npm/_cacache/index-v5/ab/6a/e2bfcdcd826a4dfd2b7035faa7ac5921cb0563c853a0427c938b4eafd338 +2 -0
- package/.npm/_cacache/index-v5/ac/fc/4b320068be667cb85ced241d5311571d9d4199a9c342180d60f6f4b341e5 +2 -0
- package/.npm/_cacache/index-v5/af/7e/aa77627188a61e5a0dae60cdda6aae01fe68c0171e480646cc7eaa7323c9 +2 -0
- package/.npm/_cacache/index-v5/b0/4a/c18a99a2710b49b5a3a1121226be4940f623f8ba056f8108a634ed347da9 +2 -0
- package/.npm/_cacache/index-v5/b2/98/e0f9b8885624fdc9b94f7e1b099a7286a85e584b23dde124ea11e4c93190 +2 -0
- package/.npm/_cacache/index-v5/b4/f2/c9d1ddecd2d0318581e16d1e076f8727a883a10aa5c734ca4d7ff13a3118 +2 -0
- package/.npm/_cacache/index-v5/b7/dd/41e330be0241c2ad2159f58d1ae3bef4868e80cbb77f111c548bfbfb5f9a +2 -0
- package/.npm/_cacache/index-v5/be/c3/701969ea8d361f669594a6d9cc5cf7bf3ca20e861e77ac57c70c1979bc40 +2 -0
- package/.npm/_cacache/index-v5/bf/39/69f51470befa7a09b2e33cdadeb663b447746967e3d2d574c412f8266800 +2 -0
- package/.npm/_cacache/index-v5/c1/d3/d6d16b3e7aa7edfdb1c5fe8ef0f9933ff289b5ae0026745e58f8b9d16511 +2 -0
- package/.npm/_cacache/index-v5/c3/24/3bcf5990edce4f749f04b7e4602dae2ed3f0eb3e28ceffb776d0c623cce6 +2 -0
- package/.npm/_cacache/index-v5/c6/49/a763e789545126321e1d90c8a2512f1e0522828bf339c8c8f8ab2396dfc9 +2 -0
- package/.npm/_cacache/index-v5/cb/9e/1e726b6ec1b5894f06217f3396ad8277a0345e4b0558a2de0d73ba79fe21 +2 -0
- package/.npm/_cacache/index-v5/cd/72/69ed43ac332712235b5c14293a8fa232e8f1567e37ceea47341c4af3df4c +2 -0
- package/.npm/_cacache/index-v5/ce/a7/0a9cdb608774812742406d8b587d1421d2da3084285affb184b7f0f52f3a +2 -0
- package/.npm/_cacache/index-v5/cf/9d/9e67e4844cd999769d1f2690058aa483a134ecc7f3bd2620604908593b56 +2 -0
- package/.npm/_cacache/index-v5/d0/39/f3ea46b7a48d1b108681523c9e802f48f2779894068bc9b984863ca18939 +2 -0
- package/.npm/_cacache/index-v5/d0/f3/570007f66e0a594c21201eb3e8f15d7a4d92bcb97b59246e5b7194b3b290 +2 -0
- package/.npm/_cacache/index-v5/d6/47/0b796a99c82c8fcdcdc3380884e2104085a357ad0ac568827bbf53c1f6bf +2 -0
- package/.npm/_cacache/index-v5/da/fe/b945f99b49edea86ff5cf08ad97ca4a0861012a3d68173468ce52ba5f3d6 +2 -0
- package/.npm/_cacache/index-v5/de/33/938d7069db5a8a709b7239270d65a00e0eefae4576ee520aac7e323abaf0 +2 -0
- package/.npm/_cacache/index-v5/e0/3b/55e56e6f53ffe7a3aa682cb279b0f1f907be037ece0730687bb49a730313 +2 -0
- package/.npm/_cacache/index-v5/e0/f3/563a92774ad5fa62edb9cbc4624c17a784676e377b3852d16ab8dcb28bea +2 -0
- package/.npm/_cacache/index-v5/e5/45/88e62fecd3e0efc635a303e7e1a7af4910b0a2c8135d1b12e8af7b89b815 +2 -0
- package/.npm/_cacache/index-v5/ea/b4/952a10897d4debe159108fa575080b6875f0f9e3a65e941b028e3341b591 +2 -0
- package/.npm/_cacache/index-v5/ee/3d/1ab77d088759d13cd44eab2a2f7764233b7908340d97282d9765e014f29c +2 -0
- package/.npm/_cacache/index-v5/ee/7a/ee0e1b8bea3f05c1b42f1fe4a17fdc2aa37be14405f4e293de10bd30eb80 +2 -0
- package/.npm/_cacache/index-v5/ee/dc/a5a43b3673367a01b79d642171137f6b27e50e3ef67dbf35773c0379afc9 +2 -0
- package/.npm/_cacache/index-v5/ef/7e/138d06536fa4ad47a86841653c3ff37ac8a889bfd425926c5c32d3489804 +2 -0
- package/.npm/_cacache/index-v5/f0/3e/01e13fed073dc307a8b52a63ab55b3a800abb9ab9bbad791e04ae328ca95 +2 -0
- package/.npm/_cacache/index-v5/f3/2c/80267cf9b394a43404ccabe3e574f5fd89b769b43be625b75ff9b1b4a2ee +2 -0
- package/.npm/_cacache/index-v5/fb/19/7aa5dcd12e502c2b1969c94a076ba116cec77cead0842fc905ab810ea51f +2 -0
- package/.npm/_cacache/index-v5/fb/4b/0fb3ce45fb690a1851537ed333cfcfd6be1e8b868b655055069aab25adf3 +2 -0
- package/.npm/_cacache/index-v5/fb/71/feb8d9228b0423904cb337a8cfd5dadc96844baf9810dea7d35b5d5c64f4 +2 -0
- package/.npm/_cacache/index-v5/fb/ea/7f7a0679c52edb767a55df3d93f847884d7909cf16c2f148ba11d53e9f7c +2 -0
- package/.npm/_logs/2024-03-25T15_41_39_169Z-debug-0.log +38 -0
- package/.npm/_logs/2024-06-17T00_12_37_476Z-debug-0.log +15 -0
- package/.npm/_logs/2024-06-17T00_13_00_198Z-debug-0.log +36 -0
- package/.npm/_logs/2024-06-17T00_15_11_785Z-debug-0.log +14 -0
- package/.npm/_logs/2024-06-17T00_16_19_971Z-debug-0.log +23 -0
- package/.npm/_logs/2024-06-17T00_21_13_272Z-debug-0.log +59 -0
- package/.npm/_logs/2024-06-17T00_21_46_764Z-debug-0.log +393 -0
- package/.npm/_logs/2024-06-17T00_22_50_970Z-debug-0.log +32 -0
- package/.npm/_logs/2024-06-17T00_25_12_855Z-debug-0.log +27 -0
- package/.npm/_logs/2024-06-17T00_29_31_406Z-debug-0.log +12 -0
- package/.termux/termux.properties +145 -0
- package/downloads/PUSH.zip +0 -0
- package/downloads/autoinstaller.sh +2473 -0
- package/jQuery.min.js +45 -0
- package/package.json +10 -3
- 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
|