39 Commits

Author SHA1 Message Date
pnetlabrepo
2f075738f5 Update README.md 2023-01-31 16:30:50 -03:00
pnetlabrepo
2ea04b8520 Update README.md 2023-01-31 16:28:46 -03:00
pnetlabrepo
5f89aa8e98 Update README.md 2023-01-31 16:25:13 -03:00
pnetlabrepo
f527804548 Update CHANGELOG.md 2023-01-31 16:24:20 -03:00
pnetlabrepo
4d453b958b Update CHANGELOG.md 2023-01-31 16:24:12 -03:00
pnetlabrepo
dc42dca627 Update version 2023-01-31 16:23:42 -03:00
pnetlabrepo
9d3112d907 Create upgrade.sh 2023-01-31 16:23:16 -03:00
pnetlabrepo
81fc09f9c0 Delete upgrade.sh 2023-01-31 16:23:06 -03:00
pnetlabrepo
be88d3dc6a Update ishare2 2023-01-31 16:22:02 -03:00
pnetlabrepo
25dccb6c7a Update upgrade.sh 2023-01-31 16:19:00 -03:00
pnetlabrepo
477d189d16 Create README.md 2023-01-31 16:18:05 -03:00
pnetlabrepo
c0fe8e1b39 Create upgrade.sh 2023-01-31 16:17:11 -03:00
pnetlabrepo
4ad1eb7733 Update CHANGELOG.md 2023-01-30 20:20:51 -03:00
pnetlabrepo
9a14a3efd5 Update CHANGELOG.md 2023-01-30 20:20:24 -03:00
pnetlabrepo
d3d21399c4 Update version_gui 2023-01-30 20:17:55 -03:00
pnetlabrepo
0396c727c7 Update CHANGELOG.md 2023-01-30 20:17:48 -03:00
pnetlabrepo
b1b9cd6d6c Add files via upload 2023-01-30 20:14:42 -03:00
pnetlabrepo
44249c8dcb Update CHANGELOG.md 2023-01-30 20:11:59 -03:00
pnetlabrepo
02cd1850ef Update version 2023-01-30 20:11:29 -03:00
pnetlabrepo
2c93a65305 Update CHANGELOG.md 2023-01-30 20:11:22 -03:00
pnetlabrepo
1d646a869e Update ishare2 2023-01-30 20:09:41 -03:00
pnetlabrepo
92fdd48606 Update CHANGELOG.md 2023-01-30 15:49:07 -03:00
pnetlabrepo
de20e51ba7 Update CHANGELOG.md 2023-01-30 15:48:53 -03:00
pnetlabrepo
e8b228d96f Update version_gui 2023-01-30 15:47:28 -03:00
pnetlabrepo
4e229014ec Add files via upload 2023-01-30 15:47:06 -03:00
pnetlabrepo
4774983c71 Create CHANGELOG.md 2023-01-30 01:37:06 -03:00
pnetlabrepo
89b4e4ac5b Update version_gui 2023-01-30 01:21:03 -03:00
pnetlabrepo
4d6c9b7747 Update CHANGELOG.md 2023-01-30 01:20:53 -03:00
pnetlabrepo
2e5524185a Update version 2023-01-30 01:19:35 -03:00
pnetlabrepo
2547632270 Update CHANGELOG.md 2023-01-30 01:18:31 -03:00
pnetlabrepo
5cb08a7528 Update ishare2 2023-01-30 01:16:49 -03:00
pnetlabrepo
ce9b2d6950 Update version_gui 2023-01-30 00:59:16 -03:00
pnetlabrepo
807daa0d37 Update CHANGELOG.md 2023-01-30 00:35:54 -03:00
pnetlabrepo
827a32b88a Update version 2023-01-30 00:34:23 -03:00
pnetlabrepo
e74938937e Update CHANGELOG.md 2023-01-30 00:34:16 -03:00
pnetlabrepo
16c4ae8493 Update ishare2 2023-01-30 00:32:49 -03:00
pnetlabrepo
7773828920 Update HELP.md 2023-01-29 20:47:55 -03:00
pnetlabrepo
e99109bd74 Update version_gui 2023-01-29 17:15:44 -03:00
pnetlabrepo
eb101eb7ff Create version_gui 2023-01-29 17:14:50 -03:00
10 changed files with 182 additions and 14 deletions

View File

@@ -1,6 +1,18 @@
# Changelog
# Changelog for ishare2
All notable changes to this project will be documented in this file. You can upgrade ishare2 to the latest version using `ishare2 upgrade` and then selecting `option 1`
## [v1.6.2] - 2023-Jan-31
1) Added: A new option was added to `ishare2 upgrade` > `option 2`: Now, it is possible to upgrade PNETLab from almost any version to v5.3.4 (Not possible for this case: 6.x to 5.3.4)
## [v1.6.1] - 2023-Jan-30
1) Added: Some instructions were added to `ishare2_gui_download()` function in order to avoid some errors related to missing packages (pip install uvicorn, pip install fastapi and pip install jinja2 instructions were added)
## [v1.6.0] - 2023-Jan-30
1) Added: Command `ishare2 gui stop` was added into `ishare2_gui_download()` function in order to avoid errors when downloading/upgrading ishare2 GUI
## [v1.5.9] - 2023-Jan-30
1) Added: A new version control was added for ishare2 GUI. It can be seen using the `ishare2` command and looking at the bottom of it. New functions and variables were implemented. Also, using `ishare2 upgrade` > `option 3` it is possible to upgrade it.
## [v1.5.8] - 2023-Jan-29
1) Added: A new option was added to `ishare2 upgrade` > `option 2`: Now, it is possible to upgrade PNETLab from almost any version to v5.3.2 (Not possible for this case: 6.x to 5.3.2)

25
HELP.md
View File

@@ -1,14 +1,25 @@
# Useful information
1) For problems, use our Telegram Channel describing your problem and sending a screenshot and/or a video
## 1
2) For new files to be uploaded, you can also use our Telegram Channel: In this case, you can send or ask for new images to be uploaded
For problems, use our Telegram Channel describing your problem and sending a screenshot and/or a video
3) Using ishare2 upgrade will display a menu that allows users to upgrade ishare2 and PNETLab.
## 2
4) If CiscoIOUKeygen.py, iourc and/or keepalive.pl files in /opt/unetlab/addons/iol/bin/ are deleted, you can recover them by using ishare2 relicense. This will not affect images in there
Also, this command when used, will generate a new license file called "iourc", needed for bin files
For new files to be uploaded, you can also use our Telegram Channel: In this case, you can send or ask for new images to be uploaded
5) Don't cancel a download. In case you do it, you will have to remove incomplete files or folders manually
## 3
6) The main difference between ishare2 labs and ishare2 mylabs is that, in the first case, the folder used is the one PNETLab creates when you download a lab from the store and in the second case you are able to select any folder you want in order to download labs
Using ishare2 upgrade will display a menu that allows users to upgrade ishare2 and PNETLab
## 4
If CiscoIOUKeygen.py, iourc and/or keepalive.pl files in /opt/unetlab/addons/iol/bin/ are deleted, you can recover them by using ishare2 relicense. This will not affect images in there. Also, this command when used, will generate a new license file called "iourc", needed for bin files
## 5
Don't cancel a download. In case you do it, you will have to remove incomplete files or folders manually
## 6
The main difference between ishare2 labs and ishare2 mylabs is that, in the first case, the folder used is the one PNETLab creates when you download a lab from the store and in the second case you are able to select any folder you want in order to download labs

View File

@@ -126,6 +126,7 @@ wget -O /usr/sbin/ishare2 https://raw.githubusercontent.com/pnetlabrepo/ishare2/
- Upgrade from any to v5.2.9: [Instructions](https://github.com/pnetlabrepo/ishare2/tree/main/upgrades/from_any_to_5.2.9)
- Upgrade from any to v5.3.0: [Instructions](https://github.com/pnetlabrepo/ishare2/tree/main/upgrades/from_any_to_5.3.0)
- Upgrade from any to v5.3.2: [Instructions](https://github.com/pnetlabrepo/ishare2/tree/main/upgrades/from_any_to_5.3.2)
- Upgrade from any to v5.3.4: [Instructions](https://github.com/pnetlabrepo/ishare2/tree/main/upgrades/from_any_to_5.3.4)
Note: You can also upgrade PNETLab using `ishare2 upgrade`, then using the `option 2` and finally selecting an option from the displayed list
@@ -146,9 +147,9 @@ Note: You can also upgrade PNETLab using `ishare2 upgrade`, then using the `opti
Check these links to get information on device credentials
* [Excel file #1: passwords_eve.xlsx](https://unetlab.cloud/0:/addons/passwords/)
* [Excel file #2: Passwords - QEMU.xls](https://unetlab.cloud/1:/)
* [PNG file: Eve-NG-Linux.png](https://unetlab.cloud/1:/qemu/Linux/Eve-NG-Linux/)
* [Excel file #1: passwords_eve.xlsx](https://unetlab.cloud/UNETLAB%20I/addons/passwords/passwords_eve.xlsx)
* [Excel file #2: Passwords - QEMU.xls](https://unetlab.cloud/UNETLAB%20II/Passwords%20-%20QEMU.xls)
* [PNG file: Eve-NG-Linux.png](https://unetlab.cloud/UNETLAB%20II/qemu/Linux/Eve-NG-Linux/Eve-NG-Linux.png)
## ❓Need help?

13
gui/CHANGELOG.md Normal file
View File

@@ -0,0 +1,13 @@
# Changelog for ishare2 GUI
All notable changes to this project will be documented in this file. You can upgrade ishare2 GUI to the latest version using `ishare2 upgrade` and then selecting `option 3`
## [v1.0.2] - 2023-Jan-30
1) Added: Now, in home.html it is possible to see pnetlab and ishare2 GUI versions (Before, only ishare2 was possible to see)
2) Added: Now, in home.html it is possible to check both CHANGELOG.md files (ishare2 and ishare2 GUI files)
## [v1.0.1] - 2023-Jan-30
1) Added: Change made to show both CHANGELOG.md files (ishare2 and ishare2 GUI) in home.html
## [v1.0.0] - 2023-Jan-30
Initial release

Binary file not shown.

1
gui/version_gui Normal file
View File

@@ -0,0 +1 @@
v1.0.2

57
ishare2
View File

@@ -26,8 +26,10 @@ function set_url_constants() {
URL_UPGRADE_PNETLAB_FROM_any_TO_5_2_9=https://raw.githubusercontent.com/pnetlabrepo/ishare2/main/upgrades/from_any_to_5.2.9/upgrade.sh
URL_UPGRADE_PNETLAB_FROM_any_TO_5_3_0=https://raw.githubusercontent.com/pnetlabrepo/ishare2/main/upgrades/from_any_to_5.3.0/upgrade.sh
URL_UPGRADE_PNETLAB_FROM_any_TO_5_3_2=https://raw.githubusercontent.com/pnetlabrepo/ishare2/main/upgrades/from_any_to_5.3.2/upgrade.sh
URL_UPGRADE_PNETLAB_FROM_any_TO_5_3_4=https://raw.githubusercontent.com/pnetlabrepo/ishare2/main/upgrades/from_any_to_5.3.4/upgrade.sh
URL_GUI_APP_ZIP=https://raw.githubusercontent.com/pnetlabrepo/ishare2/main/gui/app.zip
URL_REQUIREMENTS_GUI_APP=https://raw.githubusercontent.com/pnetlabrepo/ishare2/main/gui/requirements.txt
URL_ISHARE2_GUI_VERSION=https://raw.githubusercontent.com/pnetlabrepo/ishare2/main/gui/version_gui
}
function check_user_is_root() {
@@ -937,6 +939,12 @@ function check_ishare2_version_file_exists() {
fi
}
function check_ishare2_gui_version_file_exists() {
if ! [[ -e /usr/sbin/ishare2_gui_version ]]; then
echo -n "$(curl -s $URL_ISHARE2_GUI_VERSION)" >> /usr/sbin/ishare2_gui_version
fi
}
function upgrade_ishare2() {
LOCAL_VALUE=$(cat /usr/sbin/ishare2_version)
REMOTE_VALUE=$(curl -s $URL_VERSION)
@@ -965,6 +973,7 @@ function menu_ishare2_upgrade_pnetlab() {
"Upgrade PNETLab: from any version to 5.2.9"
"Upgrade PNETLab: from any version to 5.3.0"
"Upgrade PNETLab: from any version to 5.3.2"
"Upgrade PNETLab: from any version to 5.3.4"
)
PS3="$prompt"
@@ -1012,11 +1021,17 @@ function menu_ishare2_upgrade_pnetlab() {
bash upgrade.sh
break
;;
8)
wget -O upgrade.sh $URL_UPGRADE_PNETLAB_FROM_any_TO_5_3_4 > /dev/null 2>&1
chmod +x upgrade.sh
bash upgrade.sh
break
;;
$((${#options[@]}+1)))
break
;;
*)
STR="Invalid option: Select a number from 1 to 8"
STR="Invalid option: Select a number from 1 to 9"
echo -e "${RED}$STR${NO_COLOR}"
continue
;;
@@ -1029,6 +1044,7 @@ function menu_ishare2_upgrade() {
options=(
"Upgrade ishare2"
"Upgrade PNETLab"
"Upgrade ishare2 GUI"
)
PS3="$prompt"
@@ -1042,11 +1058,15 @@ function menu_ishare2_upgrade() {
menu_ishare2_upgrade_pnetlab
break
;;
3)
ishare2 gui download
break
;;
$((${#options[@]}+1)))
break
;;
*)
STR="Invalid option: Select a number from 1 to 3"
STR="Invalid option: Select a number from 1 to 4"
echo -e "${RED}$STR${NO_COLOR}"
continue
;;
@@ -1064,6 +1084,10 @@ function show_changelog() {
}
function ishare2_gui_download() {
echo -e "${GREEN}GUI is being downloaded and installed. Please, wait until process is done${NO_COLOR}"
ishare2 gui stop
rm -rf /root/app
wget -q $URL_GUI_APP_ZIP -P /root
@@ -1076,9 +1100,23 @@ function ishare2_gui_download() {
wget -q $URL_REQUIREMENTS_GUI_APP -P /root
pip install -r /root/requirements.txt > /dev/null 2>&1
pip install uvicorn > /dev/null 2>&1
pip install fastapi > /dev/null 2>&1
pip install jinja2 > /dev/null 2>&1
rm /root/requirements.txt
echo -e "${GREEN}GUI has been downloaded and installed. Now, you can start it by using: ishare2 gui start${NO_COLOR}"
LOCAL_VALUE=$(cat /usr/sbin/ishare2_gui_version)
REMOTE_VALUE=$(curl -s $URL_ISHARE2_GUI_VERSION)
if ! [[ $LOCAL_VALUE == "$REMOTE_VALUE" ]]; then
echo "ishare2 GUI was upgraded from $LOCAL_VALUE to $REMOTE_VALUE"
rm /usr/sbin/ishare2_gui_version
echo "$REMOTE_VALUE" >> /usr/sbin/ishare2_gui_version
fi
}
function ishare2_gui_start() {
@@ -1414,6 +1452,19 @@ function show_ishare2_usage() {
pnetlab_info=($data)
PNETLAB_VERSION_USAGE=${pnetlab_info[1]}
# For ishare2 GUI
ISHARE2_GUI_VERSION_USAGE=$(cat /usr/sbin/ishare2_gui_version)
STR=""
LOCAL_VALUE=$ISHARE2_GUI_VERSION_USAGE
REMOTE_VALUE=$(curl -s $URL_ISHARE2_GUI_VERSION)
if ! [[ $LOCAL_VALUE == "$REMOTE_VALUE" ]]; then
STR="New ishare2 GUI version available: $REMOTE_VALUE"
fi
NEW_VERSION_RESULT_FOR_ISHARE2_GUI=$(echo -e ${YELLOW} $STR ${NO_COLOR})
# Message displayed when using ishare2 command
echo "
Syntax
@@ -1494,6 +1545,7 @@ Examples:
ishare2: $ISHARE2_VERSION_USAGE$NEW_VERSION_RESULT
pnetlab: v$PNETLAB_VERSION_USAGE
ishare2 GUI: $ISHARE2_GUI_VERSION_USAGE$NEW_VERSION_RESULT_FOR_ISHARE2_GUI
"
}
@@ -2263,6 +2315,7 @@ function main(){
get_initial_information
set_yml_template_folder_location
check_ishare2_version_file_exists
check_ishare2_gui_version_file_exists
selector $1 $2 $3
}

View File

@@ -0,0 +1,27 @@
```linux
This script allows to upgrade PNETLab from almost any version to v5.3.4
It cannot be used when version is 6.x
File 5.3.4.zip will be downloaded from unetlab.cloud
```
## upgrade.sh
`This script cannot be used in cases where PNETLab version is 6.x: An error message will be displayed and the script execution will be finished`
`Also, this script detects if you already have PNETLab v5.3.4 in your system and avoids to upgrade twice`
### Upgrade
Apply this command using the terminal
```linux
wget -O upgrade.sh https://raw.githubusercontent.com/pnetlabrepo/ishare2/main/upgrades/from_any_to_5.3.4/upgrade.sh > /dev/null 2>&1 && chmod +x upgrade.sh && bash upgrade.sh
```
After a few seconds, the upgrade will be done.
Note: This upgrade does not use ishare2:
When you execute the command from above, the steps are as follows:
1) A file called [upgrade.sh](https://raw.githubusercontent.com/pnetlabrepo/ishare2/main/upgrades/from_any_to_5.3.4/upgrade.sh) will be downloaded from this repository
2) Execution permissions will be made to this file
3) This script will be executed in order to make the upgrade

View File

@@ -0,0 +1,50 @@
#!/bin/bash
# Script designed to upgrade PNETLab from almost any version to NEW_PNETLAB_VERSION version
# Requirement: Not having PNETLab 6.x installed for being able to upgrade to NEW_PNETLAB_VERSION
# This script avoids to make this upgrade process twice
# CONSTANTS
NEW_PNETLAB_VERSION=5.3.4
GREEN='\033[32m'
NO_COLOR='\033[0m'
URL_ZIP_FILE=https://unetlab.cloud/api/raw/?path=/UNETLAB%20I/upgrades_pnetlab/from_any_to_$NEW_PNETLAB_VERSION/$NEW_PNETLAB_VERSION.zip
# Getting PNETLab version from db
data=$(mysql -uroot -ppnetlab -D pnetlab_db -e "SELECT control_value FROM control WHERE control_value>1;" 2>/dev/null)
pnetlab_info=($data)
pnetlab_version=${pnetlab_info[1]}
if [[ $pnetlab_version == $NEW_PNETLAB_VERSION ]]; then
echo "PNETLab already upgraded to v$NEW_PNETLAB_VERSION. You can´t upgrade twice"
exit 0
fi
if [[ $pnetlab_version == *6.* ]]; then
echo "It is not possible to upgrade to $NEW_PNETLAB_VERSION having version 6.x"
exit 0
fi
echo -e "${GREEN}Downloading $NEW_PNETLAB_VERSION zip file...${NO_COLOR}"
wget --content-disposition -q --show-progress -O /root/$NEW_PNETLAB_VERSION.zip $URL_ZIP_FILE
echo -e "${GREEN}$NEW_PNETLAB_VERSION zip file has been downloaded successfully${NO_COLOR}"
cd /root && rm -rf upgrade
echo -e "${GREEN}Unzipping zip file...${NO_COLOR}"
unzip $NEW_PNETLAB_VERSION.zip -d ./upgrade > /dev/null 2>&1
echo -e "${GREEN}Zip file has been unzipped successfully...${NO_COLOR}"
chmod 755 -R upgrade
find upgrade -type f -print0 | xargs -0 dos2unix > /dev/null 2>&1
echo -e "${GREEN}Upgrading to v$NEW_PNETLAB_VERSION...${NO_COLOR}"
./upgrade/upgrade
echo -e "${GREEN}Upgrade to v$NEW_PNETLAB_VERSION has been done successfully${NO_COLOR}"
rm -rf upgrade
#rm $NEW_PNETLAB_VERSION.zip
echo -e "${GREEN}PNETLab VM will be rebooted right now...${NO_COLOR}"
echo -e "${GREEN}Try to connect again in about a minute${NO_COLOR}"
reboot

View File

@@ -1 +1 @@
v1.5.8
v1.6.2