Это приложение позволяет вам организовать приложение клиентского сервера. Который предназначен для отправки команд клиентам. Каждый клиент обрабатывается в отдельном потоке, и каждый клиент может иметь неограниченное количество сеансов. Если вы хотите запустить этот код на своей машине, вам нужно добавить две вещи в клиент -код. Это IP -адрес машины, на которой вы хотите запустить сервер и пароль для команды «SU», я надеюсь, что вы уже установили его. Это необходимо, если вы планируете обновить привилегию сеанса Bash до Root. Все команды отправляются с сервера. Пример команд.
После подключения пользователя вы выбираете активного пользователя с командой «Изменение 1» 1 Это идентификатор пользователя.
После создания новой оболочки, команда "new_shell" создает новую оболочку с уникальным идентификатором. Следующая команда - «Switch_shell 1» 1 Это идентификатор оболочки. Теперь вы можете отправлять такие команды, как «ip a», «ls», «ps aux» и другие, и, что наиболее важно, вы можете отправить команду SU для обновления до корнета.#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#pragma comment(lib, "ws2_32.lib")
std::mutex clientsMutex; // Мьютекс для синхронизации доступа к списку клиентов
class ClientHandler {
public:
SOCKET socket;
int clientID;
std::atomic running;
ClientHandler(SOCKET sock, int id) : socket(sock), clientID(id), running(true) {}
// Удаляем конструктор копирования и оператор присваивания
ClientHandler(const ClientHandler&) = delete;
ClientHandler& operator=(const ClientHandler&) = delete;
void SendCommand(const std::string& command) {
if (send(socket, command.c_str(), static_cast(command.size()), 0) == SOCKET_ERROR) {
std::cerr
Подробнее здесь: https://stackoverflow.com/questions/795 ... -on-ubuntu
Приложение C ++ Client-Server (сервер работает на Windows Client работает на Ubuntu) ⇐ C++
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение