понеделник, декември 09, 2013

10 начина за манипулиране


1. Отвличане на вниманието.„Постоянно се отклонява съзнанието на хората от реалните социални проблеми, превключвайки ги към теми, които нямат реално значение. За да постигат такъв резултат, според който гражданите да са винаги заети с нещо и да нямат време да мислят, от полето – в кошарата, както и всички други животни ( цитат от книгата „Тихо оръжие за тихи войни“). 

2. Създават се проблеми, а след това се предлага начин за решаването им. Този метод е наречен „проблем-реакция-решение.“ Създава се проблем, един вид „ситуация“, разчетена така, че да предизвика реакция сред хората, така че те самите да поискат приемането на мерки, които са необходими на управляващите кръгове. Например, допускане на ескалация на насилие в градските райони или кървави терористични актове, с цел гражданите да изискват приемането на закони, насочени към засилване мерките за сигурност и политики, засягащи гражданските свободи.Или да се предизвика икономическа криза, за да се приеме като необходимо зло нарушението на социалните права и съкращаване на социалните услуги. 

3. Методът на постепенното прилагане. За да се постигне приемането на непопулярни мерки, е достатъчно те да се въвеждат постепенно, ден след ден, година след година.Именно по този начин бяха наложени принципно нови социално-икономически условия (неолиберализъм) през 80-те и 90-те години на миналия век. Минимизиране на функциите на правителството, приватизация, несигурност, масова безработица, заплати, които вече не осигуряват достоен живот. Ако това се случи по едно и също време, най-вероятно би довело до революция. 

4. Отлагане на изпълнението. Друг начин да се прокара едно непопулярно решение е да се представи като „болезнено и необходимо“ и да се получи в един момент съгласието на гражданите за неговото прилагане в бъдеще. Много по-лесно е хората да се съгласят на жертви в бъдещето, отколкото в момента. Първо, защото това не се случва веднага. Второ, защото повечето хора винаги са склонни да таят наивна надежда, че „утре нещата ще се подобрят“ и че тези жертви, които са поискани от тях, могат да бъдат избегнати.Така се предоставя на гражданите повече време да свикнат с идеята за промяна и смирено да ги приемат, когато му дойде времето. 

5.Отношение към хората като към малки деца. В по-голямата си част пропагандните изяви, предназначени за широката общественост, използват такива аргументи, символи, думи и интонация,като че ли става дума за деца в училищна възраст със забавено развитие или с психически увреждания. Колкото по-настойчиво някой се опитва да заблуди слушателя, толкова повече той се опитва да използва инфантилни словесни форми. Защо? Ако някой се отнася към човек така, сякаш той е на 12 или по-малко години, по силата на внушението, в отговор като реакция на човека също ще липсва критична оценка, което е типично за деца на възраст 12 години или по-малко. 

6. Да се атакуват емоциите на човека в по-голяма степен, отколкото мисленето му. Въздействието върху емоциите е класически метод, който има за цел да гарантира, че ще се блокира способността на хората да правят рационален анализ, а в крайна сметка дори и на способността им за критично осмисляне на събитията. От друга страна, използването на емоционалния фактор може да отвори вратата към подсъзнанието, за да се вкарат там мисли, желания, страхове, притеснения, принуждения или устойчиви модели на поведение … 

7. Да се държат хората в неведение, като се култивира посредственост.С това се гарантира хората да не са в състояние да разберат техниките и методите, използвани, за да бъдат контролирани против волята си. Качеството на образованието, предоставяно на по-нисшите класи на обществото, трябва да е толкова оскъдно и посредствено, за да може невежеството, което разделя по-нисшите класи на обществото от върхушката, да остане на такова ниво, което нисшите класи да не могат да преодолеят.

8. Насърчаване на гражданите да се възхищават на посредствеността.Да се насърчава в хората идеята, че е модерно да си глупав, вулгарен и груб … 

9. Засилване на чувство за вина. Да се застави отделният човек да вярва в това, че самият той е виновен за собственото си нещастие поради липса на умствени способности, умения или усилия. В резултат, вместо на бунт срещу икономическата система, човек започва самостоятелно да се занимава със самоунижение, самоунищожаване, да обвинява за всичко себе си, което го води неминуемо до тотална и нескончаема депресия, като всичко това води към апатия и бездействие. 

10. Да се знае за хората повече, отколкото те самите знаят за себе си.През последните 50 години напредъкът в областта на науката доведе до образуването на все по-разширяваща се пропаст между знанията на обикновените хора и информацията, която притежава и използва управляващата класа. Благодарение на биологията, неврологията и приложната психология, „системата“ има на разположение най-съвременни знания за човека, в областта на физиологията и психологията. Системата е в състояние да научи за обикновения човек повече, отколкото той знае сам за себе си. Това означава, че в повечето случаи системата има по-голяма власт и в много по-голяма степен контролира и управлява хората, отколкото те могат сами да се контролират

На мен най-много ми харесва №2 - някак си най-хакерски ми изглежда.

понеделник, ноември 04, 2013

Идея за технически проект като продължение на NOM

NOM
Извадка от мейл до колеги:

Само да поясня, че дългият текст по-долу засяга само една малка част от общата картинка (така както аз успявам да я видя без да съм в системата)... тук не споменавам ситема за онлайн обучения (във пълният й вид, а не само статични презентации и/или видео включвайки дори и дистрибутиране на видео/аудио/текстови материали, карти, атласи, др за допълнителни занятия - филмчета от Discovery по География или Animal Planet по Биология примерно), система за генериране на тестове, контролни, класни, изпити и прочие (дори и с възможност за проверка на коректността на оценяване от страна на външни оценители или родители), интеграция с наличното видео наблюдение + паник бутон/безплатен_номер; Ако съвсем се разфантазирам нещо толкова генерално би било полезно както за учениците така и за работодателите и университетите.

Това което аз споменах беше предложение да се реши един определен проблем, а именно своевременно актуализиране на данните касаещи успеха и поведението на учениците в учебното заведение, което може да се комбинира много лесно със своевременно уведомление на родителите при конкретни обсточтеслтва (примерно да получават нотификаци само при забележки или само при отсъствия или при определена оценка по определен предмет).
На практика да се замени остарелият и явно неефективен вече книжен учителски дневник с елктроенен такъв. Цялото решение го виждам като евтин таблет с android OS и SIM модул или wireless модул. Таблет-а играе ролята на учителски бележник и върху него се стартира специален за целта shell който ще предоставя само функционалността за която е предназначен т.е. ел.бележник. Самото приложение може да бъде много потребителско т.е. 1 учител вижда само данните за този клас по този предмет; класната на класа вижда данните на всичките си ученици по всички предмети, а директорката всичко което може да се види. Ако таблета е с "писалка" даже не е нужно учителите да "кълват" по клавиатурата пишейки забележка или оценка/отсъствие. Цялото нещо може да се обогати и/или усложни с сихронизирана програма на учениците включваща reminders кой не е изпитван отдавна примерно; може да се интегрира с мейл или document management system в който учениците "пускат" домашните си ; може да се използва и за "контрол" не само на учениците ами и на учителите (сигурен съм, че и те минават през някакво вътрешно оценяване или поне би трябвало); може да се предвиди и опция за обратна връзка т.е. от страна на учениците/родителите към учителите.
За мен основните плюсове са:
1. модерно е и е в крак с времето - децата още от 1-ви клас имат smart телефони
2. учителите не трябва да минават дълги, сложни и със съмнително качество и успех курсове по компютърна грамотност
3. незабавна актуализация в профила на ученика
4. наличието на централизирана база с резултатите през годините, от които най-малкото могат да се правят много по-сериозни и релевантни статистически извадки и изводи

Малко груби щрихи към техническата реализация:
Във варианта на таблес със SIM карта - интернет не е необходим; достатъчне е APN който да събира data traffic-a и да го "кара" към едно централно място (основен/резервен/бекъп дейта център). Трифата за мобилните потребители може и да е на трафик, а не "на план/програма" имайки предвид малкото количество трафик необходимо за трансфер/обновяване на данните. Броя такива таблети ще определи и цената според мен, като лично аз си го представям като 1 таблет за 1 клас. Споменавам такива със SIM карта защото просто не мога да се сетя за място в което някой GSM оператор да няма покритие
Във варианта без SIM карта, а само с wireless module - това е по-евтиният вариант и при него нещата могат да се реализират с локална за училището Wireless свързаност или нанасяйки промените таблета в момента в който се озове в обхвата на заделената за целата WiFi AP да се синква автоматично с локалният сървър (примерно в момента в който учителя занесе таблета в класната стая)
Колкото до мрежовата схема - нещата са точно както ги казва Name Family - при качествен оптичен бекбон в/у него можеш да пускаш когато и каквито решиш услуги... но ако нямаме такъв бекбон можем да използваме разпределена структура т.е. до РИО-тата вече има изградени връзки и сървърите в тези РИО-та се синхронизират от основният и/или бекъп дейта центъра на МОН (примерно Пловдив - София); от РИО-тата се синхронизират всички по-големи центрове/градове/училища (Примерно Стара Загора- Пловдив), от сървърите в по-големите градове се синхронизират по-малките училища в селата (Гълъбово - Стара Загора) или нещо в този дух... като мрежовата схема може да копира или да следва вече изградената административната такава 


Основните "НЕ" което съм получавал на тази идея обсъждана с познати е:
1. Таблетите се чупят/губят/крадат - ако са достатъчно евтини могат да се предвидят резервни, а кражбата става безсмислена ако таблета е ограничен като функционалност (няма Интернет, игри, Google Store, и пр.)
2.Учителите са стари и не можеш да ги накараш да ползват нови технологии - винаги ми е звучало несериозно, защото живеем в 21 век и в условията на пазарна икономика, конкуренцията е една от основните движещи сили на пазара т.е. зад всеки 55 годишен учител възпитаник на килийното училище в Рилският Манастир стоят поне 5 отличника от последният випуск на педагогическият университет, които търсят реализация по специалността. Както се променя учебната програма за да "fit-не" на съвремието, така трябва да се променят и учителите.

събота, октомври 05, 2013

сряда, август 28, 2013

Proftpd & FileZilla troubles

Като допълнение на това: FTP access-2
[ Нещата явно са се случили след ъпдейта от Debian 6 към Debian 7 Поне нищо друго не ми хрумва ]
Като цяло оплакването, е че не работи FTP съръвъра... в частност - не работи през FileZilla
Status:    Connection established, waiting for welcome message...
Response:    220 DMT FTP Server
Command:    USER down
Response:    331 Password required for down
Command:    PASS ****
Response:    230 Anonymous access granted, restrictions apply
Command:    OPTS UTF8 ON
Response:    200 UTF8 set to on
Status:    Connected
Status:    Retrieving directory listing...
Command:    PWD
Response:    257 "/" is the current directory
Command:    TYPE I
Response:    200 Type set to I
Command:    PORT 194,12,234,123,242,221
Response:    200 PORT command successful
Command:    MLSD
Error:    Connection closed by server
Error:    Failed to retrieve directory listing


Драмата е в новите версии на proftpd (явно над proftpd -v ProFTPD Version 1.3.4a) и по-специално в mod_facts.c
Текущата версия е :  proftpd -vv | grep facts -->   mod_facts/0.3 (* $Id: mod_facts.c,v 1.45 2011/05/23 21:11:56 castaglia)
докато старата е : proftpd -vv | grep facts -->   mod_facts/0.1 ($Id: mod_facts.c,v 1.26.2.1 2010/03/02 18:08:07 castaglia)

Решението на проблема е :
< IfModule mod_facts.c > 
FactsAdvertise off 
</IfModule > 
добавено в /etc/proftpd/proftpd.conf.

Описанието:  
1. http://www.proftpd.org/docs/modules/mod_facts.html
2. https://forum.filezilla-project.org/viewtopic.php?f=2&t=22464&start=0  


петък, август 23, 2013

LSI MegaRAID Storage Manager + Ubuntu

Server: Ubuntu 12.04 LTS 64b
RAID Controller: LSI 8704epl

Целта на занятието беше мониторинг и управление на RAID volumes.
I. Console tools:
echo "deb http://hwraid.le-vert.net/debian wheezy main" >> /etc/apt/sources.list
wget -O - http://hwraid.le-vert.net/debian/hwraid.le-vert.net.gpg.key | sudo apt-key add -
apt-get update
apt-get install megaclisas-status  megacli megaraidsas-status megasasctl
cat /etc/init.d/megaraid-statusd | grep MAILTO
MAILTO=root   # Where to report problems

Като краен резултат:
megasasctl -vv -l 0x05
a0       MegaRAID SAS 8704ELP     bios:2.07.00 fw:1.40.42-0615 encl:1 ldrv:2  rbld:30% mem:128MiB batt:FAULT, module missing, pack missing, charge failed/0mV/0C
a0d0      1861GiB RAID 1   1x2  optimal
      row  0:  a0e252s2  a0e252s3
a0d1       297GiB RAID 1   1x2  optimal
      row  0:  a0e252s0  a0e252s1
a0e252s0      ATA WDC WD3201ABYS-0 rev:1C02 s/n:WD-WCARW4849895         298GiB  a0d1  online   errs: media:0  other:812
a0e252s1      ATA WDC WD5003ABYX-0 rev:1S02 s/n:WD-WMAYP5632935         465GiB  a0d1  online   errs: media:0  other:749
a0e252s2      ATA WDC WD2003FYYS-0 rev:1D02 s/n:WD-WCAY00537638        1863GiB  a0d0  online   errs: media:0  other:750
a0e252s3      ATA WDC WD2003FYYS-0 rev:1D02 s/n:WD-WCAY01502649        1863GiB  a0d0  online   errs: media:0  other:567

II. GUI - LSI MegaRAID Storage Manager -- това е ми трябваше.
Вариантите са 2 - рънвам го локално и правя X11-forwarding през SSH или си инсталирам този софтуер някъде и от това някъде се свързвам към локално стартираният сървър. Писана е цялата дивотия на java. Иска си net-snmp
cd /tmp/
wget http://www.lsi.com/downloads/Public/MegaRAID%20Common%20Files/13.04.03.01_Linux(x64)_MSM.tar.gz
apt-get install alien
tar xfvz 13.04.03.01_Linux(x64)_MSM.tar.gz
cd disk/
alien --scripts *.rpm
dpkg -i *.deb
Логина от remote machine иска Local credentials и за да може да се правят промени по RAID-a трябва да е root или поне sudo.

четвъртък, юли 18, 2013

Cisco router act as PPTP client

sh vers
Cisco IOS Software, 2800 Software (C2800NM-ADVSECURITYK9-M), Version 12.4(18), RELEASE SOFTWARE (fc1)
Cisco 2811 (revision 53.51) with 247808K/14336K bytes of memory.
Processor board ID FCZ114873QF
6 FastEthernet interfaces
2 Virtual Private Network (VPN) Modules
DRAM configuration is 64 bits wide with parity enabled.
239K bytes of non-volatile configuration memory.
62720K bytes of ATA CompactFlash (Read/Write)

 Running Config

service internal !---> necessary to enable VPDN to allow a request-dialin  protocol pptp
!
no ip gratuitous-arps !---> recommended
!
vpdn enable
!
vpdn-group 2
request-dialin
protocol pptp 
rotary-group 2  .
initiate-to ip 85.14.22.162 !---> 85.14.22.162 is the ip of my pptp Server
!
!
interface Dialer2  
description PPTP-client Dialer
ip address negotiated
ip access-group 102 in ! ---> ACL wich defines my interesting traffic
encapsulation ppp
dialer in-band
dialer idle-timeout 0 !---> PPTP is slow to negotiate and start, so better an infinite timeout...
dialer string 123 !---> seems to be ignored but...
dialer vpdn
dialer-group 2 !--->  see dialer-list 2 below
no cdp enable
ppp pfc local forbid
ppp pfc remote reject 
ppp encrypt mppe auto 
ppp chap hostname pptp_client_username
ppp chap password pptp_client_password
!
ip access-list ext 102
permit ip any 172.16.0.0 0.0.0.255
!
ip route 172.16.0.0 255.255.0.0 Dialer2 222 !---> some private routes via PPTP with higher metric
! PPTP link is used as a Dial-On-Demand backup link.  OSPF is serving needed prefixes via primary link
!dialer-list 2 protocol ip permit !----> used to initiate the pptp tunnel, permit all traffic, the ACL 102 will permit/block


четвъртък, юли 04, 2013

Daily wisdom

Нито е толкова просто, колкото изглежда, нито е толкова сложно колкото ни се струва!

понеделник, април 01, 2013

Ubuntu LTS upgrade from Lucid to Precise

do-release-upgrade и се случват някакви неща... след като свърши се оказа, че хората не могат да изпращат мейли.
Mail server config : postfix + quota + courier pop/imap + virtual users (MySQL)
Postfix-a реве с :
13:53:27 mail postfix/smtpd[9874]: warning: unknown[10.0.0.163]: SASL LOGIN authentication failed: no mechanism available
13:53:27 mail postfix/smtpd[9874]: warning: unknown[10.0.0.151]: SASL PLAIN authentication failed: no mechanism available

Конфигурационно нещата не са се променили:
saslauthd -v
saslauthd 2.1.25
authentication mechanisms: sasldb getpwent kerberos5 pam rimap shadow ldap


saslfinger -s
-- content of /etc/postfix/sasl/smtpd.conf --
log_level: 7
pwcheck_method: saslauthd
mech_list: plain login pam
allow_plaintext: true
auxprop_plugin: mysql
sql_hostnames: 127.0.0.1
sql_user: --- replaced ---
sql_passwd: --- replaced ---
sql_database: mail
sql_select: select password from users where email = '%u'


-- mechanisms on localhost --
250-AUTH LOGIN PLAIN
250-AUTH=LOGIN PLAIN


Явно пакетите от Precise са строшени (и друг път се е случвало... почти всеки път като се замисля всъщност)
Решението с големият чук:

cd /home/eol
mkdir sasl_downloaded
cd sasl_downloaded
wget http://archive.ubuntu.com/ubuntu/pool/main/c/cyrus-sasl2/libsasl2-2_2.1.23.dfsg1-5ubuntu3_amd64.deb http://archive.ubuntu.com/ubuntu/pool/main/c/cyrus-sasl2/libsasl2-modules_2.1.23.dfsg1-5ubuntu3_amd64.deb http://archive.ubuntu.com/ubuntu/pool/main/c/cyrus-sasl2/libsasl2-modules-sql_2.1.23.dfsg1-5ubuntu3_amd64.deb http://archive.ubuntu.com/ubuntu/pool/main/c/cyrus-sasl2/libsasl2-dev_2.1.23.dfsg1-5ubuntu3_amd64.deb http://archive.ubuntu.com/ubuntu/pool/main/c/cyrus-sasl2/sasl2-bin_2.1.23.dfsg1-5ubuntu3_amd64.deb


dpkg -i *.deb

За да не се ъпгрейднат  при следващото apt-get update/upgrade :
echo libsasl2-2 hold | dpkg --set-selections
echo libsasl2-div hold | dpkg --set-selections
echo libsasl2-modules hold | dpkg --set-selections
echo libsasl2-modules-sql hold | dpkg --set-selections
echo sasl2-bin hold | dpkg --set-selections


И сега съм :
saslauthd -v
saslauthd 2.1.23
authentication mechanisms: sasldb getpwent kerberos5 pam rimap shadow ldap

вторник, март 26, 2013

Install JAVA JRE/JDK on Debian

Тези debian и тези java толкова пък заради едни лицензи драми да отварят... всеки пък загуба на време да подкарам Java-та вместо да се оправям с нещата които всъщност я искат тази Java.
Та ...
Правилният начин:

apt-get purge openjdk-\* --  никога не пречи пък openjdk-то никога не ми е вършело работа

wget -O http://download.oracle.com/otn-pub/java/jdk/7u17-b02/jdk-7u17-linux-x64.rpm
alien jdk-7u17-linux-x64.rpm
dpkg -i  jdk-7u17-linux-x64.deb

или (Oracle suggest)

wget -O http://download.oracle.com/otn-pub/java/jdk/7u17-b02/jdk-7u17-linux-x64.tar.gz
tar xfvz  jdk-7u17-linux-x64.tar.gz
 cp -r jdk1.7.0_17 /usr/local/java
cd  /usr/local/java
nano /etc/profile  -->
JAVA_HOME=/usr/local/java/jdk1.7.0_17
PATH=$PATH:$HOME/bin:$JAVA_HOME/bin
JRE_HOME=/usr/local/java/jre1.7.0_17
PATH=$PATH:$HOME/bin:$JRE_HOME/bin
export JAVA_HOME
export JRE_HOME
export PATH


Къде  Debian-a търси JRE/JDK
update-alternatives --install "/usr/bin/java" "java" "/usr/local/java/jre1.7.0_17/bin/java" 1
update-alternatives --install "/usr/bin/javac" "javac" "/usr/local/java/jdk1.7.0_17/bin/javac" 1
update-alternatives --install "/usr/bin/javaws" "javaws" "/usr/local/java/jre1.7.0_17/bin/javaws" 1
последното е за Java WebStart

Oracle Java JDK/JRE e default Java
update-alternatives --set java /usr/local/java/jre1.7.0_17/bin/java
update-alternatives --set javac /usr/local/java/jdk1.7.0_17/bin/javac
update-alternatives --set javaws /usr/local/java/jre1.7.0_17/bin/javaws

. /etc/profile

Test:
 $JAVA_HOME/bin/java -version
java version "1.7.0_17"
Java(TM) SE Runtime Environment (build 1.7.0_17-b02)
Java HotSpot(TM) 64-Bit Server VM (build 23.7-b01, mixed mode)
eol@alfresco:~$ $JAVA_HOME/bin/javac -version
javac 1.7.0_17

Debian/Ubuntu way (autoupdate via apt-get update)

Add PPA (Personal Package Archver)
echo "deb http://ppa.launchpad.net/webupd8team/java/ubuntu precise main" | tee -a /etc/apt/sources.list
echo "deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu precise main" | tee -a /etc/apt/sources.list
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys EEA14886
(на РРА сайта си го има)
apt-get update
apt-get install oracle-java7-installer
apt-get install oracle-java7-set-default  --
би трябвало да ми сет-не променливите от environment-a ама за всеки случай да се набият ръчно в /etc/profile (че не го виждам това тулче къде и какво пише)

Test:
  lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description:    Debian GNU/Linux 7.0 (wheezy)
Release:        7.0
Codename:       wheezy



 $JAVA_HOME/bin/java -version
java version "1.7.0_17"
Java(TM) SE Runtime Environment (build 1.7.0_17-b02)
Java HotSpot(TM) 64-Bit Server VM (build 23.7-b01, mixed mode)
eol@alfresco:~$ $JAVA_HOME/bin/javac -version
javac 1.7.0_17

eol@alfresco:~$ $JAVA_HOME/bin/javap -version
1.7.0_17

четвъртък, март 07, 2013

vSphere VM Open Console

vCenter/vSphere 5.1 -> New Machine -> ala-bala -> start ; Open Console  и ...
Unable to connect to the MKS. Failed to connect to Server
MKS?! Кой курац е тоа и защо не мога да се конектна към него? Особено на tcp порт 903!
MKS : Mouse, Keyboard and Screen
А защо не мога да се вържа към него ... то не бяха проверки на рутинги, то не бяха проверки на firewall-и (и на локалната машина, и рутерите по пътя и на самият ESX хост), то не бяха проверки на стартирани сървиси и какво ли още не!
А то ... DNS issue... и то по-скоро name resolution issue
Как работело това:
От локалното ми РС vSphere client-a се свързва към vCenter-a; през vCenter-a се "конектвам" към ESX host-a който в момента "държи" VM; Open Console on VM кара моята машина да инициира TCP сесия към IP_to_na_ESX който приема конекшъна и ако моята заявка към MKS е първата отговаря с нещо от рода на : Ok. Please coonect to ESX_HOSTNAME:903 и ... моята машина знае за IP_na_ESX_hosta, но хабер си няма кой е ESX_HOSTNAME (тъй като не е в една мрежа с ESX и не ползва DNS server-a на ESX) и резонно не може да се осъществи връзка
Solution:
1. echo "IP_to_na_ESX  ESX_HOSTNAME" c:\windows\system32\drivers\etc\hosts
2. echo "### not sure about next line but neam nerwi weche" c:\windows\system32\drivers\etc\hosts
3. echo "IP_to_na_vCenter  vCenter_OSTNAME" c:\windows\system32\drivers\etc\hosts

събота, февруари 23, 2013

FTP access-2

Като алтернативно решение на това
Изискванията са същите :
1.Admin has full access in the relevant section(s) - means read/write/rename/move/delete/overwrite
2.Guest access means read only
3.User access means read/write only (write means NOT overwrite)


И без това предният път с pure-ftpd явно нещо грешно съм описал та не можех да го възпроизведа отново затова новият solution е на базата на proftpd (10х бат Ицо)
Ограниченията ca user <-> command
Основният списък с командите : RawFTP 
Пълен такъв: RFC 959  - баси протокол на 28 години (от 1985-та) и user-ите още си го искат/търсят

  1. mkdir /home/ftp
  2. chmod -R 777 /home/ftp
  3. useradd ftp_admin ;  passwd ftp_admin ; useradd upload ; passwd upload ; useradd guest ; passwd guest
  4. apt-get install proftpd-basic
  5. cat /etc/proftpd/proftpd.conf
    ModulePath /usr/lib/proftpd
    LoadModule mod_ctrls_admin.c
    #LoadModule mod_tls.c
    LoadModule mod_radius.c
    LoadModule mod_quotatab.c
    LoadModule mod_quotatab_file.c
    LoadModule mod_quotatab_radius.c
    LoadModule mod_wrap.c
    LoadModule mod_rewrite.c
    LoadModule mod_load.c
    LoadModule mod_ban.c
    LoadModule mod_wrap2.c
    LoadModule mod_wrap2_file.c
    LoadModule mod_dynmasq.c
    LoadModule mod_exec.c
    LoadModule mod_shaper.c
    LoadModule mod_ratio.c
    LoadModule mod_site_misc.c
    LoadModule mod_facl.c
    LoadModule mod_unique_id.c
    ServerType standalone
    DefaultServer on
    Umask 022
    ServerName "0.0.0.0"
    ServerIdent on "DMT FTP Server"
    ServerAdmin sysadmin@playbox.tv
    IdentLookups off
    UseReverseDNS off
    Port 21
    PassivePorts 49152 65534
    #MasqueradeAddress None
    TimesGMT off
    MaxInstances 30
    MaxLoginAttempts 3
    TimeoutLogin 300
    TimeoutNoTransfer 120
    TimeoutIdle 120
    DisplayLogin welcome.msg
    DisplayChdir .message
    User nobody
    Group nogroup
    DirFakeUser off nobody
    DirFakeGroup off nogroup

    DefaultTransferMode binary
    AllowForeignAddress off
    AllowRetrieveRestart on
    AllowStoreRestart on
    DeleteAbortedStores off
    #TransferRate RETR 220
    #TransferRate STOR 250
    #TransferRate STOU 250
    #TransferRate APPE 250

    SystemLog /var/log/proftpd/system.log
    # Log file/dir access
    ExtendedLog /var/log/proftpd/access_log WRITE,READ
    # Record all logins
    ExtendedLog /var/log/proftpd/auth_log AUTH
    # Paranoia logging level....
    ExtendedLog /var/log/proftpd/paranoid_log ALL

    RequireValidShell off

    Ratios off
    SaveRatios off
    RatioFile "/restricted/proftpd_ratios"
    RatioTempFile "/restricted/proftpd_ratios_temp"
    CwdRatioMsg "Please upload first!"
    FileRatioErrMsg "FileRatio limit exceeded, upload something first..."
    ByteRatioErrMsg "ByteRatio limit exceeded, upload something first..."
    LeechRatioMsg "Your ratio is unlimited."


      AllowUser guest
      AllowUser uploader
      AllowUser ftp_admin
      DenyALL



    User guest
    Group guest
    AnonRequirePassword on
    MaxClients 20 "The server is full, hosting %m users"
    DisplayLogin welcome.msg
    DisplayChdir .msg

    Allow from All
    Deny from all

    AllowOverwrite off

     AllowAll


     DenyAll



    User uploader
    Group uploader
    AnonRequirePassword on
    MaxClients 20 "The server is full, hosting %m users"
    DisplayLogin welcome.msg
    DisplayChdir .msg

    Allow from All
    Deny from all

    AllowOverwrite off

     AllowAll


     DenyAll



    User ftp_admin
    Group ftp_admin
    AnonRequirePassword on
    MaxClients 10 "The server is full, hosting %m users"
    DisplayLogin welcome.msg
    DisplayChdir .msg

    Allow from All
    Deny from all

    AllowOverwrite on

     AllowAll


     DenyAll

 

неделя, януари 20, 2013

WinSCP ver.2

Update на стар пост: Ta... mantis backup
Като цяло задачата е от Windows-ки хост да се синкват/ъплоадват файлове към Linux ски такъв през SSH (и без това за management си го има SSH service... та да не се инсталират допълнителни)
Иначе обмислях и други варианти като WebDav, curlfs, sshfs, Samba, NFS ама всичките си искат допълните софтуери.
Та варианта който се ползва е на базата на SCP.
В моят случай най-голeмият минус е това, че SSH_User и SSH_User_Password са в clear text.
1. pscp.exe от пакета PuTTY
E:\_Backups\pscp.exe -scp -batch -l SSH_User -pw SSH_User_Password  File_To_Upload.txt example.com:/home/data/

2. WinSCP.exe от пакета WinSCP (single command line)
E:\_Backups\winscp.exe /console /command "option batch continue" "option confirm off" "open SSH_User:SSH_User_Password@example.com" "lcd E:\_Backups\tmp\" "synchronize remote -criteria=time" "exit"
Същественият плюс тук е възможността да се синкват файлове по критерий time

3. WinSCP.exe от пакета WinSCP (via script)
Същественият плюс тука е наличието на подробен лог-файл за извършваните действия (за debug/audit е супер)

bat-file : winscp.bat

E:\_Backups\tmp\winscp.exe /console /hostkey /script=E:\_Backups\tmp\1synchronize.txt /log=E:\_Backups\LOGs\"%date%"session.txt
/hostkey - да се съгласява с какъвто и fingerprint да му се представи сървъра отсреща

файла с командите които да се изпълнят:1synchronize.txt 

# Automatically answer all prompts negatively not to stall
# the script on errors
echo on

# on|off|abort|continue
# Toggles batch mode (all prompts are automatically replied negatively). 
# When on, it is recommended to set confirm to off to allow overwrites. 
# With abort script is aborted when any error occurs. 
# With continue all errors are ignored. 
 option batch continue

# Disable overwrite confirmations that conflict with the previous
#option confirm off
option confirm on

# Connect using a password
# open user:password@example.com
# Connect
open SSH_User:SSH_User_Password@example.com -hostkey="ssh-rsa 2048 e0:e5:aa:f8:35:f3:c4:00:16:57:a2:ac:04:66:0f:fc"

# Change remote directory
cd /home/data/

# Change local directory
lcd E:\_Backups\tmp\files

# Force binary mode transfer
option transfer binary

### When the first parameter is local, changes from remote directory are applied to local directory. 
### When the first parameter is remote, changes from the local directory are applied to the remote directory. 
### When the first parameter is both, both local and remote directories can be modified.
### http://winscp.net/eng/docs/scriptcommand_synchronize

# Synch local directory with remote one 
 synchronize remote -criteria=time

# Disconnect
close
# Exit WinSCP
exit


ToDo: passwordless (key-files) SSH authentication and authorization