How can we help?
Инструкция взята отсюда …
Ставим mongodb
sudo apt update && sudo apt install gnupg -y
Импортируем ключи:
wget -qO - https://www.mongodb.org/static/pgp/server-4.4.asc | sudo apt-key add -
Добавляем репозитории:
echo "deb http://repo.mongodb.org/apt/debian buster/mongodb-org/4.4 main" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.4.list && echo "deb http://security.ubuntu.com/ubuntu focal-security main" | sudo tee /etc/apt/sources.list.d/focal-security.list
Ставим mongodb:
sudo apt update && sudo apt install libssl1.1 mongodb-org -y
Удаляем ненужные теперь репозитории:
sudo rm /etc/apt/sources.list.d/focal-security.list /etc/apt/sources.list.d/mongodb-org-4.4.list
Включаем mongodb:
sudo systemctl enable mongod && sudo systemctl start mongod && sudo systemctl status mongod
Должно получится примерно так:
wnam@wnam:~$ sudo systemctl enable mongod && sudo systemctl start mongod && sudo systemctl status mongod
Created symlink /etc/systemd/system/multi-user.target.wants/mongod.service → /lib/systemd/system/mongod.service.
● mongod.service - MongoDB Database Server
Loaded: loaded (/lib/systemd/system/mongod.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2022-12-01 16:28:19 UTC; 49ms ago
Docs: https://docs.mongodb.org/manual
Main PID: 4975 (mongod)
Memory: 10.1M
CPU: 18ms
CGroup: /system.slice/mongod.service
└─4975 /usr/bin/mongod --config /etc/mongod.conf
Ставим Java
sudo apt-get install openjdk-11-jdk -y && java -version
Должно получится как то так:
openjdk version "11.0.17" 2022-10-18
OpenJDK Runtime Environment (build 11.0.17+8-post-Ubuntu-1ubuntu222.04)
OpenJDK 64-Bit Server VM (build 11.0.17+8-post-Ubuntu-1ubuntu222.04, mixed mode, sharing)
Ставим nginx
sudo apt install nginx -y
Удаляем дефолтный конфиг и создаем свой:
sudo rm /etc/nginx/sites-enabled/default && sudo vi /etc/nginx/sites-available/wnam
server {
listen 80 default_server;
root /var/www/html;
server_name _;
location / {
proxy_pass http://127.0.0.1:8080/;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_read_timeout 120;
proxy_connect_timeout 120;
}
location ~ ^/cgi {
root /home/wnam/cgi;
rewrite ^/cgi/(.*) /$1 break;
include /etc/nginx/fastcgi_params;
fastcgi_pass unix:/var/run/fcgiwrap.socket;
fastcgi_param SCRIPT_FILENAME /home/wnam/cgi$fastcgi_script_name;
}
}
Создаем ссылку в /etc/nginx/sites-enabled:
sudo ln -s /etc/nginx/sites-available/wnam /etc/nginx/sites-enabled/
Проверяем правильность конфигурации:
sudo nginx -t
Если ошибок нет перезапускаем nginx:
sudo systemctl restart nginx
Проверяем язык системы (locale по умолчанию) соответствует «ru_RU.UTF-8»
locale
Исправляется командой:
sudo dpkg-reconfigure locales
Ставим samba
sudo apt install samba winbind fcgiwrap -y && sudo systemctl restart nginx
Ставим wnam
Для этого компуем файл wnam.war в папку /home/wnam и меняем права доступа к нему:
sudo chmod 755 /home/wnam/wnam.war && sudo chown wnam:wnam /home/wnam/wnam.war
Создаем папку для логов:
mkdir /home/wnam/logs && chown wnam:wnam /home/wnam/logs
Запускаем через systemd:
sudo vi /etc/systemd/system/wnam.service
[Unit]
Description=WNAM Server
[Service]
WorkingDirectory=/home/wnam
ExecStart=/home/wnam/wnam.war
SuccessExitStatus=143
Restart=on-failure
RestartSec=10
User=wnam
Group=wnam
StandardOutput=append:/home/wnam/logs/console.log
StandardError=append:/home/wnam/logs/console.log
AmbientCapabilities=CAP_NET_BIND_SERVICE
[Install]
WantedBy=multi-user.target
sudo systemctl enable wnam
Далее конфигурируем файлы:
vi /home/wnam/wnam.conf
export JAVA_OPTS="-Xms512m -Xmx4g -Djava.net.preferIPv4Stack=true"
export LOG_FOLDER="/home/wnam/logs"
export LOG_FILENAME="console.log"
И:
vi /home/wnam/application.properties
spring.application.name=WNAM
spring.mvc.view.prefix=/WEB-INF/jsp/
spring.mvc.view.suffix=.jsp
server.forward-headers-strategy=native
server.tomcat.remoteip.protocol-header="X-Forwarded-Proto"
server.tomcat.remoteip.remote-ip-header="X-Forwarded-For"
server.tomcat.basedir=.
server.tomcat.accesslog.enabled=true
server.port=8080
server.address=0.0.0.0
spring.data.mongodb.uri=mongodb://127.0.0.1:27017/wnam_db
# for cluster configuration, use:
# spring.data.mongodb.uri=mongodb://app1,app2,db1,db2/wnam_db
sudo service wnam restart && sudo service wnam status
Должно получится както так:
● wnam.service - WNAM Server
Loaded: loaded (/etc/systemd/system/wnam.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2022-12-02 05:27:25 UTC; 10s ago
Main PID: 283962 (wnam.war)
Tasks: 17 (limit: 2241)
Memory: 298.9M
CPU: 9.882s
CGroup: /system.slice/wnam.service
├─283962 /bin/bash /home/wnam/wnam.war
└─283977 /usr/bin/java -Dsun.misc.URLClassPath.disableJarChecking=true -Xms512m -Xmx4g -Djava.net.pr>
Dec 02 05:27:25 wnam systemd[1]: Started WNAM Server.
http://<ip address>/wnam/home
Включение 802.1х
Редактируем конфиг Самбы:
sudo vi /etc/samba/smb.conf
[global]
workgroup = <имя_вашего_домена>
server string = %h server (Samba, Ubuntu)
dns proxy = no
security = ads
password server = <полное_имя_вашего_контроллера_домена>
realm = <полное_имя_вашего_домена>
log file = /var/log/samba/log.%m
max log size = 1000
syslog = 0
panic action = /usr/share/samba/panic-action %d
server role = standalone server
passdb backend = tdbsam
obey pam restrictions = yes
unix password sync = yes
passwd program = /usr/bin/passwd %u
passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
pam password change = yes
map to guest = bad user
usershare allow guests = yes
Проверяем:
testparm
Запускаем:
sudo systemctl unmask smbd && sudo systemctl enable smbd && sudo systemctl restart smbd && sudo systemctl status smbd
Заносим wnam в домен:
sudo net ads join -U domen-username
Проверяем авторизацию:
ntlm_auth --request-nt-key --domain=<имя_домена> --username=wifitest --password=wifitest